// JavaScript Document
function dropLookupState(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){
		var xmlDoc=xmlhttp.responseXML;
		
		var errorField = xmlDoc.documentElement.getElementsByTagName('errorField');
		var errorFlag = errorField[0].getAttribute("errorFlag");
		var errorMessage = errorField[0].getAttribute("errorMessage");
		
		var agentField = xmlDoc.documentElement.getElementsByTagName('agent');
		var siteName = agentField[0].getAttribute("siteName");
		
		if(errorFlag == 0){
			
			var output = "";
						output += "<span class=\"bannerHeading\"><img src=\"../img/tick.gif\" alt=\"\"/>Your selected drop-off store:</span>";
						output += "<p class=\"storeName\">" + agentField[0].getAttribute("siteName") + "&nbsp;<a href=\"#\" class=\"editLink\" onclick=\"changeDropPoint(); return false;\">Change Selection</a><p>";
						output += "<p class=\"distance\">(distance from " + getObj('dropPoint').value + " : " + agentField[0].getAttribute("miles") + " miles)</p>";
					output += "<div class=\"storeAddress\">";
						output += agentField[0].getAttribute("address") + ", " + agentField[0].getAttribute("city") + ", " + agentField[0].getAttribute("county") + " " + agentField[0].getAttribute("postcode") + "<p class=\"small\">Remember, you can drop your parcel off at ANY Collect+ store.</p>" ;
					output += "</div>";
			
			getObj('dropResultDiv').innerHTML = output;
			getObjStyle('dropPointDiv').display = "none";
			getObjStyle('dropTableDiv').display = "none";
			getObjStyle('dropMapWrapper').display = "none";
		} else {
			getObj('dropPointDiv').innerHTML = "<span class=\"errorTxt\">" + errorMessage + "</span>";
		}
		getObj('dropPointDiv').scrollIntoView(true);
		
	}
}

function collectLookupState(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){
		var xmlDoc=xmlhttp.responseXML;

		var errorField = xmlDoc.documentElement.getElementsByTagName('errorField');
		var errorFlag = errorField[0].getAttribute("errorFlag");
		var errorMessage = errorField[0].getAttribute("errorMessage");
		
		var agentField = xmlDoc.documentElement.getElementsByTagName('agent');
		var siteName = agentField[0].getAttribute("siteName");
		
		if(errorFlag == 0){

			var output = "";
						output += "<span class=\"bannerHeading\"><img src=\"../img/tick.gif\" alt=\"\"/>Your selected Collect+ store for Collection:</span>";
						output += "<p class=\"storeName\">" + agentField[0].getAttribute("siteName") + "&nbsp;<a href=\"#\" class=\"editLink\" onclick=\"changeCollectPoint(); return false;\">Change Selection</a>";
						output += "<p class=\"distance\">(distance from " + getObj('collectPoint').value + " : " + agentField[0].getAttribute("miles") + " miles)</p>";
					output += "<div class=\"storeAddress\">";
						output += agentField[0].getAttribute("address") + ", " + agentField[0].getAttribute("city") + ", " + agentField[0].getAttribute("county") + " " + agentField[0].getAttribute("postcode") + "" ;
					output += "</div>";
				output += "<div class=\"clear\"></div><p><a href=\"https://www.collectplus.co.uk/send/book.php\"><img src=\"images/continue.gif\" alt=\"Continue\"></a></p>";

			getObj('collectResultDiv').innerHTML = output;
			getObjStyle('collectPointDiv').display = "none";
			getObjStyle('collectTableDiv').display = "none";
			getObjStyle('collectMapWrapper').display = "none";
			getObjStyle('senderContactWrapper').display = "block";
		} else {
			getObj('collectPointDiv').innerHTML = "<span class=\"errorTxt\">" + errorMessage + "</span>";
		}
		getObj('collectPointDiv').scrollIntoView(true);
		
	}
}

function contactCallback(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){
		
		var xmlDoc=xmlhttp.responseXML;

		var errorField = xmlDoc.getElementsByTagName("errorField");
		var errorFlag = errorField[0].getAttribute("errorFlag");
		var errorMessage = errorField[0].getAttribute("errorMessage");
		
		var senderField = xmlDoc.getElementsByTagName("senderField");
	
		
		if(errorFlag == 0){
			
			var output = "";
				output += "<span class=\"bannerHeading\"><img src=\"../img/tick.gif\" alt=\"\"/>Your Details<a href=\"#\" class=\"editLink\" onclick=\"changeContact(); return false;\">Edit</a></span>";
			  output += "<div class=\"indent\">";
				output += "<p>Name: <strong>"+senderField[0].getAttribute("name")+"</strong></p>";
				output += "<p>Email Address: <strong>"+senderField[0].getAttribute("email")+"</strong>&nbsp;";
				if(senderField[0].getAttribute("pref") == "email"){
					output += "<!--a href=\"#\" class=\"info\"><img src=\"images/email.png\" border=\"0\" title=\"We will send you email updates for this parcel\"/><-span>This is your preferred method of contact</span></a-->";
				}
				output+= "</p>";
				output += "<!--p>Reference: <strong>"+senderField[0].getAttribute("ref")+"</strong></p-->";
				output += "<!--p>Company: <strong>"+senderField[0].getAttribute("company")+"</strong></p-->";
				output += "<p>Mobile Number: <strong>"+senderField[0].getAttribute("mobile")+"</strong>&nbsp;";
				if(senderField[0].getAttribute("pref") == "mobile"){
					output += "<!--a href=\"#\" class=\"info\"><img src=\"images/phone.png\" border=\"0\" title=\"We will send you SMS updates for this parcel\"/><span>This is your preferred method of contact</span></a>";
				}
				output+= "</p>";
				output += "<p>Parcel Weight: <strong>"+senderField[0].getAttribute("weight")+"</strong></p>";
			  output += "</div>";

			
			getObj('senderContactResultDiv').innerHTML = output;
			getObjStyle('parcelWeight').display = "none";
			getObjStyle('senderContactDiv').display = "none";
			getObjStyle('billingAddress').display = "block";
		} else {
			getObj('senderContactResultDiv').innerHTML = "<span class=\"errorTxt\">" + errorMessage + "</span>";
		}
		getObj('parcelDetails').scrollIntoView(true);
		
	}
}

function receiverCallback(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){
		var xmlDoc=xmlhttp.responseXML;
		
		var errorField = xmlDoc.getElementsByTagName("errorField");
		var errorFlag = errorField[0].getAttribute("errorFlag");
		var errorMessage = errorField[0].getAttribute("errorMessage");
		
		var receiverField = xmlDoc.getElementsByTagName("receiverField");
		
		if(errorFlag == 0){
			
			var output = "";
				output += "<span class=\"bannerHeading\"><img src=\"../img/tick.gif\" alt=\"\"/>Recipient Details <a href=\"#\" class=\"editLink\" onclick=\"changeRecipient(); return false;\">Edit</a></span>";
			  output += "<div class=\"indent\">";
				output += "<p>Name: <strong>"+receiverField[0].getAttribute("name")+"</strong></p>";
				output += "<p>Email Address: <strong>"+receiverField[0].getAttribute("email")+ "</strong>&nbsp;";
				if(receiverField[0].getAttribute("pref") == "email"){
					output += "<!--a href=\"#\" class=\"info\"--><img src=\"images/email.png\" border=\"0\" title=\"We will send the recipient email updates for this parcel\"/><!--span>This is their preferred method of contact</span></a-->";
				}
				output+= "</p>";
				output += "<p>Company: <strong>"+receiverField[0].getAttribute("company")+"</strong></p>";
				output += "<p>Mobile Number: <strong>"+receiverField[0].getAttribute("mobile")+"</strong>&nbsp;";
				if(receiverField[0].getAttribute("pref") == "mobile"){
					output += "<!--a href=\"#\" class=\"info\"--><img src=\"images/phone.png\" border=\"0\" title=\"We will send the recipient SMS updates for this parcel\"/><!--span>This is their preferred method of contact</span></a-->";
				}
				output+= "</p>";
				output += "</div>";
				
			getObj('receiverContactResultDiv').innerHTML = output;
			getObjStyle('receiverContactDiv').display = "none";
			getObjStyle('senderInfo').display = "block";
			getObjStyle('senderContactWrapper').display = "block";
			getObjStyle('destinationStore').display = "block";
			getObjStyle('stripe').display = "block";
			getObjStyle('parcelWeight').display = "none";

		} else {
			getObj('receiverContactResultDiv').innerHTML = "<span class=\"errorTxt\">" + errorMessage + "</span>";
		}
		getObj('parcelDetails').scrollIntoView(true);
		
	}
}

function senderGetAdd(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){

		var LINE1="",LINE2="",LINE3="",TOWN="",COUNTY="",POSTCODE="";
		
		var XMLtest = xmlhttp.responseText;
		if (XMLtest.indexOf("<line1>")>=0){
			
			// read the message from the server
			var xmlResponse = xmlhttp.responseXML;
		
			// obtain the XML's document element
			xmlRoot = xmlResponse.documentElement;
		  
			if (xmlRoot.getElementsByTagName("line1").item(0).firstChild) 
				{LINE1 = xmlRoot.getElementsByTagName("line1").item(0).firstChild.data;}
		
			if (xmlRoot.getElementsByTagName("line2").item(0).firstChild) 
				{LINE2 = xmlRoot.getElementsByTagName("line2").item(0).firstChild.data;}
		
			if (xmlRoot.getElementsByTagName("line3").item(0).firstChild) 
				{LINE3 = xmlRoot.getElementsByTagName("line3").item(0).firstChild.data;}
		
			  if (xmlRoot.getElementsByTagName("town").item(0).firstChild) 	
				{TOWN = xmlRoot.getElementsByTagName("town").item(0).firstChild.data;}
		
			  if (xmlRoot.getElementsByTagName("county").item(0).firstChild) 
				{COUNTY = xmlRoot.getElementsByTagName("county").item(0).firstChild.data;}
		
			  if (xmlRoot.getElementsByTagName("postcode").item(0).firstChild) 
				{POSTCODE = xmlRoot.getElementsByTagName("postcode").item(0).firstChild.data;}
				
			getObj('sender_building').value = getObj('sender_building_lookup').value;
			getObj('sender_postcode').value = POSTCODE;
			getObj('sender_line1').value = LINE1;
			getObj('sender_line2').value = LINE2;
			getObj('sender_line3').value = LINE3;
			
			if(TOWN == ""){
				getObj('sender_town').value = COUNTY;
			} else {
				getObj('sender_town').value = TOWN;
				getObj('sender_county').value = COUNTY;
			}
			
			getObjStyle('sendersPafResultDiv').display = "block";
			getObjStyle('sendersPafDiv').display = "none";

		} else {
			getObj('senderAddressResult').innerHTML = "<span class=\"errorTxt\">Please enter a valid postcode.</span>";  
		}
		getObj('parcelDetails').scrollIntoView(true);
		
	}
}
function senderAddCallback(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){
		var xmlDoc=xmlhttp.responseXML;
		
		var errorField = xmlDoc.documentElement.getElementsByTagName('errorField');
		var errorFlag = errorField[0].getAttribute("errorFlag");
		var errorMessage = errorField[0].getAttribute("errorMessage");
		
		var addressField = xmlDoc.documentElement.getElementsByTagName('addressField');
		
		var addressOutput = addressField[0].getAttribute("building") + " ";

		if(addressField[0].getAttribute("line1") != ""){
			addressOutput += addressField[0].getAttribute("line1") + ", ";
		}
		if(addressField[0].getAttribute("line2") != ""){
			addressOutput += addressField[0].getAttribute("line2") + ", ";
		}
		if(addressField[0].getAttribute("line3") != ""){
			addressOutput += addressField[0].getAttribute("line3") + ", ";
		}
		if(addressField[0].getAttribute("town") != ""){
			addressOutput += addressField[0].getAttribute("town") + ", ";
		}
		if(addressField[0].getAttribute("county") != ""){
			addressOutput += addressField[0].getAttribute("county") + ", ";
		}
		if(addressField[0].getAttribute("postcode") != ""){
			addressOutput += addressField[0].getAttribute("postcode") + ".";
		}
		
		if(errorFlag == 0){
			
			var output = "";
				output += "";
				output += "";
					output += "<span class=\"bannerHeading\"><img src=\"../img/tick.gif\" alt=\"\"/>Your Address <a href=\"#\" class=\"editLink\" onclick=\"changeSenderAdd(); return false;\">Edit</a></span>";
					output += "";
				output += "";
				output += "<div class=\"indent\">";
					output += ""+addressOutput +"";
				output += "</div>";
			output += "";
				
			getObj('senderAddressResult').innerHTML = output;
			getObjStyle('sendersPafResultDiv').display = "none";
			getObjStyle('billingAddress').display = "block";

		} else {
			getObj('senderAddressResult').innerHTML = "<span class=\"errorTxt\">" + errorMessage + "</span>";
		}
		getObj('parcelDetails').scrollIntoView(true);
		
	}
}
function billingGetAdd(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){

		var LINE1="",LINE2="",LINE3="",TOWN="",COUNTY="",POSTCODE="";
		
		var XMLtest = xmlhttp.responseText;
		if (XMLtest.indexOf("<line1>")>=0){
			
			// read the message from the server
			var xmlResponse = xmlhttp.responseXML;
		
			// obtain the XML's document element
			xmlRoot = xmlResponse.documentElement;

			if (xmlRoot.getElementsByTagName("line1").item(0).firstChild) 
				{LINE1 = xmlRoot.getElementsByTagName("line1").item(0).firstChild.data;}
		
			if (xmlRoot.getElementsByTagName("line2").item(0).firstChild) 
				{LINE2 = xmlRoot.getElementsByTagName("line2").item(0).firstChild.data;}
		
			if (xmlRoot.getElementsByTagName("line3").item(0).firstChild) 
				{LINE3 = xmlRoot.getElementsByTagName("line3").item(0).firstChild.data;}
		
			  if (xmlRoot.getElementsByTagName("town").item(0).firstChild) 	
				{TOWN = xmlRoot.getElementsByTagName("town").item(0).firstChild.data;}
		
			  if (xmlRoot.getElementsByTagName("county").item(0).firstChild) 
				{COUNTY = xmlRoot.getElementsByTagName("county").item(0).firstChild.data;}
		
			  if (xmlRoot.getElementsByTagName("postcode").item(0).firstChild) 
				{POSTCODE = xmlRoot.getElementsByTagName("postcode").item(0).firstChild.data;}
				
			getObj('billing_building').value = getObj('billing_building_lookup').value;
			getObj('billing_postcode').value = POSTCODE;
			getObj('billing_line1').value = LINE1;
			getObj('billing_line2').value = LINE2;
			getObj('billing_line3').value = LINE3;

			if(TOWN == ""){
				getObj('billing_town').value = COUNTY;
			} else {
				getObj('billing_town').value = TOWN;
				getObj('billing_county').value = COUNTY;
			}
			
			getObjStyle('billingPafResultDiv').display = "block";
			getObjStyle('billingPafDiv').display = "none";

		} else {
			getObj('billingAddressResult').innerHTML = "<span class=\"errorTxt\">Please enter a valid postcode.</span>";  
		}
		getObj('parcelDetails').scrollIntoView(true);
		
	}
}
function billingAddCallback(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){
		var xmlDoc=xmlhttp.responseXML;
		
		var errorField = xmlDoc.documentElement.getElementsByTagName('errorField');
		var errorFlag = errorField[0].getAttribute("errorFlag");
		var errorMessage = errorField[0].getAttribute("errorMessage");
		
		var addressField = xmlDoc.documentElement.getElementsByTagName('addressField');
		
		var addressOutput = addressField[0].getAttribute("building") + " ";

		if(addressField[0].getAttribute("line1") != ""){
			addressOutput += addressField[0].getAttribute("line1") + ", ";
		}
		if(addressField[0].getAttribute("line2") != ""){
			addressOutput += addressField[0].getAttribute("line2") + ", ";
		}
		if(addressField[0].getAttribute("line3") != ""){
			addressOutput += addressField[0].getAttribute("line3") + ", ";
		}
		if(addressField[0].getAttribute("town") != ""){
			addressOutput += addressField[0].getAttribute("town") + ", ";
		}
		if(addressField[0].getAttribute("county") != ""){
			addressOutput += addressField[0].getAttribute("county") + ", ";
		}
		if(addressField[0].getAttribute("postcode") != ""){
			addressOutput += addressField[0].getAttribute("postcode") + ".";
		}
		
		if(errorFlag == 0){
			
			var output = "";
				output += "";
				output += "";
					output += "<span class=\"bannerHeading\"><img src=\"../img/tick.gif\" alt=\"\"/>Billing Address <a href=\"#\" class=\"editLink\" onclick=\"changeBillingAdd(); return false;\">Edit</a></span>";
					output += "";
				output += "";
				output += "<div class=\"indent\">";
					output += ""+addressOutput +"";
				output += "</div>";
			output += "";
				
			getObj('billingAddressResult').innerHTML = output;
			getObjStyle('billingPafResultDiv').display = "none";
			getObjStyle('confirmDivWrapper').display = "block";

		} else {
			getObj('billingAddressResult').innerHTML = "<span class=\"errorTxt\">" + errorMessage + "</span>";
		}
		getObj('parcelDetails').scrollIntoView(true);
		
	}
}

function paymentCallback(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){
		var xmlDoc=xmlhttp.responseXML;
		
		var errorField = xmlDoc.documentElement.getElementsByTagName('errorField');
		var errorFlag = errorField[0].getAttribute("errorFlag");
		var errorMessage = errorField[0].getAttribute("errorMessage");
		
		if(errorFlag == 0){
			
			var formFields = xmlDoc.documentElement.getElementsByTagName('formFields');
			var billingFields = xmlDoc.documentElement.getElementsByTagName('billingFields');
			var shipFields = xmlDoc.documentElement.getElementsByTagName('shipFields');
			
			getObj('merchant').value = formFields[0].getAttribute("merchant");
			getObj('trans_id').value = formFields[0].getAttribute("trans_id");
			getObj('order').value = formFields[0].getAttribute("order");
			getObj('amount').value = formFields[0].getAttribute("amount");

			getObj('digest').value = formFields[0].getAttribute("digest");

			getObj('callback').value = formFields[0].getAttribute("callback");
			
			getObj('bill_addr_1').value = billingFields[0].getAttribute("bill_addr_1");
			getObj('bill_addr_2').value = billingFields[0].getAttribute("bill_addr_2");
			getObj('bill_city').value = billingFields[0].getAttribute("bill_city");
			getObj('bill_post_code').value = billingFields[0].getAttribute("bill_post_code");
			getObj('bill_state').value = billingFields[0].getAttribute("bill_state");
			getObj('bill_email').value = billingFields[0].getAttribute("bill_email");
			
			getObj('ship_addr_1').value = shipFields[0].getAttribute("ship_addr_1");
			getObj('ship_addr_2').value = shipFields[0].getAttribute("ship_addr_2");
			getObj('ship_city').value = shipFields[0].getAttribute("ship_city");
			getObj('ship_company').value = shipFields[0].getAttribute("ship_company");
			getObj('ship_name').value = shipFields[0].getAttribute("ship_name");
			getObj('ship_post_code').value = shipFields[0].getAttribute("ship_post_code");
			getObj('ship_state').value = shipFields[0].getAttribute("ship_state");
			getObj('ship_tel').value = shipFields[0].getAttribute("ship_tel");
			//getObj('ship_email').value = shipFields[0].getAttribute("ship_email");
			
			var form=getObj('paymentForm');
			form.action = "https://www.secpay.com/java-bin/ValCard";
			form.submit();

		} else {
			getObjStyle('paymentErrorDiv').display = "block";
			getObj('paymentErrorDiv').innerHTML = "<span class=\"errorTxt\">" + errorMessage + "</span>";
		}
		
	}
}



function paidReturnCallback(){
	if (xmlhttp.readyState==4 || xmlhttp.readyState=="complete"){
		var xmlDoc=xmlhttp.responseXML;
		
		var errorField = xmlDoc.documentElement.getElementsByTagName('errorField');
		var errorFlag = errorField[0].getAttribute("errorFlag");
		var errorMessage = errorField[0].getAttribute("errorMessage");
		
		if(errorFlag == 0){
			
			var formFields = xmlDoc.documentElement.getElementsByTagName('formFields');
			var billingFields = xmlDoc.documentElement.getElementsByTagName('billingFields');
			var shipFields = xmlDoc.documentElement.getElementsByTagName('shipFields');
			
			getObj('merchant').value = formFields[0].getAttribute("merchant");
			getObj('trans_id').value = formFields[0].getAttribute("trans_id");
			getObj('order').value = formFields[0].getAttribute("order");
			getObj('amount').value = formFields[0].getAttribute("amount");

			getObj('digest').value = formFields[0].getAttribute("digest");

			//getObj('callback').value = formFields[0].getAttribute("callback");
			
			getObj('bill_addr_1').value = billingFields[0].getAttribute("bill_addr_1");
			getObj('bill_addr_2').value = billingFields[0].getAttribute("bill_addr_2");
			getObj('bill_city').value = billingFields[0].getAttribute("bill_city");
			getObj('bill_post_code').value = billingFields[0].getAttribute("bill_post_code");
			getObj('bill_state').value = billingFields[0].getAttribute("bill_state");
			getObj('bill_email').value = billingFields[0].getAttribute("bill_email");
			
			getObj('ship_addr_1').value = shipFields[0].getAttribute("ship_addr_1");
			getObj('ship_addr_2').value = shipFields[0].getAttribute("ship_addr_2");
			getObj('ship_city').value = shipFields[0].getAttribute("ship_city");
			getObj('ship_company').value = shipFields[0].getAttribute("ship_company");
			getObj('ship_name').value = shipFields[0].getAttribute("ship_name");
			getObj('ship_post_code').value = shipFields[0].getAttribute("ship_post_code");
			getObj('ship_state').value = shipFields[0].getAttribute("ship_state");
			getObj('ship_tel').value = shipFields[0].getAttribute("ship_tel");
			//getObj('ship_email').value = shipFields[0].getAttribute("ship_email");
			
			var form=getObj('paidReturnForm');
			form.action = "https://www.secpay.com/java-bin/ValCard";
			form.submit();

		} else {
			getObjStyle('paymentErrorDiv').display = "block";
			getObj('paymentErrorDiv').innerHTML = "<span class=\"errorTxt\">" + errorMessage + "</span>";
		}
		
	}
}
