
var send_form = function(){
	elem('search_form').submit();
}

var areaAct = {
	chk_btn: Array(),
	dtl_area: Array(),
	still_data: Array(),
	still_details: Array(),
	fucus_obj: Array(),
	init: function(){
		areaAct.still_data = qsParm();
		areaAct.still_details = loadAreaDetail();
		
		var buttons = $('.areaSelect input');
		var spans = $('.areaSelect span');
		for(i=0; i<buttons.length; i++){
			if (buttons[i].id != 'input_flag_all'){
				buttons[i].onclick = function(){
					var num = this.value;
					areaAct.chk_btn[num] = (this.checked) ? true: false;
					areaAct.clickArea(num);
				}
				
				var num = buttons[i].value;
				areaAct.dtl_area[num] = spans[i];
				
				buttons[i].checked = false;
				
				if (areaAct.still_data['area'+num]){
					buttons[i].checked = 'checked';
				}
					
				areaAct.chk_btn[num] = (buttons[i].checked) ? true: false;
				if (areaAct.chk_btn[num]) areaAct.clickArea(num);
			} else {
				buttons[i].onclick = function(){
					if (elem('input_flag_all').checked) areaAct.allCheck();
					else areaAct.allClose();
				}
			}
		}
		
		if (areaAct.still_data.route){
			$('#input_sel_route')[0].value = areaAct.still_data.route;
			station_selRoute();
			areaAct.still_data.route = false;
			
			if (areaAct.still_data.station){
				$('#input_sel_station')[0].value = areaAct.still_data.station;
				areaAct.still_data.station = false;
			}
		}
	},
	allCheck: function(){
		var buttons = $('.areaSelect input');
		for(i=0; i<buttons.length; i++){
			if ((buttons[i].id != 'input_flag_all')&&(buttons[i].name != 'area_detail')){
				var num = buttons[i].value;
				buttons[i].checked = 'checked';
				areaAct.chk_btn[num] = true;
				areaAct.clickArea(num);
			}
		}
	},
	allClose: function(){
		var buttons = $('.areaSelect input');
		for(i=0; i<buttons.length; i++){
			if ((buttons[i].id != 'input_flag_all')&&(buttons[i].name != 'area_detail')){
				var num = buttons[i].value;
				buttons[i].checked = false;
				areaAct.chk_btn[num] = false;
				areaAct.clickArea(num);
			} else {
				buttons[i].checked = false;
			}
		}
	},
	clickArea: function(num){
		if (areaAct.chk_btn[num]){
			areaAct.dtl_area[num].style.display = 'block';

			var param = 'md=loadDetails&area='+num;

			var callBack = function(back_data){
				var out_html = '';
				
				if (back_data.data.length){
					out_html += '<ul class="clearfix">';
					for(i=0; i<back_data.data.length; i++){
	
						var part = back_data.data[i];
	
						out_html += '<li><label>';
						out_html += '<input type="checkbox" name="area_detail" value="'+part.address+'"';
						if ((areaAct.still_details[part.address])||(areaAct.still_details.length == 0))
						out_html += ' checked="checked"';
						out_html += ' />';
						out_html += part.address+'('+part.count+')';
						out_html += '</label></li>'+"\n";
					}
					out_html += '</ul>';
				} else out_html += '<p>該当地域がありません。</p>';
				
				areaAct.dtl_area[back_data.num].innerHTML = out_html;
			}

			$.post('/js2/ajax.php', param, callBack, 'json');

		} else {
			areaAct.dtl_area[num].style.display = 'none';
		}
	},
	setCheck: function(area_num){
		areaAct.chk_btn[area_num] = $('#input_flag_area'+area_num)[0].checked;
		
		var next_chk = (areaAct.chk_btn[area_num]) ? false: 'checked';
		$('#input_flag_area'+area_num)[0].checked = next_chk;
		areaAct.chk_btn[area_num] = next_chk;
		areaAct.clickArea(area_num);
	}
}

var loadAreaDetail = function() {
	var query = window.location.search.substring(1);
	var parms = query.split('&');
	var result = Array();
	for (var i=0; i<parms.length; i++) {
		var pos = parms[i].indexOf('=');
		if (pos > 0){
			var key = parms[i].substring(0,pos);
			var val = parms[i].substring(pos+1);
			if (key == 'area_detail'){
				val = decodeURI(val);
				result[val] = true;
			}
		}
	}
	return result;
}

var qsParm = function() {
	var query = window.location.search.substring(1);
	var parms = query.split('&');
	var result = Array();
	for (var i=0; i<parms.length; i++) {
		var pos = parms[i].indexOf('=');
		if (pos > 0){
			var key = parms[i].substring(0,pos);
			var val = parms[i].substring(pos+1);
			result[key] = val;
		}
	}
	return result;
}

var station = {
	init: function(){
		var out_html = '<select name="route" id="input_sel_route" onchange="station_selRoute();">';
		out_html += '<option value="">指定なし</option>';
		for(i=0; i<route_list.length; i++){
			out_html += '<option value="'+route_list[i].sid+'">'+route_list[i].title+'</option>';
		}
		out_html += '</select>';
		elem('route_area').innerHTML = out_html;
		elem('station_area').innerHTML = '';
		return false;
	}
}

var station_selRoute = function(){
	var focus_route = elem('input_sel_route').value;
	var out_html;
	if (focus_route){
		out_html = ' ＞ <select name="station" id="input_sel_station">';
		out_html += '<option value="">指定なし</option>';
		var targ_list = station_list[focus_route];
		for(i=0; i<targ_list.length; i++){
			out_html += '<option value="'+targ_list[i].sid+'">'+targ_list[i].title+'</option>';
		}
		out_html += '</select>';
		elem('station_area').innerHTML = out_html;
	} else elem('station_area').innerHTML = '';
	return false;
}

var elem = function(elem_name){
	if (document.getElementById(elem_name)) return document.getElementById(elem_name);
}

Kaas.addEvent(window, 'load', function(){
	station.init();
	areaAct.init();
});
