
		//NOTE::add atx(hidden variables),aty(hidden variables),searchResultArea(div tag) in the form where this is included.
		//Global variable for the method called
		var method = "";
		//var licensekey =  <%="'" & Application("IsharemapsKey") & "'" %>;
		//Create a new php serializer variable
		var php = new PHP_Serializer();
		var bSuccess
		bSuccess = true;
		//Display the serialized results
		JSserializerOnLoad = function(result)
		{
			switch (method)
			{
				case "searchFormattedAddress":
					if ((result instanceof Array) == false)
					{
						alert("It appears that your licence key is invalid");
					}
					else
					{
	  					if ((result.length == 0) || (result[0]['EntityName'] == ""))
						{
							document.getElementById("atx").value="";
							document.getElementById("aty").value="";
							searchResultArea.innerHTML = "<center style=\"color: red\">POSTCODE Not Found</center>";
							bSuccess = false;
							return false;
						}
						//alert('Ia m here1');
						var sMessage = "";
						//Show all the arrays
						for (i=0; i<result.length; ++i)
						{
							// Exit if empty result as remainder will also be empty
							if(result[i]['EntityName'] == "")
							{
								bSuccess = false;
								return false;								
							}
							sMessage = "";
							//sMessage += 'Entity Name: ' + result[i]['EntityName'] + '\n<br>';
							//sMessage += 'x: ' + result[i]['x'] + '\n<br>';
							//sMessage += 'y: ' + result[i]['y'] + '\n<br>';
							sMessage = 'PostCode: '+ result[i]['EntityName'] + ' X: ' + result[i]['x'] + ' Y: ' + result[i]['y'];
							document.getElementById("atx").value= result[i]['x']
							document.getElementById("aty").value= result[i]['y']							
							// display search results
							sMessage = 'Post code validated';
							searchResultArea.innerHTML = "<div class=\'searchResult\'>" + sMessage + "</div>";
							sMessage = "";
							bSuccess = true;
							return true;
						}					
					}
					break;
			}
			
		}

		//Test function to search for an array of formatted addresses
		function test_searchFormattedAddresses()
		{
			
			// Prompt for user to enter address if none entered
			if( document.getElementById("postcode").value == "" )
			{
					alert("Please enter a value before searching.");
					return false;
			}
			else
			{
			test = document.getElementById("postcode").value; size = test.length
			test = test.toUpperCase(); //Change to uppercase
			while (test.slice(0,1) == " ") //Strip leading spaces
			 {	test = test.substr(1,size-1);size = test.length
			 }
			while(test.slice(size-1,size)== " ") //Strip trailing spaces
			{	test = test.substr(0,size-1);size = test.length
			}
			document.getElementById("postcode").value = test; //write back to form field
			if (size < 6 || size > 8)  //Code length rule
			{ 
				alert(test + " is not a valid postcode - wrong length");
				document.getElementById("postcode").focus();
				return false;
			}
			if (!(isNaN(test.charAt(0)))) //leftmost character must be alpha character rule
			{ 
				alert(test + " is not a valid postcode - cannot start with a number");
				document.getElementById("postcode").focus();
				return false;
			}
		   if (isNaN(test.charAt(size-3)))  //first character of inward code must be numeric rule
		   {
				alert(test + " is not a valid postcode - alpha character in wrong position");
				document.getElementById("postcode").focus();
				return false;
			}
			if (!(isNaN(test.charAt(size-2)))) //second character of inward code must be alpha rule
			{ 
				alert(test + " is not a valid postcode - number in wrong position");
				document.getElementById("postcode").focus();
				return false;
			}
		  if (!(isNaN(test.charAt(size-1)))) //third character of inward code must be alpha rule
			{ 
				alert(test + " is not a valid postcode - number in wrong position");
				document.getElementById("postcode").focus();
				return false;
			}
		  if (!(test.charAt(size-4) == " ")) //space in position length-3 rule
			{
				alert(test + " is not a valid postcode - no space or space in wrong position");
				document.getElementById("postcode").focus();
				return false;
			}
		  count1 = test.indexOf(" ");count2 = test.lastIndexOf(" ");
		  if (count1 != count2) //only one space rule
			{
				alert(test + " is not a valid postcode - only one space allowed");
				document.getElementById("postcode").focus();
				return false;
			}
		}
			
		       //Set the method variable
		       method = "searchFormattedAddress";
			document.getElementById("postcode").value = document.getElementById("postcode").value.toUpperCase();
		       //The addresses to search on
			//var  atAddress
		       address = new atAddress(	"",	"", "",	document.getElementById("postcode").value,"");
		
		       //Array
		       var addresses = new Array(address);
			  var licensekey = 'js8945-3016-8248';		// License key with 'js' in the front.  e.g. js0000-0000-0000"
			  //var licensekey = 'js9234-7853-3355';
			  // var licensekey;
			   //licensekey =  <%="'" & Application("IsharemapsKey") & "'" %>;			   
			   //alert(licensekey);
		       var recordcount = 10;
		       var threshold = 0.85;
		       var coordsys = 1;
		
		       //Call the web service & get the results
		       searchFormattedAddress(address, licensekey, recordcount, threshold, coordsys);
			   searchResultArea.innerHTML = "<center style=\"color: red\">Validating POSTCODE Please wait...</center>";
			   
		}

	  function test_parseAddress()
		{
			method = "parseAddress";
			
			rawaddress = '40 Burgess Road, Southampton, UK, SO17 3RE';
			
			parseAddress(rawaddress);
		}
		
		// Submits form when enter key is pressed
		function submitEnter(myfield,e)
		{
			var keycode;
			if (window.event)
				keycode = window.event.keyCode;
			else if (e)
				keycode = e.which;
			else return true;
			
			if (keycode == 13)
			{
			   test_searchFormattedAddresses();
			   return false;
			}
			else
			   return true;
		}
		
