﻿// JScript File

function makeHttpRequest(url, element, calltype) {
  var http_request = false;
                  //alert("hello 2");
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
    http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType) {
      http_request.overrideMimeType('text/xml');
    }
  } else if (window.ActiveXObject) { // IE
    try {
      http_request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        http_request = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) {}
    }
  }
  if (!http_request) {
    alert('Browser doesn\'t support Ajax. Site will NOT FULLY function properly.');
    return false;
  }
  http_request.onreadystatechange = function() {
    if (http_request.readyState == 4) {
      if (http_request.status == 200) {  

        loadXML(http_request.responseXML,calltype);
      } else {
        alert('There was a problem with the request. (Code: ' + http_request.status + ')');
      }
    }
  }
  http_request.open('GET', url, true);
  http_request.send(null);
}


function loadXML(xml,calltype)
{
    var objBtnSubmit = document.getElementById('btnSubmit');
    var objImageSubmit=document.getElementById('imgSubmit');

			//alert("hello world");
	if(calltype == 'Year')
	{		
		var string = '';
		
		var root = xml.getElementsByTagName('root')[0];
		
		
		
		// Fill Make
		var Make = root.getElementsByTagName('Make');
		var objdrpMake = document.getElementById('Inc_AdvCategory_drpMake');
						
		SelectedMake = objdrpMake.options[objdrpMake.selectedIndex].value;		
		objdrpMake.options.length = 1;
		for (i = 0; i < Make.length; i++)
		{
		    var city = Make[i];  
		    var Text = city.getElementsByTagName("Text")[0].firstChild.nodeValue;     		
		    addOption(objdrpMake, Text, Text, false);	    		    	    
		}
		selectPreviousOption(objdrpMake, SelectedMake);
		// Fill Model
		var Model = root.getElementsByTagName('Model');	
		//alert(Model);	
		var objdrpModel = document.getElementById('Inc_AdvCategory_drpModel');				
		SelectedModel = objdrpModel.options[objdrpModel.selectedIndex].value;		
		objdrpModel.options.length = 1;
		for (i = 0; i < Model.length; i++)
		{
		    var city = Model[i];  
		    var Text = city.getElementsByTagName("Text")[0].firstChild.nodeValue;     		
		    addOption(objdrpModel, Text, Text, false);	    		    	    
		}
		selectPreviousOption(objdrpModel, SelectedModel);
		
		// Fill Engine
		
		var ArrEngine = root.getElementsByTagName('Engine');		
		var objdrpEngine = document.getElementById('Inc_AdvCategory_drpEngine');
		SelectedEngine = objdrpEngine.options[objdrpEngine.selectedIndex].value;		
		objdrpEngine.options.length = 1;
		for (i = 0; i < ArrEngine.length; i++)
		{
		    var priceRange = ArrEngine[i];		    
		    var Text = priceRange.getElementsByTagName("Text")[0].firstChild.nodeValue;     		
		    addOption(objdrpEngine, Text, Text , false);	    		    	    
		}
		selectPreviousOption(objdrpEngine, SelectedEngine);
				
	   			
				
				
//		var ArrYear = root.getElementsByTagName('Year');		
//		var objdrpYear = document.getElementById('Inc_AdvCategory_drpYear');
//		SelectedYear = objdrpYear.options[objdrpYear.selectedIndex].value;		
//		objdrpYear.options.length = 1;
//		for (i = 0; i < ArrYear.length; i++)
//		{
//		    var priceRange = ArrYear[i];		    
//		    var Text = priceRange.getElementsByTagName("Text")[0].firstChild.nodeValue;     		
//		    addOption(objdrpYear, Text, Text , false);	    		    	    
//		}
//		selectPreviousOption(objdrpYear, SelectedYear);
	}
	else if(calltype == 'Make')
	{		
		var string = '';
		var root = xml.getElementsByTagName('root')[0];
		// Fill Model
		var Model = root.getElementsByTagName('Model');		
		var objdrpModel = document.getElementById('Inc_AdvCategory_drpModel');				
		SelectedModel = objdrpModel.options[objdrpModel.selectedIndex].value;		
		objdrpModel.options.length = 1;
		for (i = 0; i < Model.length; i++)
		{
		    var city = Model[i];  
		    var Text = city.getElementsByTagName("Text")[0].firstChild.nodeValue;     		
		    addOption(objdrpModel, Text, Text, false);	    		    	    
		}
		selectPreviousOption(objdrpModel, SelectedModel);
		
		// Fill Engine
		
		var ArrEngine = root.getElementsByTagName('Engine');		
		var objdrpEngine = document.getElementById('Inc_AdvCategory_drpEngine');
		SelectedEngine = objdrpEngine.options[objdrpEngine.selectedIndex].value;		
		objdrpEngine.options.length = 1;
		for (i = 0; i < ArrEngine.length; i++)
		{
		    var priceRange = ArrEngine[i];		    
		    var Text = priceRange.getElementsByTagName("Text")[0].firstChild.nodeValue;     		
		    addOption(objdrpEngine, Text, Text , false);	    		    	    
		}
		selectPreviousOption(objdrpEngine, SelectedEngine);
		
		
//		// Fill Year		
//		var ArrYear = root.getElementsByTagName('Year');		
//		var objdrpYear = document.getElementById('Inc_AdvCategory_drpYear');
//		SelectedYear = objdrpYear.options[objdrpYear.selectedIndex].value;		
//		objdrpYear.options.length = 1;
//		for (i = 0; i < ArrYear.length; i++)
//		{
//		    var priceRange = ArrYear[i];		    
//		    var Text = priceRange.getElementsByTagName("Text")[0].firstChild.nodeValue;     		
//		    addOption(objdrpYear, Text, Text , false);	    		    	    
//		}
//		selectPreviousOption(objdrpYear, SelectedYear);
	}
	else if(calltype == 'Model')
	{	
	    	
		var string = '';
		var root = xml.getElementsByTagName('root')[0];
		
		// Fill Engine
		
		var ArrEngine = root.getElementsByTagName('Engine');		
		var objdrpEngine = document.getElementById('Inc_AdvCategory_drpEngine');
		var objH2=document.getElementById('Inc_AdvCategory_h2Engine');
		SelectedEngine = objdrpEngine.options[objdrpEngine.selectedIndex].value;		
		objdrpEngine.options.length = 1;
		for (i = 0; i < ArrEngine.length; i++)
		{
		    var priceRange = ArrEngine[i];		    
		    var Text = priceRange.getElementsByTagName("Text")[0].firstChild.nodeValue;     		
		    addOption(objdrpEngine, Text, Text , false);	    		    	    
		}
//		if(ArrEngine.length>0)
//		{
//		    objdrpEngine.style.display='block';
//		    objH2.style.display='block'
//		}
//		else
//		{
//		    objdrpEngine.style.display='none';
//		    objH2.style.display='none';
//		}
		selectPreviousOption(objdrpEngine, SelectedEngine);
		
//		// Fill Year		
//		var ArrYear = root.getElementsByTagName('Year');		
//		var objdrpYear = document.getElementById('Inc_AdvCategory_drpYear');
//		SelectedYear = objdrpYear.options[objdrpYear.selectedIndex].value;		
//		objdrpYear.options.length = 1;
//		for (i = 0; i < ArrYear.length; i++)
//		{
//		    var priceRange = ArrYear[i];		    
//		    var Text = priceRange.getElementsByTagName("Text")[0].firstChild.nodeValue;     		
//		    addOption(objdrpYear, Text, Text , false);	    		    	    
//		}
//		selectPreviousOption(objdrpYear, SelectedYear);
	}	
	
	objImageSubmit.style.display='none';
		objBtnSubmit.style.display='';
}

function getFilter(calltype)
{
    var objBtnSubmit = document.getElementById('btnSubmit');
    var objImageSubmit=document.getElementById('imgSubmit');

    var SearchYear='';
    SearchYear = document.getElementById('Inc_AdvCategory_drpYear').options[document.getElementById('Inc_AdvCategory_drpYear').selectedIndex].value;
    
    var SearchMake = '';
    SearchMake = document.getElementById('Inc_AdvCategory_drpMake').options[document.getElementById('Inc_AdvCategory_drpMake').selectedIndex].value;
   
    var SearchModel = '';
    SearchModel = document.getElementById('Inc_AdvCategory_drpModel').options[document.getElementById('Inc_AdvCategory_drpModel').selectedIndex].value;
    
    var url = "ajaxHelper.aspx?CallType="+calltype+"&Year="+SearchYear+"&Make="+SearchMake+"&Model="+SearchModel;               
    
	objBtnSubmit.style.display='none';
	objImageSubmit.style.display='';

    
    makeHttpRequest(url,undefined,calltype);
}

// Add option to drop down list
function addOption(obj,text,value,selected) {
	if (obj!=null && obj.options!=null) {
		obj.options[obj.options.length] = new Option(text, value, false, selected);
		}
	}
	
function selectPreviousOption(obj, Selected)
{
	if (!hasOptions(obj))
	{
	   return;
	}
	for (var i=0; i<obj.options.length; i++)
	{
		if (obj.options[i].value == Selected)
		{
		   obj.options[i].selected = true;
		}
	}
}

function hasOptions(obj) {
	if (obj!=null && obj.options!=null) { return true; }
	return false;
	}
