////////////////////////////////////////////////////////////////////////////////////
// Funções de confirmacao de exclusão de registro
//
// @param link (string) -> link para o script que vai executar a exclusão
// @param dados (string) -> indicador do alvo que vai ser excluído
//
////////////////////////////////////////////////////////////////////////////////////
function exclui(link, dados) {
	if (confirm('Deseja mesmo excluir este registro?')) {
		window.location = link+"&dados="+dados;
	}
}

////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////
// Função para fazer uma div aparecer e esconder a outra que está aberta
//
// @param divescondida (string) -> nome da div que vai aparecer
//
////////////////////////////////////////////////////////////////////////////////////
function showonehideothers(divescondida) {
	divativa = document.getElementById("divativa").value;
	if (divativa != "") {
		document.getElementById(divativa).style.display = "none";
	}
	document.getElementById(divescondida).style.display = "block";
	document.getElementById("divativa").value = divescondida;
}
////////////////////////////////////////////////////////////////////////////////////


//////////////////POPUP
function janela(mypage, myname, w, h) {
   var winl = (screen.width - w) / 2;
   var wint = (screen.height - h) / 2;
   winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=yes,noresizable,status=no, location=no, toolbar=no, menubar=no';
   win = window.open(mypage, myname, winprops)
}

////////////////////////////////////////////////////////////////////////////////////
// Função que determina a visibilidade de determinado objeto
//
// @param objeto (objeto) -> o objeto que deseja aplicar a visibilidade
//
////////////////////////////////////////////////////////////////////////////////////
function visibilidade(objeto) {

	var obj = document.getElementById(objeto);
	
	if (obj.style.display == 'block'){
		obj.style.display = 'none';
	}
	else {
		obj.style.display = 'block';
	}
}

////////////////////////////////////////////////////////////////////////////////////
// Função que determina a visibilidade de determinado objeto
//
// @param objeto (objeto) -> o objeto que deseja aplicar a visibilidade
//
////////////////////////////////////////////////////////////////////////////////////
function visibilidade2(objeto, esconde) {

	var obj = document.getElementById(objeto);
	
		obj.style.display = esconde;
}

////////////////////////////////////////////////////////////////////////////////////
// Seta a classe de estilo 'obrigatorio' para os campos de preenchimento obrigatório
//
// @param obrigatorio (array) -> array com o nome dos campos obrigatórios
// @param form (form) -> o formulário onde estão os campos
// @param classe (string) -> a classe que será aplicada
//
////////////////////////////////////////////////////////////////////////////////////
function ColoreObrigatorio(obrigatorio, form, classe) {

	for (var i = 0; i < obrigatorio.length; i++) {
		form.elements[obrigatorio[i]].className = classe;
	}

}

////////////////////////////////////////////////////////////////////////////////////
// Seta a classe de estilo 'obrigatorio' para os campos de preenchimento obrigatório
//
// @param obrigatorio (array) -> array com o nome dos campos obrigatórios
// @param form (form) -> o formulário onde estão os campos
//
// @return (bool) -> retorna false se algum campo estiver em branco
//
////////////////////////////////////////////////////////////////////////////////////
function checaObrigatorio(obrigatorio, form) {
	var erro = new Array();

	ColoreObrigatorio(obrigatorio, form, 'obrigatorio');

	for (var i = 0; i < obrigatorio.length; i++) {
		if (form.elements[obrigatorio[i]].value == "") {
			 erro.push(obrigatorio[i]);
		}
	}
	if (erro.length > 0) {
		ColoreObrigatorio(erro, form, 'erro');
		alert('Os campos em destaque precisam ser preenchidos');
		return false;
	}
	else {
		return true;
	}
}

//////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////
//  função q abre popup com o tamanho da foto
//  @largura -> largura da imagem a ser aberta
//  @altura -> altura da imagem a ser aberta
//  @foto -> caminho da foto desde a raiz
//
//////////////////////////////////////////////////////////////
function popup(largura, altura, foto) {
	var winl = (screen.width - largura) / 2;
    var wint = (screen.height - altura) / 2;
	winprops = 'height='+altura+',width='+largura+',top='+wint+',left='+winl+',scrollbars=no,noresizable,status=no, location=no, toolbar=no, menubar=no'
	window.open ("popup/popup.php?foto="+foto, "Popup", winprops );
}

function limita(form){
	if(form.query.value.length >= 3){
		form.submit();
	}else{
		alert("Busca deve conter no mínimo 3 caracteres.");
		return false;
	}
}

VerifiqueTAB=true;
function pula(quem, tammax) {
	if ( (quem.value.length == tammax) && (VerifiqueTAB) ) {
		var i=0,j=0, indice=-1;
		for (i=0; i<document.forms.length; i++) {
			for (j=0; j<document.forms[i].elements.length; j++) {
				if (document.forms[i].elements[j].name == quem.name) {
					indice=i;
					break;
				}
			}
			if (indice != -1)
		         break;
		}
		for (i=0; i<=document.forms[indice].elements.length; i++) {
			if (document.forms[indice].elements[i].name == quem.name) {
				while ( (document.forms[indice].elements[(i+1)].type == "hidden") &&
						(i < document.forms[indice].elements.length) ) {
							i++;
				}
				document.forms[indice].elements[(i+1)].focus();
				VerifiqueTAB=false;
				break;
			}
		}
	}
}


////////////////////////////////////////////////////////////////////
////////////////////////////Função para regular o tamanho do texto
////////////////////////////////////////////////////////////////////
function mudaCorpo(opcao){

	var obj = document.getElementById('fonte_mutavel');
	var obj2 = document.getElementById('titulo_mutavel');

	var tamanho_atual = parseInt(obj.style.fontSize);

	if (opcao) {
		if (tamanho_atual < 14) {
			var tamanho_novo = tamanho_atual + 2;
		}
		else{
			tamanho_novo = 14;
		}
	}
	else{
		if (tamanho_atual > 8) {
			var tamanho_novo = tamanho_atual - 2;
		}
		else{
			tamanho_novo = 8;
		}
	}
	obj.style.fontSize = tamanho_novo+'pt';
	obj2.style.fontSize = tamanho_novo+'pt';
}


////////////////////////////////////////////////////////////////////
///////////////////////Função para muda a cor do campo do formulario
////////////////////////////////////////////////////////////////////

// Muda a cor quando passa o mouse em cima
function mOvr(src,clrOver) {
  src.bgColor = clrOver;
}
function mOut(src,clrIn) {
  src.bgColor = clrIn;
}

// Muda a cor dos campos do formulario
function mFocus(obj,cor_fundo,cor_texto) {
	obj.style.backgroundColor = cor_fundo;
	obj.style.color = cor_texto;
}

function mBlur(obj,cor_fundo,cor_texto) {
	obj.style.backgroundColor = cor_fundo;
	obj.style.color = cor_texto;

}


function valida_dados (logform){
	if(logform.login.value.length<3 || logform.login.value.length>50){
		alert("E-mail inválido. Por favor digite um login entre 5 e 15 caracteres");
		return false;
	}
	if(logform.login.value.indexOf('teste',0) != -1){
		alert("E-mail inválido. Por favor digite um e-mail real");
		return false;
	}
	if(logform.login.value.indexOf(' ',0) != -1){
		alert("E-mail inválido. Por favor digite um e-mail real");
		return false;
	}

	if(logform.senha.value.length<3 || logform.senha.value.length>15){
		alert("Senha inválida. Por favor digite uma senha entre 5 e 15 caracteres");
		return false;
	}
	if(logform.senha.value.indexOf(' ',0) != -1){
		alert("A senha não pode conter espaços em branco");
		return false;
	}
	return true;
}

function GetQmail(whatID) { 
	window.open("qmail.php?uid=" + whatID,"dados_pessoais","scrollbars=yes,width=420,height=300,left=0,top=0");
}

function validar(Form) {
	var invalid, s;
	invalid = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/;

	var s;



	if (Form.pass.value.length == 0) {
		alert("A Senha é um campo obrigatório !");
		Form.pass.focus();
		return false;	}
		
	s = limpa_string(Form.cnpj.value);
	

	// verifica o cep
	// primeiro deixa somente numeros no cep
	// obs.:a chamada abaixo tambem pode ser utilizada para checar telefones
	
	s = limpa_string(Form.cep.value);
	if (s.length < 8) {
		alert("Digite corretamente o CEP: 99999-999 !");
		Form.cep.focus();
		return false; }


	// verifica se o email é válido
	if (Form.email.value.length == 0)	{
		alert("Digite corretamente seu E-mail por favor!");
		Form.email.focus();
		return false;	}

	if (invalid.test(document.cadastro.email.value) == false) {
		// caso o teste falhe, para mudar a cor do texto na caixa, mude na linha abaixo
		document.cadastro.email.style.color = "red";
		
		alert("Endereço de E-mail inválido !");
		Form.email.focus();
		return (false); }

     return true;
}
// fim da funcao validar()


function limpa_string(S){
	// Deixa so' os digitos no numero
	var Digitos = "0123456789";
	var temp = "";
	var digito = "";

	for (var i=0; i<S.length; i++)	{
		digito = S.charAt(i);
		if (Digitos.indexOf(digito)>=0)	{
			temp=temp+digito	}
	} //for

	return temp
}
// fim da funcao


function valida_CPF(s)	{
	var i;
	s = limpa_string(s);
	var c = s.substr(0,9);
	var dv = s.substr(9,2);
	var d1 = 0;
	for (i = 0; i < 9; i++)
	{
		d1 += c.charAt(i)*(10-i);
	}
        if (d1 == 0) return false;
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(0) != d1)
	{
		return false;
	}

	d1 *= 2;
	for (i = 0; i < 9; i++)
	{
		d1 += c.charAt(i)*(11-i);
	}
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(1) != d1)
	{
		return false;
	}
        return true;
}

function valida_CGC(s)
{
	var i;
	s = limpa_string(s);
	var c = s.substr(0,12);
	var dv = s.substr(12,2);
	var d1 = 0;
	for (i = 0; i < 12; i++)
	{
		d1 += c.charAt(11-i)*(2+(i % 8));
	}
        if (d1 == 0) return false;
        d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(0) != d1)
	{
		return false;
	}

	d1 *= 2;
	for (i = 0; i < 12; i++)
	{
		d1 += c.charAt(11-i)*(2+((i+1) % 8));
	}
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(1) != d1)
	{
		return false;
	}
	return true;
}

