var data = [];
data["category"]=load_category();
data["country"]=load_country();
data["classification"]=load_classification();

function load(){
	loadSelectElement('category1', data["category"]["0"]);
	loadSelectElement('country1', data["country"]["0"]);
	loadSelectElement('classification1', data["classification"]["0"]);
	var init = [];
	init["category"] = [];
	init["country"] = [];
	init["classification"] = [];// /フランス/ブルゴーニュ/ボージョレ/ボージョレ・シューペリュール
	var name=["category","country","classification"];
	for (var k=0;k<3;k++){
		//init[name[k]] = document.getElementById(name[k]+"_init").value.split("/[,\/]/");
		init[name[k]] = document.getElementById(name[k]+"_init").value.split("/");
		if(init[name[k]]){
			for (var i=1; i<=init[name[k]].length; i++) {
				for (j=0;j<document.getElementById(name[k]+i).length;j++){
					if (document.getElementById(name[k]+i).options[j].value == init[name[k]][i-1])
					break;
				}
　			mk_selection(document.getElementById(name[k]+i),name[k],j);
			}
		}
	}
}
function loadSelectElement(selObjId, options) {
	var selObj = document.getElementById(selObjId);
	// clear the target select element apart from the "select your..." option
	selObj.options.length = 1;
	// copy options from array of [value, pair] arrays to select box
	// IE doesn't work if you use the DOM-standard method, however...
	if (options) {
		if (typeof(window.clientInformation) != 'undefined') {
		// IE doesn't take the second "before" parameter...
			for (var loop=0; loop<options.length; loop++) selObj.add(new Option(options[loop][1], options[loop][0]));
		}
		else {
			for (var loop=0; loop<options.length; loop++) selObj.add(new Option(options[loop][1], options[loop][0]), null);
		}
	}
}
function mk_selection(selObj,sel,opt) {
	if(!selObj.selectedIndex){
	selObj.selectedIndex=opt;
	}
	var selectedValue = selObj.options[selObj.selectedIndex].value;
	document.getElementById(sel+"_id").value=selectedValue;
	var init = [];
	init["category"] = [];
	init["country"] = [];
	init["classification"] = [];// /フランス/ブルゴーニュ/ボージョレ/ボージョレ・シューペリュール
	var name=selObj.id.substring(0,selObj.id.length-1)
	var k=selObj.id.substring(selObj.id.length-1);
	init[name] = document.getElementById(name+"_init").value.split("/");
	init[name][k-1]=selectedValue;
	init[name].length=k;
	document.getElementById(name+"_init").value=init[name].join("/");
	//var selectedText = selObj.options[selObj.selectedIndex].text;
	//Code for scotland
	//alert(selObj.id);
	if(document.getElementById('category2').length>1)
		if(document.getElementById('category2').options[1].value=="38"){
			if(document.getElementById('country1').options[14].text=="スコットランド"){//for double check that 14th option is really scantland
				document.getElementById('country1').options[14].selected=true;
				document.getElementById('country2Container').style.display = 'none';
				document.getElementById('country3Container').style.display = 'none';
				document.getElementById('country4Container').style.display = 'none';
				loadSelectElement('country2', []);
				loadSelectElement('country3', []);
				loadSelectElement('country4', []);
				if(sel=='country')
					return;
			}
		}
	//end of scotland code
		if (selObj.id == sel+'1') {
		document.getElementById(sel+'2Container').style.display = 'block';
		document.getElementById(sel+'2').options[0].selected=true;
		loadSelectElement(sel+'2', data[sel][selectedValue]);
		loadSelectElement(sel+'3', []);
		loadSelectElement(sel+'4', []);
		if ( document.getElementById(sel+'1').options[0].selected==true || document.getElementById(sel+'2').length=="1")
			document.getElementById(sel+'2Container').style.display = 'none';
		document.getElementById(sel+'3Container').style.display = 'none';
		document.getElementById(sel+'4Container').style.display = 'none';
		return;
	} // step1
	if (selObj.id == sel+'2') {
		document.getElementById(sel+'3').options[0].selected=true;
		loadSelectElement(sel+'3', data[sel][selectedValue]);
		if ( document.getElementById(sel+'3').length=="1" || document.getElementById(sel+'2').options[0].selected==true)
			document.getElementById(sel+'3Container').style.display = 'none';
		else
			document.getElementById(sel+'3Container').style.display = 'block';
		document.getElementById(sel+'4Container').style.display = 'none';

		return;
	} // step2
	if (selObj.id == sel+'3') {
		document.getElementById(sel+'4').options[0].selected=true;
		loadSelectElement(sel+'4', data[sel][selectedValue]);
		if ( document.getElementById(sel+'4').length=="1" || document.getElementById(sel+'3').options[0].selected==true)
			document.getElementById(sel+'4Container').style.display = 'none';
		else
			document.getElementById(sel+'4Container').style.display = 'block';
		return;
	} // step3
}

function result() {
	var name=["category","country","classification"];
	var res = [];
	for (var i=0;i<3;i++){
		for (var j=4;j>0;j--){
			var l = document.getElementById(name[i]+j).length;
			if (l>1){
				for (var k=1;k<l;k++)
				if(document.getElementById(name[i]+j).options[k].selected==true){
					res[i]=document.getElementById(name[i]+j).options[k].value;
					break;
				}
				if(! res[i]){
					alert ("You should select "+name[i]+" value!!!");
					return;
				}
			break;
			}
		}
	}
	alert ("Catergory: "+res[0]+"\nCountry: "+res[1]+"\nClassification: "+res[2]);
}

