function toggleButton()
{
	var ele = document.getElementById("toggleButton");
	//var text = document.getElementById("displayText");
	if(ele.style.display == "block")
	{
    	ele.style.display = "none";
		//text.innerHTML = "show";
  	}
	else
	{
		ele.style.display = "block";
		//text.innerHTML = "hide";
	}
}

function getUrlVars()
{
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++)
    {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
    return vars;
}

$(document).ready(function()
{
	var rID = getUrlVars()["rID"];

	$("form ul li:first").show();
	
	var ck_firstname = /^[A-Za-z0-9- ]{2,20}$/;
	var ck_lastname = /^[A-Za-z0-9- ]{2,20}$/;
	var ck_psnid = /^[A-Za-z0-9_-]{4,50}$/;
	var ck_email = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	
	var psnIDisValid = false;
	
	$('#email').keyup(function()
	{
		var email=$(this).val();
		if (!ck_email.test(email)) 
		{
			$(this).next().show().html("Enter valid email");
		}
		else
		{
			$(this).next().hide();
			$("li").next("li.FirstName").slideDown({duration: 'slow',easing: 'easeOutElastic'});
		}
	});
	
	$('#firstN').keyup(function()
	{
		var firstname=$(this).val();
		if (!ck_firstname.test(firstname)) 
		{
			$(this).next().show().html("Enter valid first name");
		}
		else
		{
			$(this).next().hide();
			$("li").next("li.LastName").slideDown({duration: 'slow',easing: 'easeOutElastic'});
		}
	});
	
	$('#lastN').keyup(function()
	{
		var lastname=$(this).val();
		if (!ck_lastname.test(lastname)) 
		{
			$(this).next().show().html("Enter valid last name");
		}
		else
		{
			$(this).next().hide();
			$("li").next("li.psnIDButton").slideDown({duration: 'slow',easing: 'easeOutElastic'});
			$("li").next("li.psnID").slideDown({duration: 'slow',easing: 'easeOutElastic'});
			$("li").next("li.submit").slideDown({duration: 'slow',easing: 'easeOutElastic'});
		}
	});
	
	$('#psnID').keyup(function()
	{
		var psnid=$(this).val();
		if (!ck_psnid.test(psnid)) 
		{
			$(this).next().show().html("Enter valid PSN ID");
		}
		else
		{
			$(this).next().hide();
			$("li").next("li.submit").slideDown({duration: 'slow',easing: 'easeOutElastic'});
		}
	});
	
	$('#showPSNID').click(function()
	{
		var ele = document.getElementById("togglePSNIDInput");
		//var div = document.getElementById("displayText");
		if(ele.style.display == "block")
		{
			ele.style.display = "none";
	
			$(this).val(' Add PSN ID ');
	
			$("#psnID").val('');
			$("#psnID").next().hide();
			$("#psnID").removeClass("red");
			//text.innerHTML = "show";
		}
		else
		{
			ele.style.display = "block";
			
			$(this).val(' Remove PSN ID ');
			//text.innerHTML = "hide";
		}
	
		return false;
	});
	
	$("#psnID").change(function() 
	{ 
		var username = $("#psnID").val();
		var msgbox = $(this).next();
	
		if(username.length > 3)
		{
			msgbox.show();
			msgbox.html('<img src="loader.gif" align="absmiddle">&nbsp;Checking PSN ID...');
	
			$.ajax({  
				type: "POST",  
				url: "psnIDcheck",  
				data: "psnID="+ username,  
				success: function(msg)
				{  
					msgbox.ajaxComplete(function(event, request)
					{ 
						if(msg == 'OK')
						{ 
							$("#psnID").removeClass("red");
							$("#psnID").addClass("green");
							msgbox.html('<img src="yes.png" align="absmiddle">');
							psnIDisValid = true;
						}
						else  
						{  
							$("#psnID").removeClass("green");
							$("#psnID").addClass("red");
							msgbox.html(msg);
						}
	   				});
				}
			});
		}
		else
		{
			$("#psnID").addClass("red");
			msgbox.html('<font color="#cc0000">Enter valid PSN ID</font>');
		}
	
		return false;
	});
	
	$('#submit').click(function()
	{
		var email=$("#email").val();
		var firstN=$("#firstN").val();
		var lastN=$("#lastN").val();
		
		var psnID=$("#psnID").val();
		var ele = document.getElementById("togglePSNIDInput");

		var msgbox = $(this).next();

		msgbox.show();
		msgbox.html('<img src="loader.gif" align="absmiddle">&nbsp;Sending...');

		
		if(ck_email.test(email) && ck_firstname.test(firstN) && ck_lastname.test(lastN) && (ck_psnid.test(psnID) && psnIDisValid || ele.style.display == "none") )
		{
			$.ajaxSetup ({
				cache: false
			});
		
			if(ele.style.display == "none" || !psnIDisValid)
			{
				psnID = "";	
			}
		
			var dataString = 'firstN='+ firstN + '&lastN=' + lastN + '&email=' + email + '&psnID=' + psnID + '&rID=' + rID;

			$.ajax({
				type: "POST",
				url: "addMember",
				data: dataString,
				success: function(msg)
				{
					//alert(msg);
					
					// Check to see if the mail was successfully sent
					if(msg!='Failed')
					{
						if(msg=='Exists')
						{
							msgbox.html('<font color="#cc0000"><STRONG>Member Exists</STRONG></font>');
						}
						else
						{
							$("#form").show().html('<center><p>Thank you for registering.  An email will be sent from admin@pslevel.com with a link to validate your entry.</p></center>');
							toggleButton();
						}
					} 
					else
					{
					}
				}		
			});
		}
		else
		{
			msgbox.html('<font color="#cc0000"><STRONG>Correct form error(s)</STRONG></font>');
		}
		
		return false;
	});

	$('#rsubmit').click(function()
	{
		var email=$("#remail").val();
		var psnID=$("#rpsnID").val();
		
		var msgbox = $(this).next();

			msgbox.show();
			msgbox.html('<img src="loader.gif" align="absmiddle">&nbsp;Checking Member...');
		
			$.ajaxSetup ({
				cache: false
			});
		
			var dataString = '&email=' + email + '&psnID=' + psnID;

			$.ajax({
				type: "POST",
				url: "getReferral",
				data: dataString,
				success: function(msg)
				{  
					msgbox.ajaxComplete(function(event, request)
					{ 
						if(msg != 'ERROR')
						{ 
							$("#rForm").show().html('<CENTER>' + msg + '</CENTER>');
						}
						else  
						{  
							msgbox.html('<font color="#cc0000"><STRONG>Member was not found.</STRONG></font>');
						}
	   				});
				}
			});
		
		return false;
	});


// What is $(document).ready ? See: http://flowplayer.org/tools/documentation/basics.html#document_ready

var triggers = $(".modalInput").overlay({

	// some mask tweaks suitable for modal dialogs
	mask: {
		color: '#ebecff',
		loadSpeed: 200,
		opacity: 0.9
	},

	closeOnClick: false
});


var buttons = $("#yesno button").click(function(e) {
	
	// get user input
	var yes = buttons.index(this) === 0;

	// do something with the answer
	//triggers.eq(0).html("You clicked " + (yes ? "yes" : "no"));
});


$("#prompt form").submit(function(e) {

	// close the overlay
	triggers.eq(1).overlay().close();

	// get user input
	var input = $("input", this).val();

	// do something with the answer
	triggers.eq(1).html(input);

	// do not submit the form
	return e.preventDefault();
});

});
