/**
 * guidance page
 *
 * @encode euc-jp
 */
jQuery(function()
{
//	history.forward();
	init();

	jQuery("select#master_area").change(function(){
		hasMasterAreaOption();
	});
	jQuery("select#area").change(function(){
		hasAreaOption();
	});
	jQuery("select#local").change(function(){
		hasLocalOption();
	});
	jQuery(".searchTrigger").click(function(){
		if ( isActive() ) {
			$("input[name='date']").val(jQuery(this).attr("id"));
			$(this).parent("li").addClass("active");
			getResultSet(this);
		}
	return false;
	});
});


/**
 * 初期制御
 * エリアと都道府県がすでにチェックされている場合には、日付のボタンを押下できるようにする
 *
 */
var init = function(){
	if ( isActive() ) {
		var _date = $("input[name='date']").val();
		$("#" + _date).parent("li").addClass("active");
	}
};


/**
 * disable checker
 */
var isActive = function(){
	if ( jQuery("select#master_area option:selected").val() &&
	     jQuery("select#area option:selected").val() )
	{
		jQuery("ul.searchButton li").removeClass("off");
		$(".searchButton li").removeClass("active");
		return true;
	} else {
		//
		jQuery("ul.searchButton li").addClass("off");
		$(".searchButton li").removeClass("active");
		return false
	}
};


/**
 * エリア制御
 *
 */
var hasMasterAreaOption = function(){
	jQuery("select#area option:selected").attr("selected","");
	jQuery("select#local option:selected").attr("selected","");
	getLocalList();

	if ( jQuery("select#master_area option:selected").val() ) {
		getAreaList(jQuery("select#master_area option:selected").val());
	} else {
		getAreaList();
	}
	isActive();
};

/**
 * 都道府県制御
 *
 */
var hasAreaOption = function(){
	if ( !jQuery("select#master_area option:selected").val() ) {
		jQuery("select#area option:selected").attr("selected","");
		alert('エリアを選択してください');
	}
	else {
		if ( jQuery("select#area option:selected").val() ) {
			getLocalList(jQuery("select#area option:selected").val());
		}
	}
	isActive();
};

/**
 * 市区町村制御
 *
 */
var hasLocalOption = function(){
	if ( !jQuery("select#master_area option:selected").val() ) {
		jQuery("select#local option:selected").attr("selected","");
		alert('エリアを選択してください');
	} else if ( !jQuery("select#area option:selected").val() ) {
		jQuery("select#local option:selected").attr("selected","");
		alert('都道府県を選択してください');
	}
	isActive();
};

/**
 * エリアに関連する都道府県リストの取得
 *
 */
var getAreaList = function(_id){
    jQuery.ajax({
        'type'   : 'post',
        'timeout': 2000,
        'async'  : false,
        'url'    : '/guidance/ajax.php',
        'data'   : {p:"area", id:_id},
        'success': function(response){
                       jQuery("#area").html(response);
                   }
    });

};

/**
 * 都道府県に関連する市区町村リストの取得
 *
 */
var getLocalList = function(_id){
    jQuery.ajax({
        'type'   : 'post',
        'timeout': 2000,
        'async'  : false,
        'url'    : '/guidance/ajax.php',
        'data'   : {p:"local", id:_id},
        'success': function(response){
                       jQuery("#local").html(response);
                   }
    });
};

/**
 * 結果部分のリスト取得
 */
 var getResultSet = function(){

 	var _master_area = jQuery("select#master_area option:selected").val();
 	var _area  = jQuery("select#area option:selected").val();
 	var _local = jQuery("select#local option:selected").val();
 	var _date  = jQuery("input[name='date']").val();

     jQuery.ajax({
        'type'   : 'post',
        'timeout': 2000,
        'async'  : false,
        'url'    : '/guidance/ajax.php',
        'data'   : {p:"list", master_area:_master_area, area:_area, local:_local, date:_date},
        'success': function(response){
                       jQuery("#search-area").html(response);
                   }
    });
 };

 /**
  * url parser
  * var 1.0.0
  *
  */
 var urlParser = function(){
 	var tmp = location.href;
 	    tmp = tmp.split("?");
 	    tmp = tmp[1];
 	if ( tmp ) {
 	    tmp = tmp.split("&");
 	    if ( tmp.length > 2 ) {
 	    	var _json = null;
 	    	var _q = null;
 	    	jQuery.each(tmp,function() {
 	    		_q = this.replace("=",":");
 	    	});
 	    }
 	}
 };


/**
 * 戻るボタン対策
 *
 */
window.onunload = function(){
};

