/**
 * change a model option
 */
function changeModelOption()
{
	clearCode();
	
	var nMaker = document.getElementById('makerSelect');
	if (!nMaker) {
		return null;
	}
	
	aData = gaModel[nMaker.value];
	var max = 0;
	if (navigator.OS == 'mac' && navigator.family == 'ie4') {
		var obj = document.all.tags('select')(2).options;
		obj.length = 0;
		var i = 0;
		for (key in aData) {
			if (key != 1) {	/* 'Universal' does not display */
				obj[i] = new Option(aData[key]);
				obj[i].value = key;
			    if (max < aData[key].length) {
       		        max = aData[key].length;
       		    }
				i++;
			}
		}
		obj[0].selected = true;
	} else {
		var nModel = document.getElementById('modelSelect');
	
		while (nModel.hasChildNodes()) {
			nModel.removeChild(nModel.firstChild);
		}
		
		for (key in aData) {
			if (key != 1) {	/* 'Universal' does not display */
				var nOption = document.createElement('option');
				nOption.setAttribute('value', key);
			    if (max < aData[key].length) {
       		        max = aData[key].length;
       		    }
				var nText = document.createTextNode(aData[key]);
				nOption.appendChild(nText);
				nModel.appendChild(nOption);
			}
		}
	}
    if (navigator.family == 'ie4' && typeof document.body.style.maxHeight != "undefined") { 
        document.getElementById('modelSelect').parentNode.style.width = Math.floor(max / 2) + 'em';
    }
}

/**
 * change a category2 option
 */
function changeCategory2Option()
{
	clearCode();
	
	var nCategory1 = document.getElementById('category1Select');
	if (!nCategory1) {
		return null;
	}
	
	aData = gaCategory2[nCategory1.value];
	var max = 0;
	if (navigator.OS == 'mac' && navigator.family == 'ie4') {
		var obj = document.all.tags('select')(4).options;
		obj.length = 0;
		var i = 0;
		for (key in aData) {
			obj[i] = new Option(aData[key]);
			obj[i].value = key;
		    if (max < aData[key].length) {
		        max = aData[key].length;
		    }
		    
			i++;
		}
		obj[0].selected = true;
	} else {
		var nCategory2 = document.getElementById('category2Select');
		
		while (nCategory2.hasChildNodes()) {
			nCategory2.removeChild(nCategory2.firstChild);
		}
		
		for (key in aData) {
			var nOption = document.createElement('option');
			nOption.setAttribute('value', key);
		    if (max < aData[key].length) {
		        max = aData[key].length;
		    }
			var nText = document.createTextNode(aData[key]);
			nOption.appendChild(nText);
			nCategory2.appendChild(nOption);
		}
	}
    if (navigator.family == 'ie4' && typeof document.body.style.maxHeight != "undefined") { 
        document.getElementById('category2Select').parentNode.style.width = max + 'em';
    }
}

/**
 * clear value of code
 */
function clearCode()
{
	var code = document.getElementById('code');
	code.value = "";
}

/**
 * set default
 */
function setDefaults()
{
	var nBrand = document.getElementById('brandSelect');
	var nMaker = document.getElementById('makerSelect');
	var nModel = document.getElementById('modelSelect');
	var nCategory1 = document.getElementById('category1Select');
	var nCategory2 = document.getElementById('category2Select');
	
	nBrand.selectedIndex = 0;
	nMaker.selectedIndex = 0;
	nModel.selectedIndex = 0;
	nCategory1.selectedIndex = 0;
	nCategory2.selectedIndex = 0;
}