var requester = null;
if (document.getElementById("aaMemberNumber")!=null) {
	var receipt = document.getElementById("aaMemberNumber");
	receipt.onchange = onchangeReceipt;
	receipt.onkeyup = onkeyupReceipt;
}
function validateAAMember(){
 
}
function onchangeReceipt(){
	if (this.value.length > 15) {
	if (!this.verified){
	//if (this.verified){
		message(this, "loadingMessage", " ");
		if (requester != null && requester.readyState != 0 && requester.readyState != 4)
		{
			requester.abort();
		}
	
		try
		{
			requester = new XMLHttpRequest();
		}
		catch (error)
		{
			try
			{
				requester = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (error)
			{
				requester = null;
	
				return false;
			}
		}
	
		requester.onreadystatechange = onreadystatechangeReceipt;
	
		requester.open("GET", "../booking/aaMemberValidate.php?aaMemberNumber=" + this.value);
		requester.send(null);
	}
	} else { message(receipt, "errorMessage", ""); }
	return true;
}//end onchangeReceipt

function onkeyupReceipt(){
	//only need to validate when enter length of the string to 16(aa member card length + 3 space in the middle)
	if (this.value.length > 15)
	{
		message(this, "loadingMessage", " ");
		this.verified = true;
	
		if (requester != null && requester.readyState != 0 && requester.readyState != 4)
		{
			requester.abort();
		}
		try
		{
			requester = new XMLHttpRequest();
		}
		catch (error)
		{
			try
			{
				requester = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (error)
			{
				requester = null;
	
				return false;
			}
		}
	
		requester.onreadystatechange = onreadystatechangeReceipt;
	
		requester.open("GET", "../booking/aaMemberValidate.php?aaMemberNumber=" + this.value);
		//requester.open("GET", "../Classes/ajaxManager.php?listingId=17076");
		requester.send(null);
	}
	else
	{
		this.verified = false;
		//receipt.message = null;
		message(receipt, "errorMessage", "");
	}
	return true;
}//end function onkeyupReceipt


/* Execute the action which has been associated with the completion of this object */
function onreadystatechangeReceipt()
{
	// If XMLHR object has finished retrieving the data
	if (requester.readyState == 4)
	{
		// If the data was retrieved successfully
		try
		{
			if (requester.status == 200)
			{
				writeDetails();
			}
			// IE returns a status code of 0 on some occasions, so ignore this case
			else if (requester.status != 0)
			{
				alert("There was an error while retrieving the URL: " + requester.statusText);
			}
		}
		catch (error)
		{
		}
	}

	return true;
}//function onreadystatechangeReceipt


/* Update users details after data is retrieved via XMLHR */
function writeDetails()
{
	var receipt = document.getElementById("aaMemberNumber");
	
	//if (requester.responseText.charAt(0) == "<")
	if (requester.responseText == "success")
	{
		//var email = document.getElementById("email");
		//var name = document.getElementById("name");

		receipt.valid = true;
		message(receipt, "statusMessage", "Your AA Member number was validated.");
		//document.getElementById("status").style.display = "block";
		document.getElementById("status").className = "correct";
		document.getElementById("joinAA").style.display = "none";
		isValidCardNumber = true;
		//receipt.value = requester.responseText;
		resetGrandTotal(isValidCardNumber);
		/*
		receipt.className = "text";
		if (email.value == email.defaultValue)
		{
			email.value = requester.responseXML.getElementsByTagName("email")[0].childNodes[0].nodeValue;
			onchangeEmail(email);
		}
		*/
	}
	else
	{
		//alert('invalid');
		receipt.valid = false;
		//receipt.value = requester.responseText;
		isValidCardNumber = false;
		//resetGrandTotal(isValidCardNumber);
		message(receipt, "errorMessage", "Invalid AA Member number.");
		document.getElementById("status").className = "wrong";
		//document.getElementById("status").style.display = "block";
		document.getElementById("joinAA").style.display = "none";
	}

	return true;
}

/* Insert/clear message next to form element */
function message(element, classString, errorMessage)
{
	if (element.message != null)
	{
		try
		{
			element.message.className = classString;
			element.message.removeChild(element.message.childNodes[0]);
		}
		catch (error)
		{
		}
	}

	if (errorMessage != null)
	{
		if (element.message == null)
		{
			var messageDiv = document.createElement("div");

			element.message = element.parentNode.insertBefore(messageDiv, element);
			//element.message.style.marginLeft = parseInt(element.scrollWidth) + 10 + "px";
			//element.message.style.marginLeft = "300px";
		}

		element.message.className = classString;
		element.message.appendChild(document.createTextNode(errorMessage));
	}

	return true;
}//end function message( 
//document.getElementById("bigFatList").style.display = "none";

