function showFindDealer(nameOfControl)
{
	ControlName = nameOfControl;
	if(document.getElementById(ControlName + '_tbZipCode').value == "" || document.getElementById(ControlName + '_tbZipCode').value.length != 4)
	{
		document.getElementById('FindDealerZipCode').style.display = 'block';
		document.getElementById('FindDealerResultLinks').style.display = 'none';
		showPopupContentFromDiv('FindDealer','500',null,'center','middle_scrolled',0.5);
		selectedFunction = "showFromDivWithInvisibleOverlay()";
	}
	else
	{
		document.getElementById('FindDealerZipCode').style.display = 'none';
		document.getElementById('FindDealerResultLinks').style.display = 'block';
		
		GetDealerLinks(document.getElementById(ControlName + '_tbZipCode').value);
	}
}

function CloseAndChoseDealer(dealerid)
{
	hideAllWarningPopups();
			
	for(var i = 0; i < document.getElementById(ControlName + '_ddlSalesCompany').length; i++)
	{
		if(document.getElementById(ControlName + '_ddlSalesCompany').options[i].value == dealerid)
		{
			document.getElementById(ControlName + '_ddlSalesCompany').options[i].selected = true;
		}
	}
}

var xmlHttp; 
var requestURL = '/unsecure/FindDealer.aspx?zipcode='; 
var is_ie = (navigator.userAgent.indexOf('MSIE') >= 0) ? 1 : 0; 
var is_ie5 = (navigator.appVersion.indexOf("MSIE 5.5")!=-1) ? 1 : 0; 
var is_opera = ((navigator.userAgent.indexOf("Opera6")!=-1)||(navigator.userAgent.indexOf("Opera/6")!=-1)) ? 1 : 0; 
//netscape, safari, mozilla behave the same??? 
var is_netscape = (navigator.userAgent.indexOf('Netscape') >= 0) ? 1 : 0; 

function GetDealerLinks(zipcode){ 
	if (zipcode.length > 0){ 
		//Append the name to search for to the requestURL 
		var url = requestURL + zipcode; 
	        
		//Create the xmlHttp object to use in the request 
		//stateChangeHandler will fire when the state has changed, i.e. data is received back 
		// This is non-blocking (asynchronous) 
		xmlHttp = GetXmlHttpObject(stateChangeHandler);
		
		//Send the xmlHttp get to the specified url 
		xmlHttp_Get(xmlHttp, url); 
	} 
	else { 
		//Textbox blanked out, clear the results 
		document.getElementById('DealerLinks').innerHTML = ''; 
	} 
} 

//stateChangeHandler will fire when the state has changed, i.e. data is received back 
// This is non-blocking (asynchronous) 
function stateChangeHandler() 
{ 
	//readyState of 4 or 'complete' represents that data has been returned 
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){ 
		//Gather the results from the callback 
		var str = xmlHttp.responseText;
		
		//Populate the innerHTML of the div with the results 
		document.getElementById('DealerLinks').innerHTML = HtmlDecode(str); 
		showPopupContentFromDiv('FindDealer','500',null,'center','middle_scrolled',0.5);
		selectedFunction = "showFromDivWithInvisibleOverlay()";
	} 
} 

// XMLHttp send GET request 
function xmlHttp_Get(xmlhttp, url) { 
	xmlhttp.open('GET', url, true); 
	xmlhttp.send(null); 
} 

function GetXmlHttpObject(handler) { 
	var objXmlHttp = null;    //Holds the local xmlHTTP object instance 

	//Depending on the browser, try to create the xmlHttp object 
	if (is_ie){ 
		//The object to create depends on version of IE 
		//If it isn't ie5, then default to the Msxml2.XMLHTTP object 
		var strObjName = (is_ie5) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP'; 
	        
		//Attempt to create the object 
		try{ 
			objXmlHttp = new ActiveXObject(strObjName); 
			objXmlHttp.onreadystatechange = handler; 
		} 
		catch(e){ 
		//Object creation errored 
			alert('IE detected, but object could not be created. Verify that active scripting and activeX controls are enabled'); 
			return; 
		} 
	} 
	else if (is_opera){ 
		//Opera has some issues with xmlHttp object functionality 
		alert('Opera detected. The page may not behave as expected.'); 
		return; 
	} 
	else{ 
		// Mozilla | Netscape | Safari 
		objXmlHttp = new XMLHttpRequest(); 
		objXmlHttp.onload = handler; 
		objXmlHttp.onerror = handler; 
	} 
	    
	//Return the instantiated object 
	return objXmlHttp; 
} 

function UseValue(strVal){ 
	document.frmStuff.txtName.value = strVal; 
}
