function emailCheck (emailStr)
	{
		/* Verificar si el email tiene el formato user@dominio. */
		var emailPat=/^(.+)@(.+)$/ 

		/* Verificar la existencia de caracteres. ( ) < > @ , ; : \ " . [ ] */
		var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]" 

		/* Verifica los caracteres que son válidos en una dirección de email */
		var validChars="\[^\\s" + specialChars + "\]" 

		var quotedUser="(\"[^\"]*\")" 

		/* Verifica si la dirección de email está representada con una dirección IP Válida */ 

		var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/


		/* Verificar caracteres inválidos */ 

		var atom=validChars + '+'
		var word="(" + atom + "|" + quotedUser + ")"
		var userPat=new RegExp("^" + word + "(\\." + word + ")*$") /* domain, as opposed to ipDomainPat, shown above. */
		var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

		var matchArray=emailStr.match(emailPat)
		if (matchArray==null)
		{
			//alert("El correo electrónico parece incorrecto. (verifica @ y .)")
			mailvalido=1;
			return false
		}
		var user=matchArray[1]
		var domain=matchArray[2]

		// Si el user "user" es valido 
		if (user.match(userPat)==null)
		{
		// Si no
			//alert("El nombre de usuario no es válido.")
			mailvalido=1;
			return false
		}

		/* Si la dirección IP es válida */
		var IPArray=domain.match(ipDomainPat)
		if (IPArray!=null)
		{
			for (var i=1;i<=4;i++)
			{
				if (IPArray[i]>255)
				{
					//alert("IP de destino inválida")
					mailvalido=1;
					return false
				}
			}
		return true
	}

	var domainArray=domain.match(domainPat)
	if (domainArray==null)
	{
		//alert("El dominio parece no ser válido.")
		mailvalido=1;
		return false
	}

	var atomPat=new RegExp(atom,"g")
	var domArr=domain.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>4)
	{ 
		//alert("La dirección debe tener hasta 4 letras, 3 si es .'com' o 2 si es de algún pais.")
		mailvalido=1;
		return false
	}

	if (len<2) {
		var errStr="La dirección es erronea"
		//alert(errStr)
		mailvalido=1;
		return false
	}

	uno=emailStr;
	longitud = emailStr.length;

	//var pos=document.formulario.email.value.search('@');
	var pos=emailStr.search('@');	
	var fin = longitud-pos;
	var cadena1 = emailStr.substr(pos,fin);

	if (cadena1 == "@terrra.es" || cadena1 == "@tera.es" || cadena1 == "@terra.3s" || cadena1 == "@smn.com" || cadena1 == "@msn.con") {
		mailvalido=4;
		return false
	}
	if (cadena1 == "@msn.co" || cadena1 == "@hotmeil.con" || cadena1 == "@hotmeil.com" || cadena1 == "@htomail.com" || cadena1 == "@hotmil.com") {
		mailvalido=4;
		return false
	}
	if (cadena1 == "@hotmail.ocm" || cadena1 == "@hotmail.con" || cadena1 == "@homtail.com" || cadena1 == "@homail.com" || cadena1 == "@wandoo.es") {
		mailvalido=4;
		return false
	}
	if (cadena1 == "@wanado.es" || cadena1 == "@vanadoo.es" || cadena1 == "@telefónica.net" || cadena1 == "@telefnica.net" || cadena1 == "@yshoo.es") {
		mailvalido=4;
		return false
	}
	if (cadena1 == "@yaho.es" || cadena1 == "@yahoou.es" || cadena1 == "@eresma.com" || cadena1 == "@eresmas.es" || cadena1 == "@carrefour.es") {
		mailvalido=4;
		return false
	}	
	if (cadena1 == "@hotmail.msn.com" || cadena1 == "@hoymail.com" || cadena1 == "@hormail.com" || cadena1 == "@mixmaill.com" || cadena1 == "@0le.com" || cadena1 == "@GOTMAIL.COM") {
		mailvalido=4;
		return false
	}	
	if (cadena1 == "@holmail.com" || cadena1 == "@ersmas.com" || cadena1 == "@on0.com" || cadena1 == "@msm.com" || cadena1 == "@wanodoo.com" || cadena1 == "@hiotmail.com") {
		mailvalido=4;
		return false
	}	
	if (cadena1 == "@HOTMASIL.COM" || cadena1 == "@hotmmail.com" || cadena1 == "@telelineb.es" || cadena1 == "@yahooo.es" || cadena1 == "@Carrefour.es" || cadena1 == "@yagoo.es") {
		mailvalido=4;
		return false
	}	
	if (cadena1 == "@TELEFOCICA.NET" || cadena1 == "@TERRA.es" || cadena1 == "@hotnail.com" || cadena1 == "@hotmial.com" || cadena1 == "@hotmal.com" || cadena1 == "@jazzfre.com") {
		mailvalido=4;
		return false
	}	
	if (cadena1 == "@mixnail.com" || cadena1 == "@hotmial.com" || cadena1 == "@TERRAS.ES" || cadena1 == "@corrreo.de" || cadena1 == "@telepolis.cm" || cadena1 == "@hotmal.com") {
		mailvalido=4;
		return false
	}	
	if (cadena1 == "@hotmel.com" || cadena1 == "@WANADO.ES") {
		mailvalido=4;
		return false
	}	
	// La dirección de email ingresada es Válida
	return true;
}
function validate_string(input, formulario, campo) {
	var arr_entrada = input.toString().split(" ");//cargamos un array con los datos de entrada
	var known_bad = new Array();//array de palabras no permitidas
	known_bad[0] = 'select';
	known_bad[1] = 'insert';
	known_bad[2] = 'alter';
	known_bad[3] = 'delete';
	known_bad[4] = 'update';
	known_bad[5] = '--';
	known_bad[6] = '@@';
   	known_bad[7] = 'shutdown';
   	known_bad[8] = 'kill';
   	//known_bad[9] = 'drop';
	for (i=0;i<known_bad.length;i++) {
		 for (j=0;j< arr_entrada.length;j++) {
			if (arr_entrada[j].toUpperCase().indexOf(known_bad[i].toUpperCase()) != -1 ) {
				alert ('La palabra "' + known_bad[i] + '" no está permitida.');
				eval('document.'+ formulario.toString()+'.'+campo.toString()+'.value=""');
				eval('document.'+ formulario.toString()+'.'+campo.toString()+'.focus()');
				return;
			}	
		}
	}
}
function checkUser() {
	if (event.keyCode == 13);
	else if (event.keyCode == 241 || event.keyCode == 209);
	else if (event.keyCode > 44 && event.keyCode < 58);
	else if (event.keyCode > 64 && event.keyCode < 91);
	else if (event.keyCode > 96 && event.keyCode < 123);
	else event.returnValue = false;
 }
 
function good_input(input, formulario, campo) {
	var dato = input.toString();
	var good_char ="ABCDEFGHIJKLMNÑOPQRSTUVWXYZ";
	var char1;
	var textOk;
	good_char = good_char + "abcdefghijklmnñopqrstuvwxyz";
	good_char = good_char + "ÁÉÍÓÚáéíóúüÜ";
	good_char = good_char + "0123456789";
	good_char = good_char + "ºª+\/-._, ";
	var esca = String.fromCharCode(92);
	good_char = good_char + esca;
	if (campo.toLowerCase().indexOf("mail") !=  -1) {
		good_char = good_char + "@";
	}
 	if (campo.toLowerCase().indexOf("user") !=  -1) {
		good_char = good_char + "@";
	}

	for (i=0; i<dato.length;i++) {
		char1 = dato.charAt(i);
		if (good_char.indexOf(char1)== -1){
			textOk = dato.substr(0,i);
			textOk.toString();
			alert ('El carácter "' + char1 + '" no está permitido.');
			eval('document.'+ formulario.toString()+'.'+campo.toString()+'.value="'+textOk+'"');
			eval('document.'+ formulario.toString()+'.'+campo.toString()+'.focus()');
			return;
		}
	}
}
