function GetXmlHttpObject(handler){
	var objXMLHttp=null
	
	if(window.XMLHttpRequest){
		objXMLHttp=new XMLHttpRequest()
	} else if(window.ActiveXObject){
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
	} 
	
	return objXMLHttp
}

/* STANDARD AJAX DISPLAY */
function display_info(target_id){
	
	//TARGET TABLE
	var display_table = document.getElementById(target_id);
	
	//REMOVE OLD LOADING SCREENS
	var loading_screen = document.getElementById('loading'); if(loading_screen){ loading_screen.parentNode.removeChild(loading_screen); }
	
	if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
		
		//RESPONSE
		var xml_doc = xmlHttp.responseText;
		
		//DISPLAY DATA
		display_table.innerHTML = xml_doc;
		
	} else {
		
		//DISPLAY DATA
		div = document.createElement('div');	
		div.setAttribute('id', 'loading');
		div.style.paddingTop = '75px';
		div.style.width = '400px';
		div.style.textAlign = 'center';
		div.innerHTML = '<h2>Matching Tires To Your Vehicle</h2><img src="//www.grismertire.com/manager/images/ajax-loader.gif" />';
		display_table.appendChild(div);
	}
}

function get_info(url, qStr, target_id){
	document.getElementById(target_id).innerHTML = '';
		
	xmlHttp=GetXmlHttpObject()
	if(xmlHttp==null){ alert("Browser does not support HTTP Request"); return; }
	
	url=url+"?"+qStr;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange = function(){ display_info(target_id) };
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	
}

/* VEHICLE SELECT */

function display_fitment_guide(target_id){
	
	//TARGET TABLE
	var display_table = document.getElementById(target_id);
	
	if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
				
		//CLEAR LOADER
		if(document.getElementById('loader_div')){ document.getElementById('loader_div').parentNode.removeChild(document.getElementById('loader_div')); }
		
		//RESPONSE
		var xml_doc = xmlHttp.responseText;
		
		//DISPLAY DATA
		display_table.innerHTML = '';
		display_table.innerHTML = xml_doc;
			
	} 
}

function fitment_guide(url, qStr, loader_display, target_id){
	
	//DISPLAY LOADER GRAPHIC
	if(loader_display != ''){
		//CREATE LOADER HOLDER
		var loader_div = document.createElement('div');
		loader_div.id = 'loader_div';
		loader_div.style.position = 'relative';
		loader_div.style.top = '-23px';
		loader_div.style.left = '220px';
		loader_div.innerHTML = '<img style="position:absolute;" src="//www.grismertire.com/images/fitment-guide-loader.gif" />';
		
		//SPAWN LOADER		
		document.getElementById(loader_display).parentNode.appendChild(loader_div);
	}
	
	xmlHttp=GetXmlHttpObject()
	if(xmlHttp==null){ alert("Browser does not support HTTP Request"); return; }
	
	url=url+"?"+qStr;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange = function(){ display_fitment_guide(target_id) };
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	
}

/* REDIRECT FITMENT GUIDE */

function redirect_fitment_guide(target_id){
		
	if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
				
		//REDIRECT AFTER PAGE LOADS
		window.location = "//www.grismertire.com/tire-center-catalog.php";
		
	} 
}

function fitment_guide_redirect(url, qStr, target_id){
	xmlHttp=GetXmlHttpObject()
	if(xmlHttp==null){ alert("Browser does not support HTTP Request"); return; }
	
	url=url+"?"+qStr;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange = function(){ redirect_fitment_guide(target_id) };
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	
}

/* WHEEL CATALOG */

function GetXmlHttpObject(handler){
	var objXMLHttp=null
	
	if(window.XMLHttpRequest){
		objXMLHttp=new XMLHttpRequest()
	} else if(window.ActiveXObject){
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
	} 
	
	return objXMLHttp
}

/* STANDARD AJAX DISPLAY */
function display_wheel_info(target_id){
	
	//TARGET TABLE
	var display_table = document.getElementById(target_id);
	
	//REMOVE OLD LOADING SCREENS
	var loading_screen = document.getElementById('loading'); if(loading_screen){ loading_screen.parentNode.removeChild(loading_screen); }
	
	if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
		
		//RESPONSE
		var xml_doc = xmlHttp.responseText;
		
		//DISPLAY DATA
		display_table.innerHTML = xml_doc;
		
	} else {
		
		//DISPLAY DATA
		div = document.createElement('div');	
		div.setAttribute('id', 'loading');
		div.style.paddingTop = '40px';
		div.style.width = '850px';
		div.style.textAlign = 'center';
		div.innerHTML = '<h2>Matching Wheels To Your Vehicle</h2><img src="//www.grismertire.com/manager/images/ajax-loader.gif" />';
		display_table.appendChild(div);
	}
}

function get_wheel_info(url, qStr, target_id){
	document.getElementById(target_id).innerHTML = '';
		
	xmlHttp=GetXmlHttpObject()
	if(xmlHttp==null){ alert("Browser does not support HTTP Request"); return; }
	
	url=url+"?"+qStr;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange = function(){ display_wheel_info(target_id) };
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	
}

function display_wheel_vehicle(target_id){
	
	//TARGET TABLE
	var display_table = document.getElementById(target_id);
	
	//REMOVE OLD LOADING SCREENS
	var loading_screen = document.getElementById('loading'); if(loading_screen){ loading_screen.parentNode.removeChild(loading_screen); }
		
	if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
		
		//RESPONSE
		var xml_doc = xmlHttp.responseText;
		document.getElementById(target_id).disabled = false;
				
		if(xml_doc.split('----')[0] == "NOOPTION" && xml_doc.split('----')[2] != "ALLVEHICLES"){
			//DISPLAY DROP DOWNSDATA
			display_table.innerHTML = xml_doc.split('----')[2];		
			
			//REDIRECT BASED ON NO VEHICLE TRIM OPTIONS
			get_wheel_info('ajax/wheel-catalog.php', 'action=request-wheels&vehiclecd='+xml_doc.split('----')[1], 'product_holder');			
		} else if(xml_doc.split('----')[2] == "ALLVEHICLES"){
			//DISPLAY DROP DOWNSDATA
			display_table.innerHTML = xml_doc.split('----')[3];		
					
			//DISPLAY WHEEL DATA
			get_wheel_info('ajax/wheel-catalog.php', 'action=request-wheels&vehiclecd='+xml_doc.split('----')[1], 'product_holder');
		} else {
			//DISPLAY DATA
			display_table.innerHTML = xml_doc;		
		}
						
	} else {
		
		//DISPLAY DATA
		div = document.createElement('div');	
		div.setAttribute('id', 'loading');
		div.style.position = 'absolute';
		div.style.top = (parseInt(find_position_top(document.getElementById(target_id))) + 10)+'px';
		div.style.left = (parseInt(find_position_left(document.getElementById(target_id))) + parseInt(document.getElementById(target_id).offsetWidth) - 30)+'px';
		div.style.textAlign = 'center';
		div.innerHTML = '<img src="//www.grismertire.com/images/fitment-guide-loader.gif" />';
		display_table.appendChild(div);
	}
}

function get_wheel_vehicle(url, qStr, target_id){
	document.getElementById(target_id).disabled = true;
		
	xmlHttp=GetXmlHttpObject()
	if(xmlHttp==null){ alert("Browser does not support HTTP Request"); return; }
	
	url=url+"?"+qStr;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange = function(){ display_wheel_vehicle(target_id) };
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	
}


