function abreDiv(div) {
	var div_mesmo= document.getElementById(div);
	div_mesmo.style.display="block";
}

function fechaDiv(div) {
	var div_mesmo= document.getElementById(div);
	div_mesmo.style.display="none";
}

function emoticon(text) {
	var txtarea= document.getElementById("mensagem");;
	text= ' ' + text + ' ';
	
	if (txtarea.createTextRange && txtarea.caretPos) {
		var caretPos = txtarea.caretPos;
		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
		txtarea.focus();
	}
	else {
		txtarea.value += text;
		txtarea.focus();
	}
}

function alteraFonte(operacao, id_div) {
	var div= document.getElementById(id_div);
	
	var tamanho= div.title;
	//var tamanho2= div.style;
	
	//alert("a:"+tamanho);
	
	//tamanho= tamanho.replace("font-size:", "");
	//tamanho= tamanho.replace("%", "");
	
	
	tamanho= parseInt(tamanho);
	
	if (operacao==0) tamanho-= 10;
	else tamanho+= 10;
	
	if ((tamanho>50) && (tamanho<200)) {
		tamanho=tamanho+"";
		//div.setAttribute("style", "font-size:"+tamanho+"%;");
		div.className="fonte"+tamanho+"p";
		div.title=tamanho;
	}
	//alert(tamanho);
	
}

function carregaFlash(arquivo, width, height, name) {
	document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'+width+'" height="'+height+'" id="flash'+name+'" name="'+name+'" align="middle">');
	document.write('<param name="allowScriptAccess" value="sameDomain" /><PARAM NAME=wmode VALUE=transparent /><param name="scale" value="noscale" />');
	document.write('<param name="movie" value="'+arquivo+'" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /><embed src="'+arquivo+'" quality="high" wmode="transparent" bgcolor="#ffffff" width="'+width+'" height="'+height+'" name="'+name+'" id="flash'+name+'" align="middle" scale="noscale"  allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
	document.write('</object>');
}

function atribuiValor(id_elemento, valor) {
	var elemento= document.getElementById(id_elemento);
	elemento.value= valor;
}

function atribuiClasse(id_elemento, classe) {
	var elemento= document.getElementById(id_elemento);
	elemento.className= classe;
}

function atribuiAbaAtual(id_elemento, local) {
	var menu= document.getElementById(local);
	var itens= menu.getElementsByTagName("li");
	
	for (i=0; i<itens.length; i++) {
		if (itens[i].id==id_elemento) itens[i].className= "atual";
		else itens[i].className= "";
	}
}

function alteraCidade() {
	var id_uf = document.getElementById("id_uf");
	ajaxLink("id_cidade_atualiza", "alteraCidade/"+id_uf.value);
}

function mudaCampeonato() {
	var id_campeonato= document.getElementById("id_campeonato");
	
	window.top.location.href="/campeonato-rodadas/"+id_campeonato.value;
	//ajaxLink("campeonato_atualiza", "pegaRodadas/"+id_campeonato.value);
}

function setaClasse(campo, classe) {
	if(classe != undefined) {
		if (campo.lastClass == undefined){
			campo.lastClass = null;
		}
		campo.lastClass = campo.className || "";
		campo.className = classe;
	}
	else
		campo.className = campo.lastClass;
}

function alertaCampo(campo) {
	campo.className= "campo_erro";
}


/***
* Descrição.: formata um campo do formulário de
* acordo com a máscara informada...
* Parâmetros: - objForm (o Objeto Form)
* - strField (string contendo o nome
* do textbox)
* - sMask (mascara que define o
* formato que o dado será apresentado,
* usando o algarismo "9" para
* definir números e o símbolo "!" para
* qualquer caracter...
* - evtKeyPress (evento)
* Uso.......: <input type="textbox"
* name="xxx".....
* onkeypress="return txtBoxFormat(document.rcfDownload, 'str_cep', '99999-999', event);">
* Observação: As máscaras podem ser representadas como os exemplos abaixo:
* CEP -> 99.999-999
* CPF -> 999.999.999-99
* CNPJ -> 99.999.999/9999-99
* Data -> 99/99/9999
* Tel Resid -> (99) 999-9999
* Tel Cel -> (99) 9999-9999
* Processo -> 99.999999999/999-99
* C/C -> 999999-!
* E por aí vai...
***/

function formataCampo(objForm, strField, sMask, evtKeyPress) {
  var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

  if(document.all) { // Internet Explorer
    nTecla = evtKeyPress.keyCode;
	} else if(document.layers) { // Nestcape
		nTecla = evtKeyPress.which;
	} else {
		nTecla = evtKeyPress.which;
		//alert(nTecla);
		if ((nTecla==8) || (nTecla==0))
			return true;
	}

  sValue = objForm[strField].value;

  // Limpa todos os caracteres de formatação que
  // já estiverem no campo.
  sValue = sValue.toString().replace( "-", "" );
  sValue = sValue.toString().replace( "-", "" );
  sValue = sValue.toString().replace( ".", "" );
  sValue = sValue.toString().replace( ".", "" );
  sValue = sValue.toString().replace( "/", "" );
  sValue = sValue.toString().replace( "/", "" );
  sValue = sValue.toString().replace( "(", "" );
  sValue = sValue.toString().replace( "(", "" );
  sValue = sValue.toString().replace( ")", "" );
  sValue = sValue.toString().replace( ")", "" );
  sValue = sValue.toString().replace( " ", "" );
  sValue = sValue.toString().replace( " ", "" );
  fldLen = sValue.length;
  mskLen = sMask.length;

  i = 0;
  nCount = 0;
  sCod = "";
  mskLen = fldLen;

  while (i <= mskLen) {
	bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/"))
	bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

	if (bolMask) {
	  sCod += sMask.charAt(i);
	  mskLen++; }
	else {
	  sCod += sValue.charAt(nCount);
	  nCount++;
	}

	i++;
  }

  objForm[strField].value = sCod;

  if (nTecla != 8) { // backspace
	if (sMask.charAt(i-1) == "9") { // apenas números...
	  return ((nTecla > 47) && (nTecla < 58)); } // números de 0 a 9
	else { // qualquer caracter...
	  return true;
	} }
  else {
	return true;
  }
}

function validaCpf(cpf) {
	 cpf= cpf.replace(".", "");
	 cpf= cpf.replace("-", "");
	 
	 var strcpf = cpf;
	 var str_aux = "";
	 var erros= "";
	 
	 for (i = 0; i <= strcpf.length - 1; i++)
	   if ((strcpf.charAt(i)).match(/\d/))
		 str_aux += strcpf.charAt(i);
	   else if (!(strcpf.charAt(i)).match(/[\.\-]/)) {
		 erros += "Apenas números no campo CPF!\n";
		 break;
		 //return false;
	   }

	 if (str_aux.length < 11) {
	   erros += "O campo CPF deve conter 11 dígitos!\n";
	   //return false;
	 }
	 else {
		 soma1 = soma2 = 0;
		 for (i = 0; i <= 8; i++) {
		   soma1 += str_aux.charAt(i) * (10-i);
		   soma2 += str_aux.charAt(i) * (11-i);
		 }
		 d1 = ((soma1 * 10) % 11) % 10;
		 d2 = (((soma2 + (d1 * 2)) * 10) % 11) % 10;
		 if ((d1 != str_aux.charAt(9)) || (d2 != str_aux.charAt(10))) {
		   erros += "O CPF digitado é inválido!\n";
		   //return false;
		 }
		  if ((cpf=="00000000000") || (cpf=="11111111111") || (cpf=="22222222222") || (cpf=="33333333333") || 
		  (cpf=="44444444444") || (cpf=="55555555555") || (cpf=="66666666666") || (cpf=="77777777777") || 
		  (cpf=="88888888888") || (cpf=="99999999999") ) {
		   erros += "O CPF digitado é inválido!!\n";
		   //return false;
		 }
	 }
	 return (erros);
}

function validaEmail(email) {
	var retorno= true;
	
	if (email=="")
		retorno= false;
	if (email.indexOf("@") < 2)
		retorno= false;
	if (email.indexOf(".") < 1)
		retorno= false;
	
	return(retorno);
}

function daFoco(id_elemento) {
	var elemento = document.getElementById(id_elemento);
	elemento.focus();
}

function validaData(data_nasc, periodo) {
	var erros = "";
	if (data_nasc=="")
		erros = "Entre com a data!\n";
	else {
		var dia= data_nasc.substring(0, 2);
		var mes= data_nasc.substring(3, 5);
		var ano= data_nasc.substring(6, 10);
		
		var barra1= data_nasc.substring(2, 3);
		var barra2= data_nasc.substring(5, 6);
		
		if ((barra1=="/") && (barra2=="/")) {
			var nonNumbers = /\D/;
						
			if ( (dia<=0) || (dia>31)  || (nonNumbers.test(dia)) )
				if (erros=="") erros = "Dia inválido\n";
			else {
				if ( ((mes=="02") || (mes=="04") || (mes=="06") || (mes=="09") || (mes=="11")) && (dia=="31") )
					if (erros=="") erros = "O mes informado não possui o dia 31!\n";
			}
			if ( (mes<=0) || (mes>12)  || (nonNumbers.test(mes)) )
				if (erros=="") erros = "Mês invalido\n";
			
			if (periodo=="n") {
				var dataAtual= new Date();
				var anoAtual= dataAtual.getFullYear();
				
				if ( (ano<=0) || (ano>anoAtual) || (nonNumbers.test(ano)) )
					if (erros=="") erros = "Ano inválido!\n";
			}
			//ano bissexto
			if ((ano%4!=0) && (mes==2) && (dia>28))
				if (erros=="") erros = "Dia inválido! \n";
		}
		else
			if (erros=="") erros = "Preencha a data no formato dd/mm/AAAA\n";
	}
	return(erros);
}

function validaForm(id_form) {
	
	var area_erro= "div_erro";
	var erro_alerta= "";
	var avisar=true;
	var botao= document.getElementById("enviar");
	
	switch (id_form) {
		case 'formEnquete':
			botao= document.getElementById("enviar_enquete");
			var captcha= document.getElementById("captcha");
			
			if (captcha.value=="") {
				if (foco==null) foco= captcha;
				if (erro_alerta=="") erro_alerta= "Selecione uma opção e digite o código!";
				setaClasse(captcha, "campo_erro tamanho80");
				erro= 1;
			}
			break;
		case 'formContato':
			var nome= document.getElementById("nome");
			var email= document.getElementById("email");
			var telefone= document.getElementById("telefone");
			var mensagem= document.getElementById("mensagem");
			var captcha= document.getElementById("captcha");
			
			var erro= null;
			var foco= null;
			
			if (nome.value=="") {
				if (foco==null) foco= nome;
				if (erro_alerta=="") erro_alerta= "Campo nome não pode ser vazio!";
				setaClasse(nome, "campo_erro");
				erro= 1;
			}
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro");
				erro= 1;
			}
			if (telefone.value=="") {
				if (foco==null) foco= telefone;
				if (erro_alerta=="") erro_alerta= "Campo telefone não pode ser vazio!";
				setaClasse(telefone, "campo_erro");
				erro= 1;
			}
			//soh validar a msg qdo for contato
			if (id_form=="formContato") {
				if (mensagem.value=="") {
					if (foco==null) foco= mensagem;
					if (erro_alerta=="") erro_alerta= "Campo mensagem não pode ser vazio!";
					setaClasse(mensagem, "campo_erro");
					erro= 1;
				}
			}
			if (captcha.value=="") {
				if (foco==null) foco= captcha;
				if (erro_alerta=="") erro_alerta= "Campo de confirmação não pode ser vazio!";
				setaClasse(captcha, "campo_erro tamanho80");
				erro= 1;
			}
			break;
		case 'formEnviar':
			var nome= document.formEnviar.nome;
			var email= document.formEnviar.email;
			var email2= document.formEnviar.email2;
			
			var erro= null;
			var foco= null;
			
			if (nome.value=="") {
				if (foco==null) foco= nome;
				if (erro_alerta=="") erro_alerta= "Campo nome não pode ser vazio!";
				setaClasse(nome, "campo_erro");
				erro= 1;
			}
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro");
				erro= 1;
			}
			if (!validaEmail(email2.value))  {
				if (foco==null) foco= email2;
				if (erro_alerta=="") erro_alerta= "E-mail de destino inválido!";
				setaClasse(email2, "campo_erro");
				erro= 1;
			}
	
			break;
		case 'formLogin':
			avisar= true;
			var email= document.getElementById("login_email");
			var senha= document.getElementById("login_senha");
			
			var erro= null;
			var foco= null;
			
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "tamanho150 campo_erro");
				erro= 1;
			}
			if ((senha.value=="") || (senha.value=="senha")) {
				if (foco==null) foco= senha;
				if (erro_alerta=="") erro_alerta= "Digite a senha!";
				setaClasse(senha, "tamanho150 campo_erro");
				erro= 1;
			}
			break;
		
		case 'formEsqueci':
			var email= document.getElementById("esqueci_email");
			var erro= null;
			var foco= null;
			
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro espaco_dir");
				erro= 1;
			}
	
			break;
			
		case 'formCadastro':
		case 'formEdicao':
			var nome= document.getElementById("nome");
			var sobrenome= document.getElementById("sobrenome");
			var cpf= document.getElementById("cpf");
			var data_nasc= document.getElementById("data_nasc");
			var email= document.getElementById("email");
			var senha= document.getElementById("senha");
			var senha2= document.getElementById("senha2");
			var cidade= document.getElementById("cidade");
			var captcha= document.getElementById("captcha");
			
			var erro= null;
			var foco= null;
			
			if (nome.value=="") {
				if (foco==null) foco= nome;
				if (erro_alerta=="") erro_alerta= "Campo nome não pode ser vazio!";
				setaClasse(nome, "campo_erro");
				erro= 1;
			}
			if (sobrenome.value=="") {
				if (foco==null) foco= sobrenome;
				if (erro_alerta=="") erro_alerta= "Campo sobrenome não pode ser vazio!";
				setaClasse(sobrenome, "campo_erro");
				erro= 1;
			}
			
			var erro_cpf= validaCpf(cpf.value);
			if (erro_cpf.length>0) {
				if (foco==null) foco= cpf;
				if (erro_alerta=="") erro_alerta= erro_cpf;
				setaClasse(cpf, "campo_erro espaco_dir");
				erro= 1;
			}
			
			var erro_data_nasc= validaData(data_nasc.value, "n");
			if (erro_data_nasc.length>0) {
				if (foco==null) foco= data_nasc;
				if (erro_alerta=="") erro_alerta= erro_data_nasc;
				setaClasse(data_nasc, "campo_erro espaco_dir");
				erro= 1;
			}
			
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro");
				erro= 1;
			}
			
			if (cidade.value=="") {
				if (foco==null) foco= cidade;
				if (erro_alerta=="") erro_alerta= "Digite a cidade!";
				setaClasse(cidade, "campo_erro");
				erro= 1;
			}
			
			if (id_form=="formCadastro") {
				if (senha.value=="") {
					if (foco==null) foco= senha;
					if (erro_alerta=="") erro_alerta= "Campo senha não pode ser vazio!";
					setaClasse(senha, "campo_erro");
					erro= 1;
				}
			}
			if (senha.value!=senha2.value) {
				if (foco==null) foco= senha2;
				if (erro_alerta=="") erro_alerta= "Campo confirmação de senha está errado!";
				setaClasse(senha2, "campo_erro");
				erro= 1;
			}
			
			if (captcha.value=="") {
				if (foco==null) foco= captcha;
				if (erro_alerta=="") erro_alerta= "Campo confirmação das imagens não pode ser vazio!";
				setaClasse(captcha, "campo_erro tamanho80");
				erro= 1;
			}
			break;
		case 'formCadastroEditar':
			var nome= document.getElementById("nome");
			var email= document.getElementById("email");
			var data_nasc= document.getElementById("data_nasc");
			var id_cidade= document.getElementById("id_cidade");
			var senha_atual= document.getElementById("senha_atual");
			var senha= document.getElementById("senha");
			var senha2= document.getElementById("senha2");
			var erro= null;
			var foco= null;
			
			if (nome.value=="") {
				if (foco==null) foco= nome;
				if (erro_alerta=="") erro_alerta= "Campo nome não pode ser vazio!";
				setaClasse(nome, "campo_erro");
				erro= 1;
			}
			
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro");
				erro= 1;
			}
			if (data_nasc.value!="") {
				var erro_data_nasc= validaData(data_nasc.value, "n");
				if (erro_data_nasc.length>0) {
					if (foco==null) foco= data_nasc;
					if (erro_alerta=="") erro_alerta= erro_data_nasc;
					setaClasse(data_nasc, "campo_erro");
					erro= 1;
				}
			}
			if (id_cidade.value=="") {
				if (foco==null) foco= id_cidade;
				if (erro_alerta=="") erro_alerta= "Selecione a cidade!";
				setaClasse(id_cidade, "campo_erro");
				erro= 1;
			}
			if (senha_atual.value=="") {
				if (foco==null) foco= senha_atual;
				if (erro_alerta=="") erro_alerta= "Entre com a senha atual para editar os dados!";
				setaClasse(senha_atual, "campo_erro espaco_dir");
				erro= 1;
			}
			if (senha.value!="") {
				if (senha.value!=senha2.value) {
					if (foco==null) foco= senha2;
					if (erro_alerta=="") erro_alerta= "Campo confirmação de senha está errado!";
					setaClasse(senha2, "campo_erro espaco_dir");
					erro= 1;
				}
			}
			break;
		case 'formRecupera':
			var email= document.formRecupera.email;
			var senha= document.formRecupera.senha;
			var senha2= document.formRecupera.senha2;
			var erro= null;
			var foco= null;
			
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro");
				erro= 1;
			}
			if (senha.value=="") {
				if (foco==null) foco= senha;
				if (erro_alerta=="") erro_alerta= "Entre com a senha!";
				setaClasse(senha, "campo_erro");
				erro= 1;
			}
			if (senha.value!=senha2.value) {
				if (foco==null) foco= senha2;
				if (erro_alerta=="") erro_alerta= "Campo confirmação de senha está errado!";
				setaClasse(senha2, "campo_erro");
				erro= 1;
			}
			break;
	}
	
	if (erro) {
		if (avisar) {
			//var form_erro= document.getElementById(area_erro);
			//form_erro.innerHTML= erro_alerta;
			alert(erro_alerta);
			foco.focus();
		}
		
		return false;
	}
	else {
		botao.disabled= true;
		botao.innerHTML= "...";
		//alert("merda");
		return true;
	}
}

function Limpar(valor, validos) {
	var result = "";
	var aux;
	for (var i=0; i < valor.length; i++) {
		aux = validos.indexOf(valor.substring(i, i+1));
		if (aux>=0) {
			result += aux;
		}
	}
	return result;
}

function formataValor(campo,teclapres) {
	var tammax = 200;
	var decimal = 2;
	var tecla = teclapres.keyCode;
	vr = Limpar(campo.value,"0123456789");
	tam = vr.length;
	dec=decimal
	
	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }
	
	if (tecla == 8 )
	{ tam = tam - 1 ; }
	
	if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 )
	{
	
	if ( tam <= dec )
	{ campo.value = vr ; }
	
	if ( (tam > dec) && (tam <= 5) ){
	campo.value = vr.substr( 0, tam - 2 ) + "," + vr.substr( tam - dec, tam ) ; }
	if ( (tam >= 6) && (tam <= 8) ){
	campo.value = vr.substr( 0, tam - 5 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ;
	}
	if ( (tam >= 9) && (tam <= 11) ){
	campo.value = vr.substr( 0, tam - 8 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; }
	if ( (tam >= 12) && (tam <= 14) ){
	campo.value = vr.substr( 0, tam - 11 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; }
	if ( (tam >= 15) && (tam <= 17) ){
	campo.value = vr.substr( 0, tam - 14 ) + "." + vr.substr( tam - 14, 3 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - 2, tam ) ;}
	}
} 

function formataData(val) {
	// onkeyup="formataData(this);"
   	var pass = val.value;
	var expr = /[0123456789]/;
		
	for(i=0; i<pass.length; i++){
		var lchar = val.value.charAt(i);
		var nchar = val.value.charAt(i+1);
	
		if(i==0) {
		   if ((lchar.search(expr) != 0) || (lchar>3)){
			  val.value = "";
		   }
		   
		}
		else if(i==1){
			   if(lchar.search(expr) != 0){
				  var tst1 = val.value.substring(0,(i));
				  val.value = tst1;				
 				  continue;			
			   }
			   
			   if ((nchar != '/') && (nchar != '')){
				 	var tst1 = val.value.substring(0, (i)+1);
				
					if(nchar.search(expr) != 0) 
						var tst2 = val.value.substring(i+2, pass.length);
					else
						var tst2 = val.value.substring(i+1, pass.length);
	
					val.value = tst1 + '/' + tst2;
			   }

		 }else if(i==4){
			
				if(lchar.search(expr) != 0){
					var tst1 = val.value.substring(0, (i));
					val.value = tst1;
					continue;			
				}
		
				if	((nchar != '/') && (nchar != '')){
					var tst1 = val.value.substring(0, (i)+1);

					if(nchar.search(expr) != 0) 
						var tst2 = val.value.substring(i+2, pass.length);
					else
						var tst2 = val.value.substring(i+1, pass.length);
	
					val.value = tst1 + '/' + tst2;
				}
   		  }
		
		  if(i>=6){
			  if(lchar.search(expr) != 0) {
					var tst1 = val.value.substring(0, (i));
					val.value = tst1;			
			  }
		  }
	 }
	
     if (pass.length>10)
		val.value = val.value.substring(0, 10);
	 	return true;
}

function sorteio(sexo) {
	ajaxLink('sorteio', 'pegaSorteio/'+sexo);
}
