var http;

function getHTTPObject() {
  http = null;
  if (window.XMLHttpRequest)
    xmlhttp = new XMLHttpRequest();
  else if (window.ActiveXObject)
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  return xmlhttp;
}

function verificaFormBusca(form){
  var erro = '';
	var focou = false;
  var objFocus = null;

  if(!form.noIdade.checked){
		if(form.idadeStart.value.length == 0 || isNaN(form.idadeStart.value)){
			erro += "  - Preencha a idade inicial\n";
			form.idadeStart.className = 'campo1';
			if(!focou){
				focou = true;
				objFocus = form.idadeStart;
			}
		} else
			form.idadeStart.className = 'campo2';

		if(form.idadeEnd.value.length == 0 || isNaN(form.idadeEnd.value)){
			erro += "  - Preencha a idade final\n";
			form.idadeEnd.className = 'campo1';
			if(!focou){
				focou = true;
				objFocus = form.idadeEnd;
			}
		} else if(Number(form.idadeEnd.value) < Number(form.idadeStart.value)){
			erro += "  - A idade final deve ser maior que a idade inicial\n";
			form.idadeEnd.className = 'campo1';
			if(!focou){
				focou = true;
				objFocus = form.idadeEnd;
			}
		} else
			form.idadeEnd.className = 'campo2';

	}

	if(erro!=''){
	  alert("Corrija o(s) seguinte(s) erro(s):\n" + erro);
    objFocus.focus();
	  return false;
	} else {
    form.enviar.disabled = true;
	  return true;
	}
}

function verificaFormCurriculo(form, verificaRG){
  var invalid = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/;
  var erro = '';
  var focou = false;
  var objFocus = null;

  if(verificaRG){
    if(form.rg.value.length == 0){
      erro += "  - Preencha o RG\n";
      form.rg.className = 'campo1';
      if(!focou){
        focou = true;
        objFocus = form.rg;
      }
    } else if(form.disponivel == 'undefined' || form.disponivel == null || form.disponivel.value == 0){
      erro += "  - Este número de RG já está em uso\n";
      form.rg.className = 'campo1';
      if(!focou){
        focou = true;
        objFocus = form.rg;
      }
    } else
      form.rg.className = 'campo2';
  }

  if(form.senha.value.length < 4){
    erro += "  - Digite a senha com no mímino 4 caracteres\n";
    form.senha.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.senha;
    }
  } else
    form.senha.className = 'campo2';

  if(form.csenha.value != form.senha.value){
    erro += "  - Senha não confere\n";
    form.csenha.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.csenha;
    }
  } else
    form.csenha.className = 'campo2';

  if(form.nome.value.length == 0){
    erro += "  - Preencha o nome\n";
    form.nome.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.nome;
    }
  } else
    form.nome.className = 'campo2';

  if (invalid.test(form.email.value) == false) {
    erro += "  - Endereço de E-mail inválido\n";
    form.email.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.email;
    }
  } else 
    form.email.className='campo2';

  if(form.endereco.value.length == 0){
    erro += "  - Preencha o endereço\n";
    form.endereco.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.endereco;
    }
  } else
    form.endereco.className = 'campo2';

  if(form.bairro.value.length == 0){
    erro += "  - Preencha o bairro\n";
    form.bairro.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.bairro;
    }
  } else
    form.bairro.className = 'campo2';

  if(form.cidade.value.length == 0){
    erro += "  - Preencha a cidade\n";
    form.cidade.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.cidade;
    }
  } else
    form.cidade.className = 'campo2';

  if(form.estado.value == 0){
    erro += "  - Escolha o Cargo\n";
    form.estado.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.estado;
    }
  } else
    form.estado.className = 'campo2';

  if(form.cep.value.length < 8){
    erro += "  - Preencha o CEP com 8 números\n";
    form.cep.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.cep;
    }
  } else
    form.cep.className = 'campo2';

  if(form.telefone.value.length < 14){
    erro += "  - Digite o número do telefone no formato (xx) xxxx-xxxx\n";
    form.telefone.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.telefone;
    }
  } else
    form.telefone.className = 'campo2';

  if(form.idade.value.length == 0){
    erro += "  - Preencha a idade\n";
    form.idade.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.idade;
    }
  } else
    form.idade.className = 'campo2';

  if(form.estado_civil.value == 0){
    erro += "  - Escolha o Cargo\n";
    form.estado_civil.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.estado_civil;
    }
  } else
    form.estado_civil.className = 'campo2';

  if(form.formacao.value.length == 0){
    erro += "  - Preencha a Formação Acadêmica\n";
    form.formacao.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.formacao;
    }
  } else
    form.formacao.className = 'campo2';

  if(form.area.value == 0){
    erro += "  - Escolha a Área\n";
    form.area.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.area;
    }
  } else
    form.area.className = 'campo2';

  if(form.cargo.value == 0){
    erro += "  - Escolha o Cargo\n";
    form.cargo.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.cargo;
    }
  } else
    form.cargo.className = 'campo2';

  if(form.salario.value == 0){
    erro += "  - Escolha o Salário\n";
    form.salario.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.salario;
    }
  } else
    form.salario.className = 'campo2';

  if(erro!=''){
    alert("Corrija o(s) seguinte(s) erro(s):\n" + erro);
    objFocus.focus()
    return false;
  } else {
    form.enviar.disabled = true;
    return true;
  }
}

function verificaFormCurriculoLogin(form){
  var erro = '';
  var focou = false;
  var objFocus = null;

  if(form.rg.value.length == 0){
    erro += "  - Preencha o RG\n";
    form.rg.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.rg;
    }
  } else
    form.rg.className = 'campo2';

  if(form.senha.value.length < 4){
    erro += "  - Digite a senha com no mímino 4 caracteres\n";
    form.senha.className = 'campo1';
    if(!focou){
      focou = true;
      objFocus = form.senha;
    }
  } else
    form.senha.className = 'campo2';

  if(erro!=''){
    alert("Corrija o(s) seguinte(s) erro(s):\n" + erro);
    objFocus.focus()
    return false;
  } else {
    form.enviar.disabled = true;
    return true;
  }
}

function handler(){
  if(http.readyState == 1){
    document.getElementById('verificaRG').innerHTML = '<br /><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="20" height="20"><param name="movie" value="swfs/setas.swf" /><param name="quality" value="high" /><param name="wmode" value="transparent" /><embed src="swfs/setas.swf" quality="high" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="20" height="20"></embed></object><b>Aguarde, verificando disponibilidade do RG</b>';
  } else if(http.readyState == 4){
    if(http.status == 200){
      document.getElementById('verificaRG').innerHTML = http.responseText;
    } else
      alert("Houve o seguinte problema ao obter os dados do servidor:\n" + http.statusText);
  }
}

function carrega(value){
  if (value.length > 0) {
    document.getElementById('verificaRG').innerHTML = '';
    http = getHTTPObject();
    http.onreadystatechange = handler;
    http.open("GET", "rgVerifica.php?rg=" + value, true);
    http.send(null);
  }
}

function updContaChars(obj, idDestino, objNextFocus){
  var v = obj.value.length;
  var M = 255;
  if(v > M){
    v = M;
    obj.value = obj.value.substring(0, M);
    objNextFocus.focus();
  }
  document.getElementById(idDestino).childNodes[0].nodeValue = M - v;
}