
function validarEMail(email) {
  return (email.length == 0) || (email.indexOf("@") != -1 && email.indexOf(".") != -1);
}

function validarTelefono(telefono) {
  return validarCadena(telefono, "0123456789 .");
}

function validarEntero(entero)  {
  return validarCadena(entero, "0123456789");
}
function validarEnteroRT(obj) {
  if (obj.value != "" && !validarEntero(obj.value)) {
    alert("Debe escribir tan solo números.");
    obj.value = "";
  }
}

function validarCadena(cadena, plantilla) {
  var allValid = true;
  var allNum = "";
  for (i = 0; i < cadena.length; i++) {
    ch = cadena.charAt(i);
    for (j = 0; j < plantilla.length; j++)
      if (ch == plantilla.charAt(j))
        break;
    if (j == plantilla.length) {
      allValid = false;
      break;
    }
    allNum += ch;
  }
  return allValid;
}

function validarTexto(texto) {
  return true;
}

function esDigito(sChr) {
	var sCod = sChr.charCodeAt(0);
	return ((sCod > 47) && (sCod < 58));
}

function validarSep(oTxt) {
	var bOk = false;
	bOk = bOk || ((oTxt.value.charAt(2) == "-") && (oTxt.value.charAt(5) == "-"));
	bOk = bOk || ((oTxt.value.charAt(2) == "/") && (oTxt.value.charAt(5) == "/"));
	return bOk;
}

function finMes(oTxt){
	var nMes = parseInt(oTxt.value.substr(3, 2), 10);
	var nRes = 0;
	switch (nMes){
	case 1: nRes = 31; break;
	case 2: nRes = 29; break;
	case 3: nRes = 31; break;
	case 4: nRes = 30; break;
	case 5: nRes = 31; break;
	case 6: nRes = 30; break;
	case 7: nRes = 31; break;
	case 8: nRes = 31; break;
	case 9: nRes = 30; break;
	case 10: nRes = 31; break;
	case 11: nRes = 30; break;
	case 12: nRes = 31; break;
	}
	return nRes;
}

function validarDia(oTxt) {
	var bOk = false;
	var nDia = parseInt(oTxt.value.substr(0, 2), 10);
	bOk = bOk || ((nDia >= 1) && (nDia <= finMes(oTxt)));
	return bOk;
}

function validarMes(oTxt) {
	var bOk = false;
	var nMes = parseInt(oTxt.value.substr(3, 2), 10);
	bOk = bOk || ((nMes >= 1) && (nMes <= 12));
	return bOk;
}

function validarAno(oTxt) {
	var bOk = true;
	var nAno = oTxt.value.substr(6);
	bOk = bOk && ((nAno.length == 2) || (nAno.length == 4));
	if (bOk){
		for (var i = 0; i < nAno.length; i++){
			bOk = bOk && esDigito(nAno.charAt(i));
		}
	}
	return bOk;
}

function validarFecha(oTxt){
	var bOk = true;
	if (oTxt.value != ""){
		bOk = bOk && (validarAno(oTxt));
		bOk = bOk && (validarMes(oTxt));
		bOk = bOk && (validarDia(oTxt));
		bOk = bOk && (validarSep(oTxt));
		if (!bOk) {
			alert("Fecha inválida");
			oTxt.value = "";
			oTxt.focus();
		}
	}
}

function getNavegador() {
  if (navigator.userAgent.indexOf("Firefox")!=-1) {
    var versionindex=navigator.userAgent.indexOf("Firefox")+8
    if (parseInt(navigator.userAgent.charAt(versionindex))>=1) {
      return "FIREFOX";
    }
  } else if (navigator.appName == "Netscape" && parseFloat(navigator.appVersion)>= 5) {
    return "NETSCAPE";
  } else if (navigator.appName == "Opera" && parseFloat(navigator.appVersion)>= 8) {
    return "OPERA";
  } else {
    var version=0;
    if (navigator.appVersion.indexOf("MSIE")!=-1) {
      var temp=navigator.appVersion.split("MSIE");
      version=parseFloat(temp[1]);
    }

    if (version >= 5.5) {
      return "MSIE";
    }
  }
  return "";
}