
//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() {
	if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		return new ActiveXObject("Microsoft.XMLHTTP");
	} else {
		alert("Uw browser wordt niet ondersteund");
	}
}

//Our XmlHttpRequest object to get the auto suggest
var searchReq = getXmlHttpRequestObject();
var infoReq = getXmlHttpRequestObject();

//Called from keyup on the search textbox.
//Starts the AJAX request.
function companySuggest() {
	if (searchReq.readyState == 4 || searchReq.readyState == 0) {
		var str = escape(document.getElementById('company').value);
		searchReq.open("GET", 'php/companySuggest.php?search=' + str, true);
		searchReq.onreadystatechange = handleSearchSuggestCompany; 
		searchReq.send(null);
	}		
}

//Called when the AJAX response is returned.
function handleSearchSuggestCompany() {
	if (searchReq.readyState == 4) {
		var ss = document.getElementById('company_suggest')
		ss.innerHTML = '';
		var str = searchReq.responseText.split("\n");
		for(i=0; i < str.length - 1; i++) {
			//Build our element string.  This is cleaner using the DOM, but
			//IE doesn't support dynamically added attributes.
			var suggest = '<div onmouseover="javascript:suggestOverCompany(this);" ';
			suggest += 'onmouseout="javascript:suggestOutCompany(this);" ';
			suggest += 'onclick="javascript:setCompany(this.innerHTML);" ';
			suggest += 'class="suggest_link">' + str[i] + '</div>';
			ss.innerHTML += suggest;
		}
	}
}

//Mouse over function
function suggestOverCompany(div_value) {
	div_value.className = 'suggest_link_over';
}
//Mouse out function
function suggestOutCompany(div_value) {
	div_value.className = 'suggest_link';
}
//Click function
function setCompany(value) {
	
	if (searchReq.readyState == 4 || searchReq.readyState == 0) 
	{
		infoReq.open("GET", 'php/company_info.php?company=' + value, true);
		infoReq.onreadystatechange = handleCompanyInfo; 
		infoReq.send(null);
	}	

	document.getElementById('company').value = value;
	document.getElementById('company_suggest').innerHTML = '';
}

function handleCompanyInfo()
{	
	if (infoReq.readyState == 4) 
	{	
		var str = infoReq.responseText.split("\n");
		for(i=0; i < str.length - 1; i++) 
		{
			if(i==0)
			{
				document.getElementById('name').value=str[i];
			}
			else if(i==1)
			{
				document.getElementById('street').value=str[i];
			}	
			else if(i==2)
			{
				document.getElementById('number').value=str[i];
			}	
			else if(i==3)
			{
				document.getElementById('postcode').value=str[i];
			}	
			else if(i==4)
			{
				document.getElementById('city').value=str[i];
			}	
			else if(i==5)
			{
				document.getElementById('telephone').value=str[i];
			}	
			else if(i==6)
			{
				document.getElementById('fax').value=str[i];
			}	
			else if(i==7)
			{
				document.getElementById('cellphone').value=str[i];
			}
			else if(i==8)
			{
				document.getElementById('email').value=str[i];
				document.getElementById('emailrepeat').value=str[i];
			}	
			else if(i==9)
			{
				document.getElementById('company').value=str[i];
			}
			else if(i==10)
			{
				if (str[i]=='Mevr.')
					document.form.title_[1].checked=true;
				else
					document.form.title_[0].checked=true;
			}
		}
	}	
	
	document.getElementById('company_suggest').innerHTML = '';
}