
function checkUsername( )
{
	var sUrl    = "ajax/check-username.php"; 
	var sParams = ("Username=" + $F('txtUsername'));
	
	new Ajax.Request(sUrl, { method:'post', parameters:sParams, onSuccess:_checkUsername }); 
}


function _checkUsername(sResponse)
{
	if (sResponse.status == 200 && sResponse.statusText == "OK")
	{
		if (sResponse.responseText == "AVAILABLE")
		{
			$('UsernameResult').setStyle({ fontSize:'12px', fontWeight:'bold', color:'#0000ff' }); 
			$('UsernameResult').innerHTML = 'Username Available!';
		}
			
		else if (sResponse.responseText == "NOT_AVAILABLE")
		{
			$('UsernameResult').setStyle({ fontSize:'12px', fontWeight:'bold', color:'#ff0000' }); 
			$('UsernameResult').innerHTML = 'Username NOT Available!';
		}
	}
}

function checkEmail( )
{
	var sUrl    = "ajax/check-email.php"; 
	var sParams = ("Email=" + $F('txtEmail'));
	
	new Ajax.Request(sUrl, { method:'post', parameters:sParams, onSuccess:_checkEmail }); 
}


function _checkEmail(sResponse)
{
	if (sResponse.status == 200 && sResponse.statusText == "OK")
	{
		if (sResponse.responseText == "AVAILABLE")
		{
			$('EmailResult').setStyle({ fontSize:'11px', color:'#0000ff' }); 
			$('EmailResult').innerHTML = '';
		}
			
		else if (sResponse.responseText == "NOT_AVAILABLE")
		{
			$('EmailResult').setStyle({ fontSize:'11px', color:'#ff0000' }); 
			$('EmailResult').innerHTML = 'Email Address Already Used!';
		}
	}
}

function showLoginForm( )
{
	$('frmMemberPassword').reset( );

	$('MemberPassword').hide( );
	$('Result').hide( );
	$('MemberLogin').show( );
}


function showPasswordForm( )
{
	$('MemberLogin').hide( );
	$('Result').hide( );
	$('MemberPassword').show( );	
}

function validateLoginForm( )
{
	var objFV = new FormValidator("frmMemberLogin");

	if (!objFV.validate("txtUsername", "B,L(4)", "Please enter your valid Username."))
		return false;
		
	if (!objFV.validate("txtPassword", "B,L(5)", "Please enter the valid Password."))
		return false;
		
	return true;
}

function validatePasswordForm( )
{
	var objFV = new FormValidator("frmMemberPassword");

	if (!objFV.validate("txtEmail", "B,E", "Please enter your valid Email Address."))
		return false;
		
	if (!objFV.validate("ddDobMonth", "B", "Please choose your Date of Birth (Month)."))
		return false;
		
	if (!objFV.validate("ddDobDay", "B", "Please choose your Date of Birth (Day)."))
		return false;
		
	if (!objFV.validate("ddDobYear", "B", "Please choose your Date of Birth (Year)."))
		return false;
		
	if (!isValidDate($F('ddDobDay'), $F('ddDobMonth'), $F('ddDobYear')))
	{
		alert("Please select a valid Date of Birth.");
		
		return false;
	}
	
	$('Processing').show( );
	$('BtnGetNow').disable( );
	
	var sUrl    = "ajax/get-password.php"; 
	var sParams = $('frmMemberPassword').serialize( );
	
	new Ajax.Request(sUrl, { method:'post', parameters:sParams, onFailure:_showError, onSuccess:_getPassword });
}

function _getPassword(sResponse)
{
	if (sResponse.status == 200 && sResponse.statusText == "OK")
	{
		var sParams = sResponse.responseText.split('|-|');
		
		if (sParams[0] == "OK")
		{
			$('Result').innerHTML = sParams[1];

			$('MemberPassword').hide( );
			$('Result').show( );
		}
			
		else
			_showError(sParams[1]);
			
		$('Processing').hide( );
		$('BtnGetNow').enable( );
	}
	
	else
		_showError( );
}

function validateSignupForm( )
{
	var objFV = new FormValidator("frmSignup");
	
	if (!objFV.validate("txtUsername", "B,L(4)", "Please enter your desired Username."))
		return false;
		
	if (!objFV.validate("txtPassword", "B,L(5)", "Please enter the valid Password (Min Length = 5)."))
		return false;
		
	if (!objFV.validate("txtVerifyPassword", "B,L(5)", "Please verify the Password (Min Length = 5)."))
		return false;		

	if (objFV.value("txtPassword") != objFV.value("txtVerifyPassword"))
	{
		alert("The Passwords does not MATCH. Please re-type the correct Password.");

		objFV.focus("txtVerifyPassword");
		objFV.select("txtVerifyPassword");

		return false;
	}
		
	if (!objFV.validate("txtEmail", "B,E", "Please enter your valid Email Address."))
		return false;
		
	if (!objFV.validate("ddMonth", "B", "Please choose your Date of Birth (Month)."))
		return false;
		
	if (!objFV.validate("ddDay", "B", "Please choose your Date of Birth (Day)."))
		return false;
		
	if (!objFV.validate("ddYear", "B", "Please choose your Date of Birth (Year)."))
		return false;
		
	if (!isValidDate($F('ddDay'), $F('ddMonth'), $F('ddYear')))
	{
		alert("Please select a valid Date of Birth.");
		
		return false;
	}
	
	if (!objFV.validate("ddGender", "B", "Please choose your Gender."))
		return false;
	
	return true;
}