//Menu do Administrador
var time = 3000;
var numofitems = 6;

//constructor
function menu(allitems,thisitem,startstate){ 
  callname= "g"+thisitem;
  divname="subglobal"+thisitem;  
  this.numberofmenuitems = allitems;
  this.caller = document.getElementById(callname);
  this.thediv = document.getElementById(divname);
  this.thediv.style.visibility = startstate;
}

//methods
function ehandler(event,theobj){
  for (var i=1; i<= theobj.numberofmenuitems; i++){
    var shutdiv =eval( "menuitem"+i+".thediv");
    shutdiv.style.visibility="hidden";
  }
  theobj.thediv.style.visibility="visible";
}

//subnav				
function closesubnav(event){
  if ((event.clientY <48)||(event.clientY > 107)){
    for (var i=1; i<= numofitems; i++){
      var shutdiv =eval('menuitem'+i+'.thediv');
      shutdiv.style.visibility='hidden';
    }
  }
}



// Abrir uma nova janela conforme o tamanho da imagem
function openWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
function openWindow2(url, propriedades) {
	window.open(url,'_blank',"toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no," + propriedades);
}



// Ir para url
function goUrl(url) {
	parent.location = url;
}



// Confirmar a exclusão
function Excluir(link) {
	if(confirm('Deseja apagar?')) {
		window.location=link;
	} else {
		;
	}
	}



// Valida formulário comentario cadastra
function validaComentarioCadastra(){
	//validar nome
	d = document.form1;
	if (d.comentario.value == ""){
		alert("O campo Comentário deve ser preenchido!");
		d.comentario.focus();
		return false;
	}
	//validar nome
	if (d.nome.value == ""){
		alert("O campo Nome deve ser preenchido!");
		d.nome.focus();
		return false;
	}
	//validar email
	if (d.email.value == ""){
		alert("O campo E-mail deve ser preenchido!");
		d.email.focus();
		return false;
	}
	//validar email(verificao de endereco eletronico)
	parte1 = d.email.value.indexOf("@");
	parte2 = d.email.value.indexOf(".");
	parte3 = d.email.value.length;
	if (!(parte1 >= 3 && parte2 >= 6 && parte3 >= 9)) {
		alert("O campo E-mail está incorreto!");
		d.email.focus();
		return false;
	}
	return true;
}



// Valida formulário cliente cadastra
// Valida CPF
// <form action="validaCPF.htm" name="validacao" onSubmit="return validaCPF()">
// <input type="text" name="cpfID" id="cpfID" maxlength="11" value="">
// <input name="Submit" type="submit" value="enviar">
// </form>
// Digite o numero do CPF sem utilizar os caracteres "." ou "-".
function validaCPF() {
	d = document.form1;
	cpf = document.form1.cpfID.value;
	valor = true;
	erro = new String;
	if (cpf.length < 11) erro += "São necessários 11 digitos para verificação do CPF! \n\n"; 
	var nonNumbers = /\D/;
	if (nonNumbers.test(cpf)) erro += "A verificacao de CPF suporta apenas numeros! \n\n";	
	if (cpf == "01234567890" || cpf == "00000000000" || cpf == "11111111111" || cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" || cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" || cpf == "88888888888" || cpf == "99999999999"){
		  erro += "Número de CPF invalido!"
	}
	var a = [];
	var b = new Number;
	var c = 11;
	for (i=0; i<11; i++){
		a[i] = cpf.charAt(i);
		if (i < 9) b += (a[i] *  --c);
	}
	if ((x = b % 11) < 2) { a[9] = 0 } else { a[9] = 11-x }
	b = 0;
	c = 11;
	for (y=0; y<10; y++) b += (a[y] *  c--); 
	if ((x = b % 11) < 2) { a[10] = 0; } else { a[10] = 11-x; }
	if ((cpf.charAt(9) != a[9]) || (cpf.charAt(10) != a[10])){
		erro +="Digito verificador com problema!";
	}
	if (erro.length > 0){
		alert(erro);
		d.cpf.focus();
		return false;
	}

	//validar nome
	if (d.nome.value == ""){
		alert("O campo Nome deve ser preenchido!");
		d.nome.focus();
		return false;
	}
	//validar endereco
	if (d.endereco.value == ""){
		alert("O campo Endereço deve ser preenchido!");
		d.endereco.focus();
		return false;
	}
	//validar bairro
	if (d.bairro.value == ""){
		alert("O campo Bairro deve ser preenchido!");
		d.bairro.focus();
		return false;
	}
	//validar cep
	if (d.cep.value == ""){
		alert("O campo CEP deve ser preenchido!");
		d.cep.focus();
		return false;
	}
	//validar uf
	if (d.uf.value == ""){
		alert("O campo Estado deve ser preenchido!");
		d.uf.focus();
		return false;
	}
	//validar telefone
	if (d.telefone.value == ""){
		alert("O campo Telefone deve ser preenchido!");
		d.telefone.focus();
		return false;
	}
	//validar email
	if (d.email.value == ""){
		alert("O campo E-mail deve ser preenchido!");
		d.email.focus();
		return false;
	}
	//validar email(verificao de endereco eletronico)
	parte1 = d.email.value.indexOf("@");
	parte2 = d.email.value.indexOf(".");
	parte3 = d.email.value.length;
	if (!(parte1 >= 3 && parte2 >= 6 && parte3 >= 9)) {
		alert("O campo E-mail está incorreto!");
		d.email.focus();
		return false;
	}
	return true;
} 



// Valida formulário contato
function validaContato(){
	//validar nome
	d = document.form1;
	//validar nome
	if (d.nome.value == ""){
		alert("O campo Nome deve ser preenchido!");
		d.nome.focus();
		return false;
	}
	//validar email
	if (d.email.value == ""){
		alert("O campo E-mail deve ser preenchido!");
		d.email.focus();
		return false;
	}
	//validar email(verificao de endereco eletronico)
	parte1 = d.email.value.indexOf("@");
	parte2 = d.email.value.indexOf(".");
	parte3 = d.email.value.length;
	if (!(parte1 >= 3 && parte2 >= 6 && parte3 >= 9)) {
		alert("O campo E-mail está incorreto!");
		d.email.focus();
		return false;
	}
	//validar telefone
	if (d.telefone.value == ""){
		alert("O campo Telefone deve ser preenchido!");
		d.telefone.focus();
		return false;
	}
	//validar uf
	if (d.uf.value == ""){
		alert("O campo Estado deve ser preenchido!");
		d.uf.focus();
		return false;
	}
	//validar id_cidade
	if (d.id_cidade.value == ""){
		alert("O campo Cidade deve ser preenchido!");
		d.id_cidade.focus();
		return false;
	}
	//validar assunto
	if (d.assunto.value == ""){
		alert("O campo Assunto deve ser preenchido!");
		d.assunto.focus();
		return false;
	}
	//validar informacao
	if (d.informacao.value == ""){
		alert("O campo Informações deve ser preenchido!");
		d.informacao.focus();
		return false;
	}
	return true;
}



// -------------------------------------------------------------------------------------------------------------
// Verifica os campos em branco no formulário
// <input type="button" value="Enviar" name="verifica" onclick="checkCampos(this.form);">
function checkCampos(frm){

	var nomedocampo = Array("comentario","nome","email");
	var descricao   = Array("Comentário","Nome","E-mail");

	var msgAlert = "Por favor complete os seguintes Campos:\n\n";
	var msg = msgAlert.length;
	
	for (var i = 0; i < nomedocampo.length; i++){
		var objetos = frm.elements[nomedocampo[i]];
		if (objetos){
			switch(objetos.type){
			case "select-one":
				if (objetos.selectedIndex == -1 || 
					objetos.options[objetos.selectedIndex].text == ""){
					msgAlert += " - " + descricao[i] + "\n";
				}
				break;
			case "select-multiple":
				if (objetos.selectedIndex == -1){
					msgAlert += " - " + descricao[i] + "\n";
				}
				break;
			case "text":
			case "textarea":
				if (objetos.value == "" || objetos.value == null){
					msgAlert += " - " + descricao[i] + "\n";
				}
				break;
			default:
			}
			if (objetos.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < objetos.length; j++){
					if (objetos[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					msgAlert += " - " + descricao[i] + "\n";
				}
			}
		}
	}

	if (msgAlert.length == msg){
		return true;
	}else{
		alert(msgAlert);
		return false;
	}
} 



// Valida campo númerico 
// <input type="text" class="input" name="numero" onkeyup="numerico(campos.numero);" maxlength="10" size="12">
function numerico(field) {

  expr = field.value;
  
  if (isNaN(expr)) {
	 alert('Campo '+ field.name +'aceita somente Números.');
	 field.value = '';
     field.focus();
	 return false;
  } else {
	 return true;
  }
}



// colocar no evento onKeyUp passando o objeto como parametro
// <input type="text" class="input" name="data" onKeyUp="formata(this);" maxlength="10" size="12">
function formata(val)
{
   	var pass = val.value;
	var expr = /[0123456789]/;
		
	for(i=0; i<pass.length; i++){
		// charAt -> retorna o caractere posicionado no índice especificado
		var lchar = val.value.charAt(i);
		var nchar = val.value.charAt(i+1);
	
		if(i==0){
		   // search -> retorna um valor inteiro, indicando a posição do inicio da primeira
		   // ocorrência de expReg dentro de instStr. Se nenhuma ocorrencia for encontrada o método retornara -1
		   // instStr.search(expReg);
		   if ((lchar.search(expr) != 0) || (lchar>3)){
			  val.value = "";
		   }
		   
		}else if(i==1){
			   
			   if(lchar.search(expr) != 0){
				  // substring(indice1,indice2)
				  // indice1, indice2 -> será usado para delimitar a string
				  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;
}
