/*
	#####################################################
	################ COPYRIGHT INFORMATION ##############
	#####################################################
	This file is developeded and maintained for to be use
	in accordance by HarvestThe.Net. Any modification or
	reproduction, without the consent of HarvestThe.Net,
	will result breach of copyright and person or others
	involved or responsible for such act, may be brought 
	before court for breaching copyright law.
	###################################################### 
*/
//---------- View transaction (Frontend) --------------\\
function downloadhistory(encMemberId, target)
{
	var xhr;
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
	
	xhr.onreadystatechange = function()
	{
		var errorMsg = "An error occured. Please try again later";
		if (xhr.readyState == 4)
		{
			if (xhr.status == 200)
			{
				var responseText = xhr.responseText.split(',');
				if (responseText[0] == ErrorCode_Success)
				{
					errorMsg = '';
				}
	
				if (errorMsg!='')
				{
					alert (errorMsg);
				}
				else
				{
					var historyWin = window.open(responseText[1],'TransactionHistory');
					historyWin.focus();
					//var adoc = document.open();
					//adoc.write("<a href=\"" +responseText[1] + " target=\"_blank\" >Click here</a>");
					//adoc.close();
				}
			}
		}
	}
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=historydownload';
	url += '&elmid=' + encMemberId;
	
	//var aWin = window.open(url);
	//aWin.focus();
	xhr.open("GET",url, true);
	xhr.send(null);
}

//---------- View transaction --------------\\

function updateExpiryDateForTransaction(encTransactionId, target)
{
	var xhr;
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
	
	xhr.onreadystatechange = function()
	{
		var errorMsg = "An error occured. Please try again later";
		if (xhr.readyState == 4)
		{
			if (xhr.status == 200)
			{
				var responseText = xhr.responseText;
				if (responseText == ErrorCode_Success)
					errorMsg ='';
				if (errorMsg == '')
				{
					alert("New expiry date assignment complete.");
					hideDateUpdateFields(encTransactionId);
				}
				else
					alert(errorMsg);
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=settransactionexpdate';
	url += '&transactionid=' + encTransactionId;
	url += '&datestr=' + document.getElementById('txtNewExpDate'+encTransactionId).value;
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open("GET",url, true);
	xhr.send(null);
}

function populateDivContent(divName, encTransactionId, target)
{
	//alert(divName + ", " + encTransactionId +", "+ target);
	var xhr;
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
	
	xhr.onreadystatechange = function()
	{
		var errorMsg = "An error occured. Please try again later";
		if (xhr.readyState == 4)
		{
			if (xhr.status == 200)
			{
				var responseText = xhr.responseText;
				document.getElementById(divName).innerHTML = responseText;
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=expsummary';
	url += '&transactionid=' + encTransactionId;
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open("GET",url, true);
	xhr.send(null);
	
}

function applyExpirationForTransaction(encTransactionId, target)
{
	var xhr;
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
	
	xhr.onreadystatechange = function()
	{
		var errorMsg = "An error occured. Please try again later";
		if (xhr.readyState == 4)
		{
			if (xhr.status == 200)
			{
				var response = xhr.responseText.split(',');
				
				if (response[0] == ErrorCode_Success) 
					errorMsg = '';

				if (errorMsg == '')
				{
					document.getElementById('tdExpiryResponse'+encTransactionId).innerText = response[1];
					document.getElementById('spnExpiryStatus'+encTransactionId).innerText = "Expired";
					document.getElementById('spnDefaultBtns'+encTransactionId).style["display"] = "none";
					var tep = document.getElementById('cellTotalExpiry').innerText;
					if (tep != "")
					{
						tep = parseFloat(tep);
						var expAmount = document.getElementById('tdExpiryEstimation'+encTransactionId).innerText;
						if (expAmount != "")
							expAmount = parseFloat(expAmount);
						document.getElementById('cellTotalExpiry').innerText = (tep + expAmount)
					}
				}
				else
					document.getElementById('tdExpiryResponse'+encTransactionId).innerText = "Sorry but process failed. Please try again later.";
			}		
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=expiretransaction';
	url += '&transactionid='+encTransactionId;
	
	document.getElementById('trExpiryResponse'+encTransactionId).style["display"] = "";
	document.getElementById('tdExpiryResponse'+encTransactionId).innerText= "Please wait...";
	document.getElementById('btnApplyExpiration'+encTransactionId).style["display"] = "none";
	document.getElementById('btnSummaryClose'+encTransactionId).value = "Close";
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open("GET",url, true);
	xhr.send(null);
}


//---------- Reservation -------------\\
function GetRedemptionDatails(encMemberId, placeofredemption, startdate, enddate, target)
{
	var xhr;
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
	
	xhr.onreadystatechange = function()
	{
		var errorMsg = "An error occured. Please try again later";
		if (xhr.readyState == 4)
		{
			if (xhr.status == 200)
			{
				var responseText = xhr.responseText.split(',');
				if (responseText[0] == ErrorCode_Success)
					errorMsg = '';
				if (errorMsg != '')
				{	
					document.getElementById("imgLoadingImg").style["visibility"] = "hidden";
					alert(errorMsg);
				}
				else
				{
					document.getElementById("hidRedemptionAllowed").value = responseText[1];
					document.getElementById("hidRedemptionBlock").value = responseText[2];
					document.getElementById("availablepoints").value = responseText[3];
					try
					{
						document.getElementById("availablepoints").readOnly = true;
					}
					catch (e)
					{
					}
					if (responseText[1] == "0")
					{
						//document.getElementById("redeemamount").value = 0;
						//document.getElementById("redeemamount").style["display"]="none";
						//document.getElementById("spnRedemptionBlocked").style["display"] = "";
						document.getElementById("trLoyaltyOptions").style["display"] = "none";
						document.getElementById("trBalanceFields").style["display"] = "none";
						document.getElementById("trRedeemFields").style["display"] = "none";
						document.getElementById("trBalanceAfterRedemption").style["display"] = "none";
						document.getElementById("trRedeemptionRelatedInfo").style["display"] = "none";
					}
					else
					{
						document.getElementById("redeemamount").style["display"]="";
					    document.getElementById("spnRedemptionBlocked").style["display"]="none";
					}
					document.getElementById("hidUnitToMoneyRatio").value = responseText[4];
					document.getElementById("imgLoadingImg").style["visibility"] = "hidden";
				}
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=getredemptiondetails';
	url += '&elmid='+encMemberId;
	url += '&placeofredemption='+placeofredemption;
	url += '&startdate='+startdate;
	url += '&enddate='+enddate;
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open("GET",url, true);
	xhr.send(null);
}
//---------- Verify email with code ---------\\
function displayVerificationResponse(email, code, target)
{
	var xhr;
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'An error occured. Please try again later by clicking the link from your received email.';
		var infoMsg = "Your application has been verified and its now in queue to be processed.\nYou will receive an email with your membership details in the coming\ndays. Please provide approximately 14 days for your application to be\nprocessed from date of registration.\n\nThank you for joining the Frequent Parker Program."; 
		var serverResponse = "";
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText.split(',');
				
				if (response[0] == ErrorCode_Success) errorMsg = '';
				serverResponse = response[1];	
				if (errorMsg != '')
				{
					//alert(errorMsg);
					if (serverResponse == "Email is not registered.")
					{	
						alert(serverResponse);
						document.getElementById("spnVerificationResponse").innerHTML = "<br/>" + response[1];
					}
					else if (serverResponse == "Email verification was complete.")
					{
						alert(infoMsg);
						document.getElementById("spnVerificationResponse").innerHTML = "<br/>" + "Your application has been verified and its now in queue to be processed. You will receive an email with your membership details in the coming days. Please provide approximately 14 days for your application to be processed from date of registration. Thank you for joining the Frequent Parker Program.";
					}
					
				}
				else
				{
					document.getElementById("spnVerificationResponse").innerHTML = "<br/>" + "Your application has been verified and its now in queue to be processed. You will receive an email with your membership details in the coming days. Please provide approximately 14 days for your application to be processed from date of registration. Thank you for joining the Frequent Parker Program.";
				}
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=verifyemail';
	url += '&email=' + email;
	url += '&vc=' + code;
	
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open('GET', url,  true);
	xhr.send(null);
	
}



//---------- Make a claim ----------\\
var attempCounter = 0;
function performAccrualSearch(encMemberId, target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'An error occured. Please try again later.';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText.split(":");
				var count = "";
				if (response[0] == ErrorCode_Success) 
					errorMsg = '';
				else
				{	
					count = response[1];
				}
				
				if (errorMsg != '')
				{
					if (count != "")
						if (parseInt(count) > 3)
						{
							alert("There were three invalid attemps. Your account has been blocked.");
							location.href = target + "scripts/logout_process.aspx";
							return;
						}
					document.getElementById("spanClaimResponse").innerHTML = " The receipt number you are trying to use<br/> either not imported to system yet or <br/>expired or not available for accrual.";
					document.getElementById("trAccrualSearchButtons").style["display"] = "";
				}
				else
				{
					displayAndConfirmAccrual(encMemberId, target);
				}
				
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=claimaccrual';
	url += '&elmid='+encMemberId;
	url += '&receiptnumber=' + document.getElementById('txtReceiptNumber').value;
	url += '&departuredate=' + document.getElementById('txtDepartureDate').value;
	
	//alert(url);
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open('GET', url,  true);
	xhr.send(null);
	
}

function cancelThisAccrual()
{
	document.getElementById('spanClaimResponse').innerHTML='Accrual cancelled';
	document.getElementById("trAccrualSearchButtons").style["display"] = "";
}

function displayAndConfirmAccrual(encMemberId, target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'An error occured. Please try again later.';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText;
				if (response != "") errorMsg = '';
				if (errorMsg != '')
				{
					alert(errorMsg);
					document.getElementById("spanClaimResponse").innerHTML = " Sorry but points accrual failed. Please try again later. ";
					document.getElementById("trAccrualSearchButtons").style["display"] = "";
				}
				else
				{
					document.getElementById("spanClaimResponse").innerHTML = response;
					if (response == "Accrual has been successfully transferred.")
					{	
						alert("Accrual has been successfully transferred.");	
						location.href = location.href;			
					}
				}
			}
		}
	};
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=cofirmaccrualclaim';
	url += '&elmid=' + encMemberId;
	url += '&receiptnumber=' + document.getElementById('txtReceiptNumber').value;
	url += '&departuredate=' + document.getElementById('txtDepartureDate').value;
	
	xhr.open('GET', url,  true);
	xhr.send(null);
	
}

function accrueConfirmedPoints(encMemberId, placeofaccrual, target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'An error occured. Please try again later.';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText.split(",");
				if (response[0] == ErrorCode_Success) errorMsg = '';
				if (errorMsg != '')
				{
					if (response[1] != "")
						errorMsg = response[1];
					
					if (response[1].indexOf('Accrual failed as accrual block period applies.') != -1)
						errorMsg = "Sorry but you cannot accrue points now as points accrual is blocked.";
					alert(errorMsg);
					//document.getElementById("spanClaimResponse").innerHTML = " Sorry but points accrual failed. Please try again later. ";
					document.getElementById("spanClaimResponse").innerHTML = errorMsg;
					attempCounter++;
				}
				else
				{
					document.getElementById("spanClaimResponse").innerHTML = response[1];
					attempCounter=0;
				}
				
				document.getElementById("trAccrualSearchButtons").style["display"] = "";
				
				if (attempCounter > 3 && errorMsg!='')
				{
					alert('Sorry but your account has been blocked.');
					location.href = location.href;
				}
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=accrueconfirmedpoints';
	url += '&elmid=' + encMemberId;
	url += '&palceofaccrual=' + placeofaccrual;
	url += '&receiptnumber=' + document.getElementById('txtReceiptNumber').value;
	url += '&departuredate=' + document.getElementById('txtDepartureDate').value;
	
	//var newWin = window.open(url);
	//newWin.focus();
	
	xhr.open('GET', url,  true);
	xhr.send(null);
}

function performNewCardRequest(encMemberId, target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'An error occured. Please try again later.';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText;
				if (response == ErrorCode_Success) errorMsg = '';

				if (errorMsg != '')
				{
					//alert(errorMsg);
					document.getElementById("spnNewRequestResponse").innerHTML = " Sorry but new card request failed. Please try again later. ";
				}
				else
				{
					document.getElementById("spnNewRequestResponse").innerHTML = "Request is sent. Thank you.";
				}
			}
		}
	};
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=newcard';
	url += '&elmid=' + encMemberId;
	if (document.getElementById('txtComment').value!="")
		url += '&comment=' + document.getElementById('txtComment').value;
	
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open('GET', url,  true);
	xhr.send(null);
}

function performLostCardRequest(encMemberId, target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'An error occured. Please try again later.';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText;
				if (response == ErrorCode_Success) errorMsg = '';

				if (errorMsg != '')
				{
					//alert(errorMsg);
					document.getElementById("spnLostRequestResponse").innerHTML = " Sorry but new card request failed. Please try again later. ";
				}
				else
				{
					document.getElementById("spnLostRequestResponse").innerHTML = "Request is sent. Thank you.";
				}
			}
		}
	};
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=lostcard';
	url += '&elmid=' + encMemberId;
	if (document.getElementById('txtLostComment').value!="")
		url += '&comment=' + document.getElementById('txtLostComment').value;
	
	xhr.open('GET', url,  true);
	xhr.send(null);
	//var nw = window.open(url);
	//nw.focus();
}

//------------- Profile --------------\\
function performAddressModification(encMemberId, target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'An error occured. Please try again later.';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText;
				if (response == ErrorCode_Success) errorMsg = '';

				if (errorMsg != '')
				{
					alert(errorMsg);
					document.getElementById("spnAddressModificationResponse").innerHTML= "Process failed. Please try again later.";
				}
				else
				{
					document.getElementById("spnAddressModificationResponse").innerHTML= "Process complete. Thank you.";
				}
			}
		}
	};
	
	var at = "";
	var addl1 = "";
	var addl2 = "";
	var suburb = "";
	var region = "";
	var country = "";
	var postcode = "";
	
	if (document.getElementById("trPrimary").style["display"] == "")
	{
		at = 1;
		addl1 = document.getElementById("txtPrimaryAddressline1").value;
		addl2 = document.getElementById("txtPrimaryAddressline2").value;
		suburb = document.getElementById("txtPrimarySuburb").value;
		region = document.getElementById("txtPrimaryRegion").value;
		country = document.getElementById("sltPrimaryCountry").options[document.getElementById("sltPrimaryCountry").selectedIndex].value;
		postcode = document.getElementById("txtPrimaryPostcode").value;
		document.getElementById("trPrimary").style["display"] = "none";
	}
	else if (document.getElementById("trDelivery").style["display"] == "")
	{
		at = 2;
		addl1 = document.getElementById("txtDeliveryAddressline1").value;
		addl2 = document.getElementById("txtDeliveryAddressline2").value;
		suburb = document.getElementById("txtDeliverySuburb").value;
		region = document.getElementById("txtDeliveryRegion").value;
		country = document.getElementById("sltDeliveryCountry").options[document.getElementById("sltDeliveryCountry").selectedIndex].value;
		postcode = document.getElementById("txtDeliveryPostcode").value;
		document.getElementById("trDelivery").style["display"] = "none";
	}
	else 
	{
		at = 3;
		addl1 = document.getElementById("txtBillingAddressline1").value;
		addl2 = document.getElementById("txtBillingAddressline2").value;
		suburb = document.getElementById("txtBillingSuburb").value;
		region = document.getElementById("txtBillingRegion").value;
		country = document.getElementById("sltBillingCountry").options[document.getElementById("sltBillingCountry").selectedIndex].value;
		postcode = document.getElementById("txtBillingPostcode").value;
		document.getElementById("trBilling").style["display"] = "none";
	}
	
	document.getElementById("trAddressModificationResult").style["display"] = "";
	document.getElementById("spnAddressModificationResponse").innerHTML= "Please wait...";
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=updateaddress';
	url += '&elmid='+ encMemberId;
	url += '&at='+ at;
	url += '&addl1='+ addl1;
	url += '&addl2='+ addl2;
	url += '&suburb='+ suburb;
	url += '&region='+ region;
	url += '&country='+ country;
	url += '&postcode='+ postcode;
			
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open('GET', url,  true);
	xhr.send(null);
	
}

function performPasswordChangeOver(encMemberId, target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'An error occured. Please try again later.';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText;
				if (response == ErrorCode_Success) errorMsg = '';

				if (errorMsg != '')
				{
					alert(errorMsg);
					document.getElementById('spnPasswordChangeResponse').innerHTML="Process failed. Please try again later.";
				}
				else
				{
					document.getElementById('spnPasswordChangeResponse').innerHTML="Process complete. Thank you.";
				}
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=updatepassword';
	url += '&elmid='+ encMemberId;
	url += '&pwrd='+ document.getElementById('txtNewPassword').value;
			
	xhr.open('GET', url,  true);
	xhr.send(null);
}

// ------------ Signup ------------\\
function dolcRetrievePassword(clientid,target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'Waiting for server response...';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText.split(',');
				if (response[0] == ErrorCode_Success) errorMsg = '';

				if (errorMsg != '')
				{
					alert(response[1]);
					document.getElementById('spnlcRetrieveResponse').innerHTML = response[1];
				}
				else
				{
					document.getElementById('spnlcRetrieveResponse').innerHTML = response[1];
				}
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=retrievepassword';
	url += '&email='+ document.getElementById(clientid+'txtlcRetrieveForEmail').value;
	
	xhr.open('GET', url,  true);
	xhr.send(null);
	//var newWin = window.open(url);
	//newWin.focus();
}

function doRetrievePassword(target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'Waiting for server response...';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText.split(',');
				if (response[0] == ErrorCode_Success) errorMsg = '';

				if (errorMsg != '')
				{
					alert(response[1]);
					document.getElementById('spnRetrieveResponse').innerHTML=response[1];
				}
				else
				{
					document.getElementById('spnRetrieveResponse').innerHTML=response[1];
				}
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=retrievepassword';
	url += '&email='+ document.getElementById('txtRetrieveForEmail').value;
	
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open('GET', url,  true);
	xhr.send(null);
}
//------------- Reservation ----------------------\\
function doReservationRetrievePassword(target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'Waiting for server response...';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText.split(',');
				if (response[0] == ErrorCode_Success) errorMsg = '';

				if (errorMsg != '')
				{
					alert(response[1]);
					document.getElementById('spnReservationRetrieveResponse').innerHTML = response[1];
				}
				else
				{
					document.getElementById('spnReservationRetrieveResponse').innerHTML=response[1];
				}
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=retrievepassword';
	url += '&email='+ document.getElementById('txtReservationRetrieveForEmail').value;
	
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open('GET', url,  true);
	xhr.send(null);
}
function doRedirectToSamePage()
{
	var locationStr = window.location;
	if (locationStr.toString().indexOf('?') != -1)
		window.location = locationStr.toString().substring(0, locationStr.toString().indexOf('?')) ;
	else
		window.location = locationStr.toString();
}
function HasUserBeenLogged(paramMN, paramSN, paramPW, target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'Waiting for server response...';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText.split('|');
				if (response[0] == ErrorCode_Success) errorMsg = '';

				if (errorMsg != '')
				{
					//var msg1  = response[1].toString();
					//alert("NR: " + msg1 );
					//var msg2 = msg1.replace(/\\n/g,"\n");
					//alert("WR:" + msg2 );
					alert(response[1].toString().replace(/\\n/g,"\n"));
					//alert("BA: " + document.getElementById(resultFieldId).value);
					//document.getElementById(resultFieldId).value = "";
					//alert("BA: " + resultField.value);
					//resultField.value = "";
					//alert("AA: " + resultField.value);
				}
				else
				{
					alert(response[1].toString().replace(/\\n/g,"\n"));
					//alert("BA: " + resultField.value);
					//document.getElementById(resultFieldId).value = "OK";
					//resultField.value = "OK";
					//alert("AA: " + resultField.value);
					doRedirectToSamePage();
					//doLocationUpdate();
					return false;
				}
			}
		}
	};
	
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=reservationlogin';
	url += '&reservationmembernumber=' + paramMN;// + document.getElementById('txtReservationRetrieveForEmail').value;
	url += '&reservationsurname=' + paramSN;
	url += '&reservationpassword=' + paramPW;
	
	//var newWin = window.open(url);
	//newWin.focus();
	xhr.open('GET', url,  true);
	xhr.send(null);
}

//------------- Program Specification -------------\\
function deleteSpecification(idx,value, target)
{
	var xhr;
	var xhr; 
	try { xhr = new XMLHttpRequest(); }                 
	catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	xhr.onreadystatechange  = function()
	{
		var errorMsg = 'An error occured. Please try again later.';
		
		if(xhr.readyState  == 4)
		{
			if(xhr.status  == 200)
			{
				var response = xhr.responseText;
				if (response == ErrorCode_Success) errorMsg = '';

				if (errorMsg != '')
				{	
					//alert(errorMsg);
					//var messageDivId = 'rptProgramSpecifications__ctl' + idx + 'dvMessage' + value;
					var messageDivId = 'dvMessage' + value;
					document.getElementById(messageDivId).style.display = 'none';
					document.getElementById(messageDivId).innerHTML = '';
					//var buttonDivId = 'rptProgramSpecifications__ctl' + idx + 'dvButton' + value;
					var buttonDivId = 'dvButton' + value;
					document.getElementById(messageDivId).style.display = '';
				}
				else
				{
					alert("Deletion complete.");
					document.getElementById(value).style.display='none';
					location.href =location.href;
				}
			}
		}
	}; 

	//var messageDivId = 'rptProgramSpecifications__ctl' + idx + 'dvMessage' + value;
	var messageDivId = 'dvMessage' + value;
	document.getElementById(messageDivId).style.display = '';
	document.getElementById(messageDivId).innerHTML = 'Please wait...';
	
	//var buttonDivId = 'rptProgramSpecifications__ctl' + idx + 'dvButton' + value;
	var buttonDivId = 'dvButton' + value;
	document.getElementById(messageDivId).style.display = 'none';
					
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=removespecification';
	url += '&pgrmprdid='+ value;
	//var newWindow = window.open(url);		
	//newWindow.focus();
	xhr.open('GET', url,  true);
	xhr.send(null);
}

// --------------- History -----------------------

function printHistoryContent(encMemberId, queryText, target)
{
	
	if (encMemberId == null)
	{
		alert("Please refresh your page and try again.");
		return;
	}
	if (encMemberId == "")
	{
		alert("Please refresh your page and try again.");
		return;
	}
	//var xhr;
	//var xhr; 
	//try { xhr = new XMLHttpRequest(); }                 
	//catch(e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } 
	
	//xhr.onreadystatechange  = function()
	//{
	//	var errorMsg = 'An error occured. Please try again later.';
	//	
	//	if(xhr.readyState  == 4)
	//	{
	//		if(xhr.status  == 200)
	//		{
	//			var response = xhr.responseText;
	//			if (response == ErrorCode_Success) errorMsg = '';
	//
	//			if (errorMsg != '')
	//			{
	//				alert(errorMsg);
	//			}
	//		}
	//	}
	//};
	var url = target + 'scripts/java/ajax_script_runner.aspx';
	url += '?ttp=printhistory';
	url += '&elmid=' + encMemberId;
	if (queryText!="")
	url += '&' + queryText;
	var printWin = window.open(url,'History', 'addressbar=no,toolbar=no,resizable=yes, scrollbars=yes');
	printWin.focus(); 
}

