function isEmail(email)
{
    invalidChars = " ~\'^\`\"*+=\\|][(){}$&!#%/:,;";
    // Check for null
    if (email == "")
    {
        return false;
    }
    // Check for invalid characters as defined above
    for (i=0; i<invalidChars.length; i++)
    {
        badChar = invalidChars.charAt(i);
        if (email.indexOf(badChar,0) > -1)
        {
            return false;
        }
    }
    lengthOfEmail = email.length;
    // check for . at last character or next to last char
    if ((email.charAt(lengthOfEmail - 1) == ".") || (email.charAt(lengthOfEmail - 2) == "."))
    {
        return false;
    }
    Pos = email.indexOf("@",1);
    // check for a dot immediately after @
    if (email.charAt(Pos + 1) == ".")
    {
        return false;
    }
    while ((Pos < lengthOfEmail) && ( Pos != -1))
    {
        Pos = email.indexOf(".",Pos);
        if (email.charAt(Pos + 1) == ".")
        {
            return false;
        }
        if (Pos != -1)
        {
            Pos++;
        }
    }
    // There must be at least one @ symbol
    atPos = email.indexOf("@",1);
    if (atPos == -1)
    {
        return false;
    }
    // But only ONE @ symbol
    if (email.indexOf("@",atPos+1) != -1)
    {
        return false;
    }
    // Also check for at least one period after the @ symbol
    periodPos = email.indexOf(".",atPos);
    if (periodPos == -1)
    {
        return false;
    }
    if (periodPos+3 > email.length)
    {
        return false;
    }
    return true;
}

function register()
{
	if (isEmail(document.e.email.value))
	{
		window.open("/misc/register/register.asp?email=" + document.e.email.value + "&abta=" + document.e.abta.value,'newwin','toolbar=0,location=0,directories=0,menubar=0,scrollbars=no,resizable=0,width=406,height=250,left=300,top=185');
	}
	else
	{
		alert('Please enter a valid e-mail address');
	}
	return false;
}