
function txtBoxFormat(objeto, 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;
    if (nTecla == 8) {
        return true;
    }
}

    sValue = objeto.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( ")", "" );
    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) == "/") || (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++;
    }

    objeto.value = sCod;

    if (nTecla != 8) { // backspace
      if (sMask.charAt(i-1) == "9") { // apenas números...
        return ((nTecla > 47) && (nTecla < 58)); } 
      else { // qualquer caracter...
        return true;
      } 
    }
    else {
      return true;
    }
  }


//Data:<input type="text" size="20" onkeypress="return txtBoxFormat(this, '99/99/9999', event);">
//RG:<input type="text" size="20" onkeypress="return txtBoxFormat(this, '99.999.999-9', event);">
//Telefone:<input type="text" size="20" onkeypress="return txtBoxFormat(this, '(99)9999-9999', event);">
//Código:<input type="text" size="20" onkeypress="return txtBoxFormat(this, '99-999', event);">

function wait(millis) 
{
var date = new Date();
var curDate = null;

do { curDate = new Date(); } 
while(curDate-date < millis);
} 

		function InStr(n, s1, s2){
			// Devuelve la posición de la primera ocurrencia de s2 en s1
			// Si se especifica n, se empezará a comprobar desde esa posición
			// Sino se especifica, los dos parámetros serán las cadenas
			var numargs=InStr.arguments.length;	
			if(numargs<3)
				return n.indexOf(s1)+1;
			else
				return s1.indexOf(s2, n)+1;
		}


function left(str, n){
	if (n <= 0)
	    return "";
	else if (n > String(str).length)
	    return str;
	else
	    return String(str).substring(0,n);
}

function right(str, n){
    if (n <= 0)
       return "";
    else if (n > String(str).length)
       return str;
    else {
       var iLen = String(str).length;
       return String(str).substring(iLen, iLen - n);
    }
}

function Form(f){
  //Atributos
  //  oForm = new Form(document.form);
  this.f = f;
  /*this.a = f.elements;
  this.t = f.length;*/

  //Métodos
  this.getField = function(name){
                    return eval("document." + f.name + "." + name);
                  }
  /*this.haveRequiredContent = function(){
    var e;

    for(var i = 0; i < this.t; i++){
      e = this.a[i];

      if(e.required)
        if(e.type == "text" || e.type == "password" || e.type == "")
          if(!e.value)
            return false;
    }
  }

  this.haveValidContent = function(){
    var e;

    for(var i = 0; i < f.length; i++){
      e = f.elements[i];

      if();
    }
  }
  */
/*
  dontCheck = new Array('hidden', 'submit', 'reset', 'button', 'image', 'radio', 'select-one', 'select-multiple', 'checkbox');

  for (e = 0; e < f.elements.length; e++){
    skip = false;
    fType = f.elements[e].type;

    for (d = 0; d < dontCheck.length; d++){
      if (fType == dontCheck[d]){
        skip = true;
      }
    }

    if (fType && !skip){
*/
}


function checaEmailMessage(nform) {
	if (nform.value == "")
	{
		alert("Por favor, informe um e-mail válido.");
		return false;
	}
	else if (!checaEmail(nform))
	{
		alert("O e-mail informado (" + nform.value + ") não é válido.");
		return false;
	}
	else
	{
		return true;
	}
}

function checaEmail(nform) {
	if (nform.value == "") {
		return false;
	} else {
		prim = nform.value.indexOf("@")
		if(prim < 2) 
			return false;
		if(nform.value.indexOf("@",prim + 1) != -1)
			return false;
		if(nform.value.indexOf(".") < 1)
			return false;
		if(nform.value.indexOf(" ") != -1)
			return false;
		if(nform.value.indexOf("zipmeil.com") > 0)
			return false;
		if(nform.value.indexOf("hotmeil.com") > 0)
			return false;
		if(nform.value.indexOf(".@") > 0)
			return false;
		if(nform.value.indexOf("@.") > 0)
			return false;
		if(nform.value.indexOf(".com.br.") > 0)
			return false;
		if(nform.value.indexOf("/") > 0)
			return false;
		if(nform.value.indexOf("[") > 0)
			return false;
		if(nform.value.indexOf("]") > 0)
			return false;
		if(nform.value.indexOf("(") > 0)
			return false;
		if(nform.value.indexOf(")") > 0)
			return false;
		if(nform.value.indexOf("..") > 0)
			return false;
	}
		return true;
}

