$CookiePath = '/kansai';

//==================================
//	onloadで動くアクションはここにまとめます
//==================================
$(function(){
					 
	var $focus_searchFlg = false;
	var $focus_coursenoFlg = false;
	//プルダウンは、変更したら動きます

	//ウォーターマークライブラリ
	jQuery(document).ready(function($) { 
    $.updnWatermark.attachAll(); 
	}); 

	$CookieName =$("#cookiename").val();

	//連想配列 初期化
	$selectedAry = new Object(); 
	
	//検索条件を消す
	$("#sel_box").hide();

	//日付をセット
	setDefDate();
	

	//クッキーが保持されていたらプルダウン等にセットし、通信
	if($.cookie($CookieName)){

		$cookieParaAry = $.cookie($CookieName).split('-');
		for ( var $num in $cookieParaAry ) {
			$TmparaAry = $cookieParaAry[$num].split('=');
			if($TmparaAry[1] && $TmparaAry[1] != 'undefined'){
				$pname = $TmparaAry[0];
					if($pname == 'my_dir'){
					$mydir = $TmparaAry[1];
				}
			}
		}
		//取得パラメータが自分のディレクトリまたはトップのクッキーならセット
		if($mydir == $("#my_dir").val() || $mydir == 'top'){
			SetValueCookiePara($.cookie($CookieName));
			SetUrlFunc();
		}
	}
	
	//国名、都道府県がチェンジしたら都市も変更
	$("#p_country,#p_prefecture").change(function(){
		ActionChange($(this));
	});

	//[検索]で動く
	$(".bt_i_submit,.bt_d_submit").click(function(){
		
		var dfmonth = document.sForm.p_month.options;
		var dfdd = document.sForm.p_dd.options;

		if ( dfmonth.selectedIndex == 0 && dfdd.selectedIndex > 0 ) {
			alert("【月】を指定してください");
			return;
		}

	 	//ページを初期化する
 		$("#page").attr("value", "1");

		SetUrlFunc();
		
	});

	/*focus、Enterキー制御　ここから*/

	//コース番号検索がfocus状態
	$(".form").focus(function(){
		$focus_coursenoFlg = true;	
		$focus_searchFlg = false;	
	});

	//formの中がfocus状態
	$("#search_box :input,#search_box .icon_cale").focus(function(){
		$focus_searchFlg = true;
		$focus_coursenoFlg = false;	
	});
	//Safariで上記の選択がきかない為
	$("#search_box :checkbox").click(function(){
		$focus_searchFlg = true;	
		$focus_coursenoFlg = false;	
	});

	//Enterキーが実行された
	$(document).keypress(function (e) {
		if(e.keyCode == '13' && $focus_searchFlg == true){

			SetUrlFunc();
			$focus_searchFlg = false;																													 
			return false;
		}
		else if(e.keyCode == '13' && $focus_coursenoFlg == true){
			document.course_no_search.submit();
			$focus_coursenoFlg = false;			
			return false;
		}
	});
	/*focus、Enterキー制御　ここまで*/

	//MAPボタンが押された時はクッキークリア
	$("#map_d li a").click(function(){
		$.cookie($CookieName, null,{path:$CookiePath});    
	});
	$("#map_i li a").click(function(){
		$.cookie($CookieName, null,{path:$CookiePath});  
	});
	
	//リセットボタン
	$(".bt_i_reset,.bt_d_reset" ).click(function(){
		//選択されているものクリア
		$("input:checked").attr("checked", false);
		$("select").attr("selectedIndex", 0);
		$("#p_key").val("");
																			
		//クッキークリア
//		$.cookie($CookieName, null);  
		$.cookie($CookieName, null,{path:$CookiePath});    

		SetUrlFunc();
	});



});

//=============================================
//	もらったクッキーパラメータを選択BOXにセットする
//=============================================
function SetValueCookiePara($cookiePara){
	
	//分解する
	$cookieParaAry = $cookiePara.split('-');
	$SelPara = new Object(); 
	$value_seatAry = new Object(); 

	for ( var $num in $cookieParaAry ) {
		$SelParaAry = $cookieParaAry[$num].split('=');
		if($SelParaAry[1] && $SelParaAry[1] != 'undefined'){
			$pname = $SelParaAry[0];
				$SelPara[$pname] = $SelParaAry[1];
		}
	}
	
	for ( var $key in $SelPara ) {

		$name = $key;
		if("#"+$name){
			$("#"+$name).val($SelPara[$name]);
		}
		if($name == 'p_seatclass'){

			$value_seatAry = $SelPara[$name].split(',');
			for( var $num in $value_seatAry ) {
				if($value_seatAry[$num]){
					$("checkbox").val($value_seatAry[$num]);
					$("input[name=p_seatclass]").filter(function(){ return ($(this).val() == $value_seatAry[$num]) }).attr("checked", true);
				}
			}			
		}
		//都市のプルダウン生成
		var $html = '';
		if($name == 'p_country' && $SelPara[$name]){

			$("#p_country :selected").each(function ($i,$elem) {
				$('#p_city').find("option:gt(0)").remove();
				for ( var $key in CityList[$elem.value] ) {
					$('#p_city').append($('<option>').attr({ value: $key }).text(CityList[$elem.value][$key]));
					if($SelPara['p_city']){
						$('#tour_list').focus();	// ※この一行がないとエラーになる
						$("#p_city").val($SelPara['p_city']);
					}
					else{
						$('#tour_list').focus();	// ※この一行がないとエラーになる
						$("#p_city").val('');
					}
				}
			});
			$('#p_city').blur();	// ※この一行がないとエラーになる	
		}	
		
		//地域のプルダウン生成
		if($name == 'p_prefecture' && $SelPara[$name]){

			$('#p_city').focus();	// ※この一行がないとエラーになる	
			$("#p_prefecture :selected").each(function ($i,$elem) {

				$('#p_city').find("option:gt(0)").remove();
				for ( var $key in CityList[$elem.value] ) {
					$('#p_city').append($('<option>').attr({ value: $key }).text(CityList[$elem.value][$key]));
					if($SelPara['p_city']){
						$('#tour_list').focus();	// ※この一行がないとエラーになる
						$("#p_city").val($SelPara['p_city']);
					}
					else{
						$('#tour_list').focus();	// ※この一行がないとエラーになる
						$("#p_city").val('');
					}
				}
			});
			$('#p_city').blur();	// ※この一行がないとエラーになる	
		}	
		
		if($name == 'page'){
		 //ページに選択した値を入れる
		 $("#page").attr($SelPara[$name]);
	
			
		}
	}
}

//==================================
// ページャクリック時の設定
//==================================
function ClickPage($this){
	//
 $name = $this.attr("name");
 //ページに選択した値を入れる
 $("#page").attr("value", $name);
 SetUrlFunc(); 

}

//==================================
// p_sort
//==================================
function ClickSort($this){
 //
 $name = $this.attr("name");
 //ソートに選択した値を入れる
 $("#sort").attr("value", $name);
 //ページは1ページ
 $("#page").attr("value", '1');
 
 //色を変える
$(".search_day .ajaxlink on").removeClass("ajaxlink on");
$this.addClass("ajaxlink on");
 
 SetUrlFunc();

}

//==================================
//	都市セレクトBOX内容変更
//==================================
function ActionChange(ActionThis,$option){

	//選択された都市名で配列からセレクトを生成
	var str = "";
	var count = 0;

	$('#p_city option').remove();
	$('#p_city').append($('<option>').attr({ value: '' }).text('お選びください'));

	$(":selected", ActionThis).each(function ($i,$elem) {

		for ( var $key in CityList[$elem.value] ) {
			$('#p_city').append($('<option>').attr({ value: $key }).text(CityList[$elem.value][$key]));
//			$('#p_country').focus();	// ※この一行がないとエラーになる
//			$('#p_prefecture').focus();	// ※この一行がないとエラーになる
			$('#p_city').val($option);	
		}
	}); 
}


//==================================
//	パラメータをセットする共通の動き 
//==================================
//nameとvalueの場合
function MakeParam($selector){
	$($selector).each(function ($i,$elem) {
		$name = $elem.name;
		if($DsParamAry[$name] != null){
			$DsParamAry[$name] += ',' + $elem.value;

		}else{
			$DsParamAry[$name] = $elem.value;

		}
		if($elem.type == 'checkbox' && $elem.value){
			$show_flg = true;
		}
	});
}

//selectedされているものを全て選択
function MakeParamSelect($selector){
	
	$($selector).each(function ($i,$elem) {
		$name = $elem.name;
		
		$(":selected", this).each(function ($j,$elem2) {
																				
			if($DsParamAry[$name] != null){
				
				$DsParamAry[$name] += ',' + $elem2.value;
				$SelParamAry[$name] +=  ',' + $(this).text();
		
			}else{
				$DsParamAry[$name] = $elem2.value;
				$SelParamAry[$name] = $(this).text();
			}
			
			if($elem2.value){
				$show_flg = true;
			}
		
		});
	});
}


function DispSerchResult($SelParamAry){
	var $seatclassStr = "";
	var $transport = "";
	var $tmpStr = "";
	var $value;

	for ( var $key in $SelParamAry ) {
		$name = $key;
		
		//出発日、旅行日数、金額、座席クラスは文字列加工します
		if($name == 'p_dd'){
 			if($SelParamAry['p_month']){
				$tmpStr += $SelParamAry['p_month']+'月'; 
			}
			if($SelParamAry['p_dd']){
				$tmpStr += $SelParamAry['p_dd']+'日'; 
			}
			if($tmpStr){
				$SelParamAry['p_dd'] = $tmpStr;
			}
			else{
				$SelParamAry['p_dd'] = null;
			}
			$SelParamAry['p_month'] = null;
			$tmpStr = "";
		}
		else if($name == 'p_kikan_to'){
			if($SelParamAry['p_kikan_fr'] && $SelParamAry['p_kikan_fr'] != '未定'){
				$tmpStr += $SelParamAry['p_kikan_fr']+'日以上'; 
			}
			if($SelParamAry['p_kikan_to'] && $SelParamAry['p_kikan_to'] != '未定'){
				$tmpStr += $SelParamAry['p_kikan_to']+'日以下'; 
			}
			if($tmpStr){
				$SelParamAry['p_kikan_to'] = $tmpStr;
			}
			else{
				$SelParamAry['p_kikan_to'] = '未定';
			}
			$SelParamAry['p_kikan_fr'] = null;
			$tmpStr = "";
		}
	}
	
	if( ($SelParamAry['p_price_min'] && $SelParamAry['p_price_min'] != '制限なし') && 
			($SelParamAry['p_price_max'] && $SelParamAry['p_price_max'] != '制限なし') ){
	
			$SelParamAry['p_price_max'] = $SelParamAry['p_price_min']+'〜'+$SelParamAry['p_price_max']+'円'; 
	}
	else if($SelParamAry['p_price_min'] && $SelParamAry['p_price_min'] != '制限なし'){
			$SelParamAry['p_price_max'] = $SelParamAry['p_price_min']+'円以上'; 
	}
	else if($SelParamAry['p_price_max'] && $SelParamAry['p_price_max'] != '制限なし'){
			$SelParamAry['p_price_max'] = $SelParamAry['p_price_max']+'円以下'; 
	}
	else{
			$SelParamAry['p_price_max'] = '制限なし';
	}

	for ( var $key2 in $SelParamAry ) {
		$name = $key2;

		$res_name = $name.replace(/p_/ig,'res_');
		$("#"+$res_name).text($SelParamAry[$name]);

	}
		
	//交通機関	
	$("input[name='p_transport']:checked").each(function(){

		if($(this).val() == 1){
			if($transport){
				$transport +=  '、' + $("#p_transport_1_label").text();		
			}
			else{
				$transport += $("#p_transport_1_label").text();	
			}
		}
		else if($(this).val() == 2){

			if($transport){
				$transport +=  '、' + $("#p_transport_2_label").text();		
			}
			else{
				$transport += $("#p_transport_2_label").text();	
			}
		}
		else if($(this).val() == 3){
			if($transport){
				$transport +=  '、' + $("#p_transport_3_label").text();		
			}
			else{
				$transport += $("#p_transport_3_label").text();	
			}
		}
		else if($(this).val() == 4){
			if($transport){
				$transport +=  '、' + $("#p_transport_4_label").text();		
			}
			else{
				$transport += $("#p_transport_4_label").text();	
			}
		}
	});
	if(!$transport){
			$transport = '未選択';
	}
	$("#res_transport").text($transport);

	
	//座席
	if($("#cb_economy_label").text() != null && $("#cb_economy").attr('checked')){
		if($seatclassStr != ''){
			$seatclassStr +=  '、' + $("#cb_economy_label").text();	
		}
		else{
			$seatclassStr = $("#cb_economy_label").text();	
		}
	}
	if($("#cb_business_label").text() != null && $("#cb_business").attr('checked')){
		if($seatclassStr != ''){
			$seatclassStr +=  '、' + $("#cb_business_label").text();	
		}else{
			$seatclassStr = $("#cb_business_label").text();	
		}
	}
	if($("#cb_first_label").text() != null && $("#cb_first").attr('checked')){
		if($seatclassStr != ''){
			$seatclassStr +=  '、' + $("#cb_first_label").text();	
		}
		else{
			$seatclassStr = $("#cb_first_label").text();	
		}
	}
	if($("#cb_premium_label").text() != null && $("#cb_premium").attr('checked')){
		if($seatclassStr != ''){
			$seatclassStr +=  '、' + $("#cb_premium_label").text();	
		}
		else{
			$seatclassStr = $("#cb_premium_label").text();	
		}
	}
	if(!$seatclassStr){
			$seatclassStr = '未選択';
	}
	$("#res_seatclass").text($seatclassStr);

	//キーワード
	if($("#p_key").val() == ''){
		$("#res_key").text('なし');
	}
	else{
		$("#res_key").text($("#p_key").val());
	}
}
//==================================
//	ボタン押したとき（共通化する必要はないでしょう。それぞれ動きが違うから）
//==================================
//選ばれている内容は、全て取得する
function SetUrlFunc(){
	//連想配列 初期化
	$DsParamAry = new Object();
	$SelParamAry = new Object();
	$show_flg = false;
	$cookiStr = '';

	//inputの値（チェックボックス）
	$selector = "#search_box input:checked";
	MakeParam($selector);

	//inputの値（hidden）
	$selector = "#search_box input:hidden";
	MakeParam($selector);

	//inputの値（tet）
	$selector = "#search_box input:text";
	MakeParam($selector);

	//select系の値
	$selector = "#search_box select";
	MakeParamSelect($selector);


	if($show_flg){
		$("#noting").hide();
		$("#sel_box").show();
	}
	else{
		//　検索条件を消す
		$("#sel_box").hide();
		$("#noting").show();
	}

	//検索結果に反映
	DispSerchResult($SelParamAry);
	
	//クッキーに選択条件をセットする
	for ( var $key in $DsParamAry ) {
		$name = $key;
		$cookiStr += $name + '=' + $DsParamAry[$name] + '-';
	}
	$.cookie($CookieName,$cookiStr,{expires:0,path:$CookiePath});

	$.ajax({
		 data: $DsParamAry
		,dataType: "html"
		,url: "/osa-iad/kansai/share/phpsc/for_soap_ajax.php"
		,beforeSend: function(){
			$("#search_result_list").html('<div id="/osa-iad/kansai/share/parts/loading_gif" style="text-align:center;"><img src="/osa-iad/kansai/share/parts/loading.gif" /></div>');
		}
		,success: function(html){
			
			$("#search_result_list div").fadeOut("fast", function() {
				$("#search_result_list").html(html);
			});
		}
	});
}
