
var areaPullDown = new Object();

function areaSelectInit(){
	var d = document;
	var sel = d.getElementsByTagName("select");
	var i;
	if(sel){
		for(i = 0; i < sel.length; i++){
			if(getNameAttribute(sel[i]) == "sT"){
				areaPullDown[ 'sT' ] = sel[i];
				areaPullDown[ 'sT' ].onchange = alterChild;
			}
			if(getNameAttribute(sel[i]) == "sL"){
				areaPullDown[ 'sL' ] = sel[i];
				areaPullDown[ 'sL' ].onchange = alterChild;
			}
			if(getNameAttribute(sel[i]) == "sS"){
				areaPullDown[ 'sS' ] = sel[i];
			}
		}
	}
}

function alterChild(){
	switch(getNameAttribute(this)){
		case "sT":
			insertsL(this.value, 0);
		break;
		case "sL":
			insertsS(this.value, 0);
		break;
	}
}

function insertPrefs(sel){
	var pdXml;
	pdXml = getAreaXmlObj("_xml_sT", 0, sel);
	pdXml.loadXMLDoc();
}

function insertsL(parentVal, sel){
	var pdXml;
	pdXml = getAreaXmlObj("_xml_sL", parentVal, sel);
	pdXml.loadXMLDoc();
}
function insertsS(parentVal, sel){
	var pdXml;
	pdXml = getAreaXmlObj("_xml_sS", parentVal, sel);
	pdXml.loadXMLDoc();
}

function setSelectArea(formsT,formsL,formsS){
	insertPrefs(formsT);
	insertsL(formsT, formsL);
	insertsS(formsL, formsS);
}

function getAreaXmlObj(mode, parentVal, selectedVal){
	var obj = new tabiXmlHttp("/search/SamuraiApi.php?mode=" + mode + "&value=" + parentVal + "&selected=" + selectedVal,"GET", false, putArea);
	return obj;
}

function putArea(){
	var xml = this.req.responseXML;
	var i;
	if(xml){
		var _idx;
		var _selectedIndex = 0;
		var target = xml.getElementsByTagName("target")[0].firstChild.nodeValue;
		try{
//			var areaPullDown[target] = areaPullDown[target];
			areaPullDown[target].innerHTML = "";
		}catch(err){
			areaSelectInit();
//			var areaPullDown[target] = areaPullDown[target];
			areaPullDown[target].innerHTML = "";
		}
		var list = xml.getElementsByTagName("area");
		for(i =0; i < list.length; i++){
			var areaCode = list[i].getAttributeNode("code").nodeValue;
			var selected = list[i].getAttributeNode("isselected").nodeValue;
			var areaName = list[i].firstChild.nodeValue;
			var option = document.createElement("option");
			var txt = document.createTextNode(areaName);
			option.setAttribute("value", areaCode);
			option.appendChild(txt);
			if(selected == "1"){
				_selectedIndex = i;
				_idx = areaCode;
				option.selected = true;
			}
			areaPullDown[target].appendChild(option);
		}
		areaPullDown[target].selectedIndex = _selectedIndex;
	}
}
function getNameAttribute(obj){
	var n = obj.name;
	if(n == undefined){
		n = obj.getAttribute("name");
	}
	return n;
}

addEvent(window, "load", areaSelectInit, false);
