		var xmlHttp = false;
		var lastusername = '';
		var naughtycount = 0;
		var okusername = '';
		
		try {
		  xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			 try {
				xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			  } catch (e2) {
				xmlHttp = false;
			  }
		 }

		if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
		  xmlHttp = new XMLHttpRequest();
		}
		

		
	function autoComplete(search){
		var autoComplete = document.getElementById('autoComplete');
		if(search == ''){
			autoComplete.innerHTML = '';
			autoComplete.style.display = 'none';		
		}else{
			if(search.length >= 3){
				var url = "searchme.php?organisation=" + search;
				xmlHttp.open("GET", url, true);
				xmlHttp.onreadystatechange = updatePage;
				xmlHttp.send(null);
			}else{
				autoComplete.innerHTML = '';
				autoComplete.style.display = 'none';
			}
		}
	}
		
	function checkUsername(username,firstname,lastname){
		okusername = username;
		if(lastusername == username){
			naughtycount ++;
			switch(naughtycount){
				case 1:
				document.getElementById('uname_ddown_msg').innerHTML = 'That Username is STILL taken.';
				break
				case 2:
				document.getElementById('uname_ddown_msg').innerHTML = 'That Username is 100% STILL taken.';
				break
				case 3:
				document.getElementById('uname_ddown_msg').innerHTML = 'YES... That Username is STILL taken.';
				break
				case 4:
				document.getElementById('uname_ddown_msg').innerHTML = 'GUESS WHAT... That Username is STILL taken.';
				break
				default:
				document.getElementById('uname_ddown_msg').innerHTML = 'Are you joking?';
				break
			}
		}else{
			document.getElementById('uname_ddown_msg').innerHTML = 'That Username has already been taken.';
			naughtycount =0;
		}
		lastusername = username;
		document.getElementById('uname_ddown').style.display='none';
		document.getElementById('checking').style.display='block';
		if(username != ''){
			var url = "checkusername.php?uname=" + username + "&lastname=" + lastname + "&firstname=" + firstname;
			xmlHttp.open("GET", url, true);
			xmlHttp.onreadystatechange = updateUname;
			xmlHttp.send(null);
		}else{
			alert('Please enter a username.');	
		}
	}
	
	function updateUname() {
	  if (xmlHttp.readyState == 4) {
	  	
		var response = xmlHttp.responseText;
		if(response != ''){
			if(response == '1'){
				document.getElementById('checking').style.display='none';
				document.getElementById('contform').style.display='block';
				document.getElementById('detailform').style.display='none';
				document.getElementById('detailtab').style.display='block';
				document.getElementById('sayname').innerHTML=okusername;
				thisstep = 2;
			}else{
				// need to show the names availale
				okusername = '';
				document.getElementById('checking').style.display='none';
				document.getElementById('uname_ddown').style.display='block';
				document.getElementById('pwd_box').style.display='none';
				var parts = response.split(",");
				var newuser = document.getElementById('newname');
					for(i=0;i<newuser.options.length;i++){
						newuser.options[i].remove(newuser.options.length -1);	
					}
					opt = document.createElement("option");
					opt.text = ' ';
					opt.value = '';
					newuser.options.add(opt);
				for(i=0;i<parts.length;i++){
					if(parts[i] != ''){
						opt = document.createElement("option");
						opt.text = parts[i];
						opt.value = parts[i];
						newuser.options.add(opt);
					}
				}
			}
		}else{
			// some cock up
		}

	 }
	}
	
	function updatePage() {
	  if (xmlHttp.readyState == 4) {
	  	var autoComplete = document.getElementById('autoComplete');
		var response = xmlHttp.responseText;
		if(response != ''){
			autoComplete.innerHTML = response;
			autoComplete.style.display = 'block';
		}else{
			autoComplete.innerHTML = '';
			autoComplete.style.display = 'none';
		}
		//document.form1.organisation.value = response;
	  }
	 }
	  
	  function doSelect(val_organisation,val_address1,val_address2,val_address3,val_address4,val_city,val_postcode){

		var organisation = document.getElementById('organisation');
		var address1 = document.getElementById('address1');
		var address2 = document.getElementById('address2');
		var address3 = document.getElementById('address3');
		var address4 = document.getElementById('address4');
		var city = document.getElementById('city');
		var postcode = document.getElementById('postcode');

		organisation.value = val_organisation;
		address1.value = val_address1;
		address2.value = val_address2;
		address3.value = val_address3;
		address4.value = val_address4;
		city.value = val_city;
		postcode.value = val_postcode;
		
		var autoComplete = document.getElementById('autoComplete');
		autoComplete.innerHTML = '';
		autoComplete.style.display = 'none';
	  }
	  