var xmlhttp;
function loadVersions()
{
	var locationString = new String(window.location);
	var carFolderNameBeginIndex = locationString.indexOf('/cars/') + 6;
	var carFolderFromUrl = locationString.substr(carFolderNameBeginIndex, locationString.indexOf('/', carFolderNameBeginIndex) - carFolderNameBeginIndex);

	var url = pathToRoot + pathToCarsData + '/data/cars/' + carFolderFromUrl + '/Equipment.xml';

	xmlhttp=null;
if (window.XMLHttpRequest)
  {// code for all new browsers
  xmlhttp=new XMLHttpRequest();
  }
else if (window.ActiveXObject)
  {// code for IE5 and IE6
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
if (xmlhttp!=null)
  {
  xmlhttp.onreadystatechange=state_Change;
  xmlhttp.open("GET",url,true);
  xmlhttp.send(null);
  }
else
  {
  alert("Your browser does not support XMLHTTP.");
  }
}

function state_Change()
{
if (xmlhttp.readyState==4)
  {
	 ParseXml(xmlhttp.responseXML, xmlhttp.responseText);
  }

}
	var versions;
	var versionsData;
	var dropList1;
	var dropList2;
	var dropList3;
	var dropList4;
	var xmlDoc;
	var browser=navigator.appName;
	
function ParseXml(xmlHttp, xmlString) {
        if(browser=="Microsoft Internet Explorer")
        {
            xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
            xmlDoc.loadXML(xmlString);
            versions = xmlDoc.selectNodes("carversion/versionDefinition/version");
        }
        else
		{
            xmlDoc=xmlHttp;
		    versions=xmlDoc.getElementsByTagName('version');
        }
		
		dropList1=document.getElementById("DropDownListVersions1");
		dropList2=document.getElementById("DropDownListVersions2");
		dropList3=document.getElementById("DropDownListVersions3");
		//dropList4=document.getElementById("DropDownListVersions4");
        //load DropDown list items
        for (i = 0; i < versions.length; i++) {
			itemText = versions[i].getAttribute("description");
			itemValue = versions[i].getAttribute("id");
			isUseVersion = versions[i].attributes[2].value;
			if (isUseVersion == "true") {
				dropList1Item = document.createElement("option");
				dropList1Item.text = itemText;
				dropList1Item.value = itemValue;
				dropList1.options.add(dropList1Item);
				dropList1.options[0].selected = true;
				
				dropList2Item = document.createElement("option");
				dropList2Item.text = itemText;
				dropList2Item.value = itemValue;
				dropList2.options.add(dropList2Item);
				
				dropList3Item = document.createElement("option");
				dropList3Item.text = itemText;
				dropList3Item.value = itemValue;
				dropList3.options.add(dropList3Item);

				//dropList4Item = document.createElement("option");
				//dropList4Item.text = itemText;
				//dropList4Item.value = itemValue;
				//dropList4.options.add(dropList4Item);
			}
		}

	DisplayData();
	DisplayData(0,1, 'tableBodyBaseData');
	DisplayData(1, 'end', 'tableBodyEquipmentData');
	
 }
  
    
 function DisplayData(startForm, goTo, elemId) {

      var tableBodyElement = document.getElementById(elemId);
      if(tableBodyElement!=null) {
        while(tableBodyElement.hasChildNodes()){ 
          tableBodyElement.removeChild(tableBodyElement.firstChild);
        }
        }
     
       optionGroupList = xmlDoc.getElementsByTagName('OptionGroup');
		
	   versionToDisplay1 = dropList1[dropList1.selectedIndex].value;	
	   versionToDisplay2 = dropList2[dropList2.selectedIndex].value;
	   versionToDisplay3 = dropList3[dropList3.selectedIndex].value;
	   //versionToDisplay4 = dropList4[dropList4.selectedIndex].value;
	   if (goTo == 'end') {
	   		goTo=optionGroupList.length;
	   }
       for(a=startForm; a<goTo; a++) 
       {
	   		groupName=optionGroupList[a].getAttribute("name");
			groupId=optionGroupList[a].getAttribute("id");
			isUseGroup = optionGroupList[a].attributes[2].value;
			if(isUseGroup=="false")
			{
				continue;
			}
			
			addRowGroup(groupName, elemId);
			
			optionList = optionGroupList[a].getElementsByTagName("option");
			for(i=0; i<optionList.length; i++)
			{
				optionName = optionList[i].getAttribute("name");
				valueList = optionList[i].getElementsByTagName("value");
				optionValue1='';
				optionValue2='';
				optionValue3='';
				//optionValue4 = '';
				isOptionUse=false;
				for (j = 0; j < valueList.length; j++) {
					
					valueVersion = valueList[j].getAttribute("id");
					isUseValue = valueList[j].attributes[1].value;

					if(versionToDisplay1==valueVersion)
					{
						if (browser == "Microsoft Internet Explorer") {
							optionValue1 = valueList[j].text;
						}
						else{
							optionValue1 = valueList[j].textContent;
						}
						if(isUseValue=="true") {isOptionUse=true;}
					}
					if(versionToDisplay2==valueVersion)
					{
						if (browser == "Microsoft Internet Explorer") {
							optionValue2 = valueList[j].text;
						}
						else{
							optionValue2 = valueList[j].textContent;
						}
						if(isUseValue=="true") {isOptionUse=true;}
					}
					if(versionToDisplay3==valueVersion)
					{
						if (browser == "Microsoft Internet Explorer") {
							optionValue3 = valueList[j].text;
						}
						else{
							optionValue3 = valueList[j].textContent;
						}
						if(isUseValue=="true") {isOptionUse=true;}
					}
					/*
					if (versionToDisplay4 == valueVersion) {
					    if (browser == "Microsoft Internet Explorer") {
					        optionValue4 = valueList[j].text;
					    }
					    else {
					        optionValue4 = valueList[j].textContent;
					    }
					    if (isUseValue == "true") { isOptionUse = true; }
					}
					*/
				}
				
				if (isOptionUse == true) {
					if(optionValue1=="null") {optionValue1=''}
					if(optionValue2=="null") {optionValue2=''}
					if (optionValue3 == "null") { optionValue3 = '' }
					//if (optionValue4 == "null") { optionValue4 = '' }
					addDataRow(optionName, optionValue1, optionValue2, optionValue3, elemId);
				}
            }
       }
     }

 function addRowGroup(text1Val)
{
      var row  = document.createElement('tr');
      var col = document.createElement("th");
      col.colSpan = "5";
      var elemTextNode = document.createTextNode(text1Val);
      var tableBodyElement  = document.getElementById('tablebody');
      col.appendChild(elemTextNode);
      row.appendChild(col);
      tableBodyElement.appendChild(row);
 }
     
 
function Refresh()
{
	DisplayData(0,1, 'tableBodyBaseData');
	DisplayData(1, 'end', 'tableBodyEquipmentData');
	
}
   
//add the row containing row group
function addRowGroup(text1Val, elemId) {
		var row  = document.createElement('tr');
		var col1 = document.createElement("th");
		col1.className = "SpecificationHeader";
		
		
		var text1 = document.createTextNode(text1Val);
		
		var tableBodyElement  = document.getElementById(elemId);
		col1.appendChild(text1);
		row.appendChild(col1);

		//col1 = document.createElement("th")
		//col1.style.backgroundColor = "#FFFFFF";
		//row.appendChild(col1);
		
		col1 = document.createElement("th")
		col1.colSpan = "3";
		
		row.appendChild(col1);
		tableBodyElement.appendChild(row);
	}
     
//add new row containing row data
function addDataRow(text1Val, text2Val, text3Val, text4Val, elemId) {
              
      var row  = document.createElement('tr');
      row.id='trow';
      var col1 = document.createElement('td');
      col1.className = "SpecificationOptionName";
      var col2 = document.createElement('td');
      var col3 = document.createElement('td');
      var col4 = document.createElement('td');
      var col5 = document.createElement('td');
      var col6 = document.createElement('td');
	  col1.innerHTML=text1Val;
	  
	  var innerHtml2="";
	  var innerHtml3="";
	  var innerHtml4 = "";
	  //var innerHtml5 = "";
	  switch (text2Val) 
	  {
	  		case '': innerHtml2 = '<img src="' + pathToRoot + 'images/common/is_off.gif"></img>'; break;
			case '2': innerHtml2 = '<img src="' + pathToRoot + 'images/common/is_on.gif"></img>'; break;
			case '1': innerHtml2 = '<img src="' + pathToRoot + 'images/common/is_opt.gif"></img>'; break;
			default: innerHtml2=text2Val;
	  }
	   	  if(document.getElementById("DropDownListVersions1").value=='a0')  { innerHtml2='';  }
	   
	  	  switch (text3Val) 
	  {
	  		case '': innerHtml3 = '<img src="' + pathToRoot + 'images/common/is_off.gif"></img>'; break;
			case '2': innerHtml3 = '<img src="' + pathToRoot + 'images/common/is_on.gif"></img>'; break;
			case '1': innerHtml3 = '<img src="' + pathToRoot + 'images/common/is_opt.gif"></img>'; break;
			default: innerHtml3=text3Val;
	  }
	  	 if(document.getElementById("DropDownListVersions2").value=='a0')  { innerHtml3='';  }
		 
	  	  switch (text4Val) 
	  {
	  		case '': innerHtml4 = '<img src="' + pathToRoot + 'images/common/is_off.gif"></img>'; break;
			case '2': innerHtml4 = '<img src="' + pathToRoot + 'images/common/is_on.gif"></img>'; break;
			case '1': innerHtml4 = '<img src="' + pathToRoot + 'images/common/is_opt.gif"></img>'; break;
			default: innerHtml4=text4Val;
	  }
	  
	  	if(document.getElementById("DropDownListVersions3").value=='a0')  { innerHtml4='';  }
	  
	  col2.innerHTML=innerHtml2;
	  col3.innerHTML=innerHtml3;
	  col4.innerHTML=innerHtml4;
	  //col5.innerHTML = innerHtml5;
      var tableBodyElement  = document.getElementById(elemId);


      row.appendChild(col1);
      col6.style.backgroundColor = "#FFFFFF";
      col6.style.width = "10px";
      //row.appendChild(col6);
      
      row.appendChild(col2);
	  col2.setAttribute("width", "185px");
	  col2.setAttribute("align", "center");
      row.appendChild(col3);
	  col3.setAttribute("width", "185px");
	  col3.setAttribute("align", "center");
      row.appendChild(col4);
	  col4.setAttribute("width", "185px");
	  col4.setAttribute("align", "center");
	  //row.appendChild(col5);
	  //col5.setAttribute("width", "95px");
	  //col5.setAttribute("align", "center");
      tableBodyElement.appendChild(row);
 }
 
