function  validateSignupForm(f)
{
	// validate nickname
	if (f.elements["user.username"].value.length == 0)
	{
		alert("Please enter a screen name.");
		f.elements["user.username"].focus();
		return false;
	}

	if ((f.elements["user.username"].value.length < 4) || (f.elements["user.username"].value.length > 10))
	{
		alert("The screen name must be between 4 and 10 alphanumeric characters.");
		f.elements["user.username"].focus();
		return false;
	}


	// CHECK ALPHNUMERIC USERNAME
	if ( f.elements["user.username"].value.search("[^A-Za-z0-9]") >= 0)
	{
		alert("The screen name can only have alpha-numeric characters ( must not have spaces or symbols ).");
		f.elements["user.username"].focus();
		return false;
	}
	if ( f.elements["user.username"].value.indexOf(" ") >= 0)
	{
		alert("The screen name must not have spaces.");
		f.elements["user.username"].focus();
		return false;
	}

	// CHECK ALPHNUMERIC USERNAME
	if ( f.elements["user.password"].value.search("[^A-Za-z0-9]") >= 0)
	{
		alert("The password can only have alpha-numeric characters ( must not have spaces or symbols ).");
		f.elements["user.password"].focus();
		return false;
	}


	// validate email
	if (f.elements["user.email"].value.length == 0)
	{
		alert("Please enter your email address.");
		f.elements["user.email"].focus();
		return false;
	}

	var i = 1;
	var s = f.elements["user.email"].value;
	var l = s.length;

	while ((i < l) && (s.charAt(i) != "@"))
	{
		i++;
	}

	if ((i >= l) || (s.charAt(i) != "@"))
	{
		alert("The email address is invalid.");
		f.elements["user.email"].focus();
		return false;
	}
	else
	{
		i += 2;
	}

	while ((i < l) && (s.charAt(i) != "."))
	{
		i++;
	}

	if ((i >= l - 1) || (s.charAt(i) != "."))
	{
		alert("The email address is invalid.");
		f.elements["user.email"].focus();
		return false;
	}

	// validate password
	if (f.elements["user.password"].value.length == 0)
	{
		alert("Please enter a password.\n\n-it must be 8-12 characters long\n-it must contain BOTH numericals and letters");
		f.elements["user.password"].focus();
		return false;
	}

	var numberOfDigits = 0;
	var numberOfLetters = 0;
	var numberOfGarbageChars = 0;
	s = f.elements["user.password"].value;

	for (i = 0; i < s.length; i++)
	{
		var c = s.charAt(i);
		if ( ((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z")) )
		{
			numberOfLetters++;
		}
		else if ((c >= "0") && (c <= "9"))
		{
			numberOfDigits++;
		}
		else
		{
			numberOfGarbageChars++;
		}
	}

	if (numberOfGarbageChars > 0)
	{
		alert("The password may only contain letters (a-z A-Z) and numericals (0-9).");
		f.elements["user.password"].focus();
		return false;
	}

	if (((f.elements["user.password"].value.length < 8) || (f.elements["user.password"].value.length > 12)) && ((numberOfDigits == 0) || (numberOfLetters == 0)))
	{
		alert("The password must be between 8 and 12 characters\nand contain both letters AND numericals.");
		f.elements["user.password"].focus();
		return false;
	}
	else if ((numberOfDigits == 0) || (numberOfLetters == 0))
	{
		alert("The password must contain both letters AND numericals.");
		f.elements["user.password"].focus();
		return false;
	}
	else if ((f.elements["user.password"].value.length < 8) || (f.elements["user.password"].value.length > 12))
	{
		alert("The password must be between 8 and 12 characters.");
		f.elements["user.password"].focus();
		return false;
	}

	if (f.elements["confirmPassword"].value.length == 0)
	{
		alert("Please retype your password in the second password field.");
		f.elements["confirmPassword"].focus();
		return false;
	}

	if (f.elements["user.password"].value != f.elements["confirmPassword"].value)
	{
		alert("The two passwords do not match. Please retype.");
		f.elements["confirmPassword"].focus();
		return false;
	}

	if (f.elements["tos"].checked == false)
	{
		alert("Please read and agree to the Terms Of Service.");
		f.elements["tos"].focus();
		return false;
	}

	return confirmSignupWindow(f);
}

function confirmSignupWindow(f)
{
	if (confirm("You are about to Sign Up to ThwartPoker.com. Make sure your entries are correct:\n\Screen Name: " + f.elements["user.username"].value + "\nE-mail: " + f.elements["user.email"].value +"\n\nContinue Sign Up?\n"))
	{
		f.submit();
        return true;
    }
	f.elements["user.username"].focus();
	return false;
}

function validateLoginForm(f)
{
	if (f.elements["username"].value.length < 4 || f.elements["username"].value.length >10)
	{
		alert("Please enter your screen name \n(must be 4-10 characters).");
		f.elements["username"].focus();
		return false;
	}
	if (f.elements["password"].value.length >12 || f.elements["password"].value.length==0)
	{
		alert("Please enter your password.\n(must be 12 characters or under)");
		f.elements["password"].focus();
		return false;
	}
    f.submit();
	return true;
}

function openWindow( url )
{
    if (url.indexOf('signup') >= 0)
    {
        location.href=url;
    }
    else if (url.indexOf('spgamepopup') < 0)
    {
        openWindowWithSize(url, 800, 580);
    }
    else{
        openWindowWithSize(url,845,608)
    }
}

function openWindowWithSize( url, width, height )
{
    var screenX = window.screenX + 50;
    var screenY = window.screenY + 200;
    if (url.indexOf('signup') >= 0)
    {
        location.href=url;
    }
    win = window.open(url,"applet_popup","height="+height+",width="+width+",toolbar=no,status=no,resizable=no,scrollbars=no,screenX=" + screenX + ",screenY=" + screenY);

}

function openOtherSite( url )
{
    var screenX = window.screenX + 50;
    var screenY = window.screenY + 200;
    win = window.open(url,"mobilewin","height=610,width=835,toolbar=yes,status=no,resizable=yes,scrollbars=yes,screenX=" + screenX + ",screenY=" + screenY);
    win.focus();
}


function changeStateList(countrySelect){

    var index=countrySelect.selectedIndex;
    var countryId=countrySelect.options[index].value;
    var state=document.forms["purchaseForm"].elements["useraddress.stateId"];

    if(countryId != 223){
        state.options.selectedIndex=51;

    }else{
        state.options.selectedIndex=0;
    }
}

function MM_swapImgRestore() { //v3.0
    var i,x,a = document.MM_sr;
    for (i = 0; a && i < a.length && (x = a[i]) && x.oSrc; i++) x.src = x.oSrc;
}

function MM_preloadImages() { //v3.0
    var d = document;
    if (d.images) {
        if (!d.MM_p) d.MM_p = new Array();
        var i,j = d.MM_p.length,a = MM_preloadImages.arguments;
        for (i = 0; i < a.length; i++)
            if (a[i].indexOf("#") != 0) {
                d.MM_p[j] = new Image;
                d.MM_p[j++].src = a[i];
            }
    }
}

function MM_findObj(n, d) { //v4.0
    var p,i,x;
    if (!d) d = document;
    if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
        d = parent.frames[n.substring(p + 1)].document;
        n = n.substring(0, p);
    }
    if (!(x = d[n]) && d.all) x = d.all[n];
    for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
    for (i = 0; !x && d.layers && i < d.layers.length; i++) x = MM_findObj(n, d.layers[i].document);
    if (!x && document.getElementById) x = document.getElementById(n);
    return x;
}

function MM_swapImage() { //v3.0
    var i,j = 0,x,a = MM_swapImage.arguments;
    document.MM_sr = new Array;
    for (i = 0; i < (a.length - 2); i += 3)
        if ((x = MM_findObj(a[i])) != null) {
            document.MM_sr[j++] = x;
            if (!x.oSrc) x.oSrc = x.src;
            x.src = a[i + 2];
        }
}



//-->
