var aryAreaData
var AREA_ID1 = 0;
var AREA_ID2 = 1;
var AREA_NAME1 = 3;
var AREA_NAME2 = 4;
var FLG_2H = 6;
var FLG_24H = 7;
var DESC_VAL = 8;
var DATA_LEN = 9;
var hWin;
function readAreaText()
{
	var frm = document.areafrm;
	if(frm.area1.options[frm.area1.selectedIndex].value == ""){
		setSelect("");
		frm.searchbtn.disabled = true;
		frm.area2.disabled = true;
	}else{
		httpObj = createXMLHttpRequest(getResponseData);
		if(httpObj)
		{
			frm.area1.disabled = true;
			frm.area2.disabled = true;
			frm.searchbtn.disabled = true;
			httpObj.open("GET","data/" + frm.area1.options[frm.area1.selectedIndex].value + ".txt",true);
			httpObj.send(null);
		}
	}
}

function selectArea2()
{
	var frm = document.areafrm;
	if(frm.area2.options[frm.area2.selectedIndex].value == ""){
		frm.searchbtn.disabled = true;
	}else{
		frm.searchbtn.disabled = false;
	}
}

function setSelect(str)
{
	var TAB = String.fromCharCode(9);
	var aryData = str.split(TAB);
	var len = aryData.length;
	aryAreaData = new Array((len-(len%DATA_LEN))/DATA_LEN);
	for(i=0; i<aryAreaData.length; i++){
		aryAreaData[i] = new Array(DATA_LEN);
		aryAreaData[i][AREA_ID1] = aryData[i*DATA_LEN+AREA_ID1];
		aryAreaData[i][AREA_ID2] = aryData[i*DATA_LEN+AREA_ID2];
		aryAreaData[i][AREA_NAME1] = aryData[i*DATA_LEN+AREA_NAME1];
		aryAreaData[i][AREA_NAME2] = aryData[i*DATA_LEN+AREA_NAME2];
		aryAreaData[i][FLG_2H] = aryData[i*DATA_LEN+FLG_2H];
		aryAreaData[i][FLG_24H] = aryData[i*DATA_LEN+FLG_24H];
		aryAreaData[i][DESC_VAL] = aryData[i*DATA_LEN+DESC_VAL];
	}
	document.areafrm.area2.selectedIndex = 0;
	var opt = document.areafrm.area2.options;
	while(opt.length > 0){
		opt[0] = null;
	}
	nCnt = 0;
	opt[0] = new Option("▼「市区町村」を選択してください", "");
	for(i=0; i<aryAreaData.length; i++){
		opt[i+1] = new Option(aryAreaData[i][AREA_NAME2], aryAreaData[i][AREA_ID2]);
	}
}

function getResponseData(){
	if ((httpObj.readyState == 4) && (httpObj.status == 200))
	{
		document.areafrm.area1.disabled = false;
		setSelect(httpObj.responseText);
		document.areafrm.area2.disabled = false;
		document.areafrm.searchbtn.disabled = true;
	}
	if ((httpObj.readyState == 4) && (httpObj.status == 404))
	{
		document.areafrm.area1.disabled = false;
		setSelect("");
		document.areafrm.area2.disabled = true;
		document.areafrm.searchbtn.disabled = true;
	}
}

function win_closed(winVar) {
  var ua = navigator.userAgent
  if( !!winVar )
      if( ( ua.indexOf('Gecko')!=-1 || ua.indexOf('MSIE 4')!=-1 )
           && ua.indexOf('Win')!=-1 ) 
           return winVar.closed
      else return typeof winVar.document  != 'object'
  else return true
}


function openResult(){
	var frm = document.areafrm;
	nAreaId2 = frm.area2.options[frm.area2.selectedIndex].value;
	if(nAreaId2 == ""){
		return ;
	}
	for(i=0; i<aryAreaData.length; i++){
		if(aryAreaData[i][AREA_ID2] == nAreaId2){
			frm.hide_area1.value = aryAreaData[i][AREA_NAME1];
			frm.hide_area2.value = aryAreaData[i][AREA_NAME2];
			frm.hide_flg2h.value = aryAreaData[i][FLG_2H];
			frm.hide_flg24h.value = aryAreaData[i][FLG_24H];
			var hide_desc
			hide_desc = decodeURIComponent(aryAreaData[i][DESC_VAL]);
			hide_desc = hide_desc.replace(/&/g, "&amp;");
			hide_desc = hide_desc.replace(/>/g, "&gt;");
			hide_desc = hide_desc.replace(/</g, "&lt;");
			hide_desc = hide_desc.replace(/"/g, "&quot;");
			hide_desc = hide_desc.replace(/\r\n/g, "\n");
			hide_desc = hide_desc.replace(/\n/g, "<br />");
			frm.hide_desc_val.value = hide_desc;
		}
	}
	hWin = open("result.html", "RESULT", "width=500,height=450,menubar=yes,toolbar=yes,status=yes,scrollbars=yes,resizable=yes");
	hWin.focus();
}

function setResult(){
//	alert("1");
	hWin.focus();
	nAreaId2 = document.areafrm.area2.options[document.areafrm.area2.selectedIndex].value;
	for(i=0; i<aryAreaData.length; i++){
		if(aryAreaData[i][AREA_ID2] == nAreaId2){
			hWin.document.all.area1.innerText = aryAreaData[i][AREA_NAME1];
			hWin.document.all.area2.innerText = aryAreaData[i][AREA_NAME2];
			hWin.document.all.desc_val.innerText = unescape(aryAreaData[i][DESC_VAL]);
		}
	}
}
