$(function(){
    // 都道府県
	$("#cityList").change(function(){
		pickupLine($("#cityList").val());
    });
	/*
	$("#lineList").change(function(){
		pickupStation($("#lineList").val());
        return false;
    });
	*/
	// 男/女/共学
	$("#type1List").click(function(){
		var v = $("#type1List").val();
		var value = ($("#type1List")[0].checked) ? v : "-" + v;
		//alert($("#type1List")[0].checked);
		var data = {
			"process" : "processAsyncCount",
			"typeID" : value
		}
		countSchool(data);
    });
	$("#type2List").click(function(){
		var v = $("#type2List").val();
		var value = ($("#type2List")[0].checked) ? v : "-" + v;
		var data = {
			"process" : "processAsyncCount",
			"typeID" : value
		}
		countSchool(data);
    });
	$("#type3List").click(function(){
		var v = $("#type3List").val();
		var value = ($("#type3List")[0].checked) ? v : "-" + v;
		var data = {
			"process" : "processAsyncCount",
			"typeID" : value
		}
		countSchool(data);
    });
	
	// 難易度
	$("#lvFromList").change(function(){
		var data = {
			"process" : "processAsyncCount",
			"lv_from" : $("#lvFromList").val()
		}
		countSchool(data);
    });
	$("#lvToList").change(function(){
		var data = {
			"process" : "processAsyncCount",
			"lv_to" : $("#lvToList").val()
		}
		countSchool(data);
    });
	
	// 初年度納付金
	$("#fCost1List").change(function(){
		var data = {
			"process" : "processAsyncCount",
			"fcost1" : $("#fCost1List").val()
		}
		countSchool(data);
    });
	$("#fCost2List").change(function(){
		var data = {
			"process" : "processAsyncCount",
			"fcost2" : $("#fCost2List").val()
		}
		countSchool(data);
    });
	
	// 授業料（年額）
	$("#tuition1List").change(function(){
		var data = {
			"process" : "processAsyncCount",
			"tuition1" : $("#tuition1List").val()
		}
		countSchool(data);
    });
	$("#tuition2List").change(function(){
		var data = {
			"process" : "processAsyncCount",
			"tuition2" : $("#tuition2List").val()
		}
		countSchool(data);
    });
	
	// 入学手続時総額
	$("#adFee1List").change(function(){
		var data = {
			"process" : "processAsyncCount",
			"adfee1" : $("#adFee1List").val()
		}
		countSchool(data);
    });
	$("#adFee2List").change(function(){
		var data = {
			"process" : "processAsyncCount",
			"adfee2" : $("#adFee2List").val()
		}
		countSchool(data);
    });
	
	// 受験科目
	$("#exSub1List").click(function(){
		var v = $("#exSub1List").val();
		var value = ($("#exSub1List")[0].checked) ? v : "-" + v;
		var data = {
			"process" : "processAsyncCount",
			"exsub" : value
		}
		countSchool(data);
    });
	$("#exSub2List").click(function(){
		var v = $("#exSub2List").val();
		var value = ($("#exSub2List")[0].checked) ? v : "-" + v;
		var data = {
			"process" : "processAsyncCount",
			"exsub" : value
		}
		countSchool(data);
    });
	
	// 付属制度（中高完全一貫教育）
	$("#ikkanFlg").click(function(){
		var v = $("#ikkanFlg").val();
		var value = ($("#ikkanFlg")[0].checked) ? v : "";
		var data = {
			"process" : "processAsyncCount",
			"ikkan" : value
		}
		countSchool(data);
    });
	
	// 付属制度（系列大学あり）
	$("#univFlg").click(function(){
		var v = $("#univFlg").val();
		var value = ($("#univFlg")[0].checked) ? v : "";
		var data = {
			"process" : "processAsyncCount",
			"univ" : value
		}
		countSchool(data);
    });
	
	// キリスト教系・仏教系
	$("#religion1List").click(function(){
		var v = $("#religion1List").val();
		var value = ($("#religion1List")[0].checked) ? v : "-" + v;
			var data = {
			"process" : "processAsyncCount",
			"religionID" : value
		}
		countSchool(data);
    });
	$("#religion2List").click(function(){
		var v = $("#religion2List").val();
		var value = ($("#religion2List")[0].checked) ? v : "-" + v;
		var data = {
			"process" : "processAsyncCount",
			"religionID" : value
		}
		countSchool(data);
    });
	
	// 私服通学
	$("#shifukuFlg").click(function(){
		var v = $("#shifukuFlg").val();
		var value = ($("#shifukuFlg")[0].checked) ? v : "";
		var data = {
			"process" : "processAsyncCount",
			"shifuku" : value
		}
		countSchool(data);
    });
	
	// 特待生制度あり
	$("#tokutaiFlg").click(function(){
		var v = $("#tokutaiFlg").val();
		var value = ($("#tokutaiFlg")[0].checked) ? v : "";
		var data = {
			"process" : "processAsyncCount",
			"tokutai" : value
		}
		countSchool(data);
    });
	
	// 土曜授業あり
	$("#satFlg").click(function(){
		var v = $("#satFlg").val();
		var value = ($("#satFlg")[0].checked) ? v : "";
		var data = {
			"process" : "processAsyncCount",
			"sat" : value
		}
		countSchool(data);
    });
});

function pickupLine(id) {
	var domain = location.hostname;
	$.ajax({
        dataType: "json",
		 data: {
            "process" : "processAsyncLineList",
			"id": id
        },
		cache: true,
		url: "http://" + domain + "/school/list/async.php",
        success: function (data) {
			objectdump(data, document.getElementById( 'dumparea' ) );
			generateHtmlLine(data)
        }
    });
	
	$.ajax({
        dataType: "json",
		 data: {
            "process" : "processAsyncCount",
			"cityID": id
        },
		cache: true,
		url: "http://" + domain + "/school/list/async.php",
        success: function (data) {
			objectdump(data, document.getElementById( 'dumparea' ) );
			generateHtmlCount(data)
        }
    });
	
}

function pickupStation(id) {
	var domain = location.hostname;
	$.ajax({
        dataType: "json", 
        data: {
            "process" : "processAsyncStationList",
			"id": id
        },
        cache: true,
        url: "http://" + domain + "/school/list/async.php",
        success: function (data) {
			objectdump(data, document.getElementById( 'dumparea' ) );
			generateHtmlStation(data)
        }
    });
	
	$.ajax({
        dataType: "json",
		 data: {
            "process" : "processAsyncCount",
			"lineID": id
        },
		cache: true,
		url: "http://" + domain + "/school/list/async.php",
        success: function (data) {
			objectdump(data, document.getElementById( 'dumparea' ) );
			generateHtmlCount(data)
        }
    });
}

function countSchool(value){
	var domain = location.hostname;
	$.ajax({
        dataType: "json",
		 data: value,
		cache: true,
		url: "http://" + domain + "/school/list/async.php",
        success: function (data) {
			objectdump(data, document.getElementById( 'dumparea' ) );
			generateHtmlCount(data)
        }
    });
}

function generateHtmlLine(data){
	$("#lineArea").empty();
	$("#stationArea").empty();
	var html = "";
	html += "<select name=\"lineID\" id=\"lineList\">";
	html += "<option value='' selected>選択してください</option>";
	for(n = 0, len = data.length; n < len; n++){
		html += '<option value="' + data[n].id + '">' + data[n].line + '</option>';
	}
	html += "</select>";
	$(html).appendTo("#lineArea");
	setEventLineList();
}

function generateHtmlStation(data){
	$("#stationArea").empty();
	var html = "";
	var p;
	var i = 0;
	for(n = 0, len = data.length; n < len; n++){
		if((n + 1) % 9 == 1){
			p = n == 0 ? 2 : 3;
			html += "<p class=\"p" + p + "\"><!--\n";
		}
		if(n == 0){
			html += "--><input type=\"checkbox\" id=\"staList" + i + "\" name=\"stationIDs[]\" value=\"999\" class=\"checkbox\" /><label for=\"staList" + i + "\">&nbsp;すべて</label>&nbsp;&nbsp;&nbsp;<!--\n";
			i++;
		}
		html += "--><input type=\"checkbox\" id=\"staList" + i + "\" name=\"stationIDs[]\" value=\"" + data[n].id + "\" class=\"checkbox\" /><label for=\"staList" + i + "\">&nbsp;" + data[n].station + "</label>&nbsp;&nbsp;&nbsp;<!--\n";
		i++;
		if((((n + 1) % 9 == 0) && n != 0) || (n == len - 1)){
			html += "--></p>\n";
		}
	}
	if(data.length > 0){
		$(html).appendTo("#stationArea");
	}
	for(n = 0, len = data.length; n <= len; n++){
		setEventStaList(n);
	}
}

function generateHtmlCount(count){
	$("#countArea").empty();
	var html = "<strong>" + count + "校</strong>";
	$(html).appendTo("#countArea");
}

function setEventLineList(){
	$("#lineList").change(function(){
		pickupStation($("#lineList").val());
    });
}

function setEventStaList(i){
	$("#staList" + i).click(function(){
		var v = $("#staList" + i).val();
		var value = ($("#staList" + i)[0].checked) ? v : "-" + v;
		var data = {
			"process" : "processAsyncCount",
			"stationID" : value
		}
		countSchool(data);
    });
}
