function check_email(email) {

	var atom="\[^\\s"+"\\(\\)><@,;:\\\\\\\"\\.\\[\\]"+"\]"+"+";
	var word="("+atom+"|"+"(\"[^\"]*\")"+")";
	var regExpDominio=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var checkUser=new RegExp("^"+word+"(\\."+word+")*$");
	var arrEmail=email.match(/^(.+)@(.+)$/);
	if (arrEmail == null) {
		return false;
	}

	var user=arrEmail[1];
	var dominio=arrEmail[2];
	for (var i=0;i<user.length;i++) {
		if (user.charCodeAt(i)>127) {
			return false;
		}
	}

	for (var i=0;i<dominio.length;i++) {
		if (dominio.charCodeAt(i)>127) {
			return false;
		}
	}

	if (user.match(checkUser) == null) {
		return false;
	}

	var arrIP=dominio.match(regExpDominio);
	var arrDominio=dominio.split(".");
	if (arrIP != null) {
		for (var i=1;i<=4;i++) {
			if (arrIP[i]>255) {
				return false;
			}
		}
		return true;
	}

	var regExpAtom=new RegExp("^"+atom+"$");
	var len=arrDominio.length;
	for (var i=0;i<len;i++) {
		if (arrDominio[i].search(regExpAtom) == -1) {
			return false;
		}
	}

	if (len<2) {
		return false;
	}
	return true;
}
