var primeiroErro = null;
function espacos0(obj) {
  var st = obj.value;
  obj.value = st.replace(new RegExp(" ","gi"),"");
}
function espacos1(obj) {
  var st = obj.value;
  st = st.replace(new RegExp(" {2,}","gi")," ");
  st = st.replace(new RegExp("^ ","i"),"");
  obj.value = st.replace(new RegExp(" $","i"),"");
}
function ie6() {
  var st = navigator.appVersion;
  var expr1 = new RegExp("MSIE","i");
  if (!expr1.test(st)) return false;
  else {
    st = st.replace(new RegExp("^.*MSIE","i"),"");
	return (parseInt(st,10) == 6);
  }
}
function insereMensagemErroApos(id, mensagem, flag_br) {
  var ref = document.getElementById(id);
  if (ref == null) return null;
  else {
    var refp = ref.parentNode;
    var erro = document.createElement("font");
    erro.id = "erro_" + id;
    erro.className = "erro";
    refp.appendChild(erro);
	if (flag_br) {
      var br = document.createElement("br");
      erro.appendChild(br);
	}
    var msg = document.createTextNode(mensagem);
    erro.appendChild(msg);
	return erro.id;
  }
}
function obrigatorio(id) {
  if (document.getElementById(id).idErro) removeMensagemErro(document.getElementById(id).idErro);
  if (document.getElementById(id).value.length > 0) return true;
  else {
    document.getElementById(id).idErro = insereMensagemErroApos(id,"Warning: please fill in this field.",true);
  }
}
function obrigatorioCriticaEmail(id) {
  var st = document.getElementById(id).value;
  var expr;
  if (document.getElementById(id).idErro) removeMensagemErro(document.getElementById(id).idErro);
  if (st.length > 0) {
    expr = new RegExp("^[a-z0-9]+((\\\.|-|_)[a-z0-9]+)*@[a-z][a-z0-9]*((\\\.|-)[a-z0-9]+)*$","i");
    if (expr.test(st)) return true;
    else {
      document.getElementById(id).idErro = insereMensagemErroApos(id,"Warning: " + id + " is not valid.",true);
	  return false;
    }
  } else {
    document.getElementById(id).idErro = insereMensagemErroApos(id,"Warning: please fill in this field.",true);
    return false;
  }
}
function obrigatorioCriticaTelefone(id) {
  var st = document.getElementById(id).value;
  var expr;
  if (document.getElementById(id).idErro) removeMensagemErro(document.getElementById(id).idErro);
  if (st.length > 0) {
    //expr = new RegExp("^.*[0-9]{3,4}-?[0-9]{4}$","i");
    expr1 = new RegExp("^[0-9]{2,3}-[0-9]{3,4}-?[0-9]{4}$","i");
    expr2 = new RegExp("^[0-9]{1,3}-[0-9]{2,3}-[0-9]{3,4}-?[0-9]{4}$","i");
    if (expr1.test(st) || expr2.test(st)) return true;
    else {
      document.getElementById(id).idErro = insereMensagemErroApos(id,"Warning: " + id + " is not valid.\n(ddd-phone ou ddi-ddd-phone)",true);
	  return false;
    }
  } else {
    document.getElementById(id).idErro = insereMensagemErroApos(id,"Warning: please fill in this field.",true);
    return false;
  }
}
function pesquisaErro(obj) {
  var i;
  if (obj.tagName) {
	if (obj.id) {
	  if (obj.id.indexOf("erro_") == 0) {
        primeiroErro = obj; 
		return true;
	  }
	}
	if (primeiroErro == null) {
      for (i=0; i<obj.childNodes.length; i++) {
	    pesquisaErro(obj.childNodes[i]);
	  }
	}
	return false;
  }
}
function posicaoErro(obj) {
  var obj2 = obj;
  var n = 0;
  do {
    n += obj2.offsetTop;
	obj2 = obj2.offsetParent;
  } while (obj2.tagName != "BODY");
  n -= 50;
  if (n<0) return 0; else return n;
}
function removeMensagemErro(id) {
  var ref = document.getElementById(id);
  if (ref == null) return false;
  else {
    removeElement(id);
    return true;
  }
}
