// ログインボックスの開閉


        $(document).ready(function() {

            $(".signin").click(function(e) {          
				return false
            });


            $(".signin").mouseover(function(e) {          
				e.preventDefault();
                $("div#signin_menu").slideToggle();
				$(".signin").toggleClass("menuopen");
            });
			
			$("div#signin_menu").mouseup(function() {
				return false
			});
			$(document).mouseup(function(e) {
				if($(e.target).parent("a.signin").length==0) {
					$(".signin").removeClass("menuopen");
					$("div#signin_menu").slideUp();
				}
			});			
			
 });
		

// オプションボックスの開閉

        $(document).ready(function() {


            $(".opt_chkbox").click(function() {    
				
				var thisbox = $(this).closest("div");
				
				if($(this).attr("checked")==true) {
					
				thisbox.children("div").slideDown();
				thisbox.addClass("c-bg03");
				} else{
				thisbox.children("div").slideUp();
				thisbox.removeClass("c-bg03");
				}
            });


 });
		
// ソートメニューの開閉


        $(document).ready(function() {

            $(".sortmenu").click(function(e) {          
				return false
            });


            $(".sortmenu").click(function(e) {          
				e.preventDefault();
                $("ul.search-brands").show();
            });
			
			$("ul.search-brands").mouseup(function() {
				return false
			});
			$(document).mouseup(function(e) {
				if($(e.target).parent("a.sortmenu").length==0) {
					$("ul.search-brands").hide();
				}
			});			
			
 });
 
// ポップアップウィンドウ

jQuery.fn.popupwindow = function(p)
{

	var profiles = p || {};

	return this.each(function(index){
		var settings, parameters, mysettings, b, a, winObj;
		
		// for overrideing the default settings
		mysettings = (jQuery(this).attr("rel") || "").split(",");

		
		settings = {
			height:600, // sets the height in pixels of the window.
			width:1020, // sets the width in pixels of the window.
			toolbar:0, // determines whether a toolbar (includes the forward and back buttons) is displayed {1 (YES) or 0 (NO)}.
			scrollbars:1, // determines whether scrollbars appear on the window {1 (YES) or 0 (NO)}.
			status:0, // whether a status line appears at the bottom of the window {1 (YES) or 0 (NO)}.
			resizable:1, // whether the window can be resized {1 (YES) or 0 (NO)}. Can also be overloaded using resizable.
			left:0, // left position when the window appears.
			top:0, // top position when the window appears.
			center:0, // should we center the window? {1 (YES) or 0 (NO)}. overrides top and left
			createnew:1, // should we create a new window for each occurance {1 (YES) or 0 (NO)}.
			location:0, // determines whether the address bar is displayed {1 (YES) or 0 (NO)}.
			menubar:0, // determines whether the menu bar is displayed {1 (YES) or 0 (NO)}.
			onUnload:null // function to call when the window is closed
		};

		// if mysettings length is 1 and not a value pair then assume it is a profile declaration
		// and see if the profile settings exists

		if(mysettings.length == 1 && mysettings[0].split(":").length == 1)
		{
			a = mysettings[0];
			// see if a profile has been defined
			if(typeof profiles[a] != "undefined")
			{
				settings = jQuery.extend(settings, profiles[a]);
			}
		}
		else
		{
			// overrides the settings with parameter passed in using the rel tag.
			for(var i=0; i < mysettings.length; i++)
			{
				b = mysettings[i].split(":");
				if(typeof settings[b[0]] != "undefined" && b.length == 2)
				{
					settings[b[0]] = b[1];
				}
			}
		}

		// center the window
		if (settings.center == 1)
		{
			settings.top = (screen.height-(settings.height + 110))/2;
			settings.left = (screen.width-settings.width)/2;
		}
		
		parameters = "location=" + settings.location + ",menubar=" + settings.menubar + ",height=" + settings.height + ",width=" + settings.width + ",toolbar=" + settings.toolbar + ",scrollbars=" + settings.scrollbars  + ",status=" + settings.status + ",resizable=" + settings.resizable + ",left=" + settings.left  + ",screenX=" + settings.left + ",top=" + settings.top  + ",screenY=" + settings.top;
		
		jQuery(this).bind("click", function(){
			var name = settings.createnew ? "PopUpWindow" + index : "PopUpWindow";
			winObj = window.open(this.href, name, parameters);
			
			if (settings.onUnload) {
				// Incremental check for window status
				// Attaching directly to window.onunlaod event causes invoke when document within window is reloaded
				// (i.e. an inner refresh)
				unloadInterval = setInterval(function() {
					if (!winObj || winObj.closed) {
						clearInterval(unloadInterval);	
						settings.onUnload.call($(this));
					}
				},500);
			}
			
			winObj.focus();
			
			return false;
		});
	});

};

//ポップアップ用リンクのクラスを設定

   	$(function()
	{
   		$(".popupwindow").popupwindow();
   	});


//Enterキーを無効に

	$(function(){
    $.fn.extend({
        disableEnter: function() {
            this.keypress(function(e) {
                return (e.which != 13);
            });
        }
    });
   	});
	
	$(function() {
    $('a').disableEnter();
    $('input').disableEnter();
});




/*
 * 現行Smart共通JavaScriptファイル
 *
 *
 */


/*
* プラン詳細・部屋詳細画面の表示に関する諸々
*
*/
//-------------------------------
//  詳細ページのurl
//-------------------------------
//  プラン詳細
var plan_detail_url = "det_plan.aspx";
//  部屋詳細
var room_detail_url = "det_room.aspx";
//  プラン＆部屋詳細
var plan_room_detail_url = "det_pln_rom.aspx";
//  プラン詳細カレンダー
var plan_detail_calendar_url = "detail_plan_calendar.aspx";
//  部屋詳細カレンダー
var room_detail_calendar_url = "detail_room_calendar.aspx";

//-------------------------------
//  urlパラメータの名前
//-------------------------------
var url_param_names = Object();
//  ホテルIDのurlパラメータ名
url_param_names["hi_id"] = "hi_id";
//  言語のurlパラメータ名
url_param_names["lang"] = "lang";
//  プランIDのurlパラメータ名
url_param_names["smp_id"] = "smp_id";
//  部屋IDのurlパラメータ名
url_param_names["smrt_id"] = "smrt_id";
//  予約IDのurlパラメータ名
url_param_names["sri_id"] = "sri_id";
//  予約バスケットの行数のurlパラメータ名
url_param_names["row_idx"] = "row_idx";


//-------------------------------
//  langコード
//-------------------------------
var lang_code = Object();

/*
* 宿泊者リストの値を各コントロールに反映させる関数
* 
* lodger_list_elem_id :
* fname_elem_id       :
* mname_elem_id       :
* lname_elem_id       :
* mail_elem_id        :
* mail_check_elem_id  :
*
*/
function lodger_set(lodger_list_elem_id, fname_elem_id, mname_elem_id, lname_elem_id, mail_elem_id, mail_check_elem_id) {
    //-----------------------------------
    //  各オブジェクトを取得
    //-----------------------------------
    var lodger_list = document.getElementById(lodger_list_elem_id);
    var lodger_first_name_box = document.getElementById(fname_elem_id);
    var lodger_middle_name_box = document.getElementById(mname_elem_id);
    var lodger_last_name_box = document.getElementById(lname_elem_id);
    var lodger_mail_box = document.getElementById(mail_elem_id);
    var lodger_mail_check_box = document.getElementById(mail_check_elem_id);

    if (lodger_list.selectedIndex == 0) {
        lodger_first_name_box.value = "";
        lodger_last_name_box.value = "";
        lodger_mail_box.value = "";
        lodger_mail_check_box.value = "";
        return true;
    }

    var select_option = lodger_list.options[lodger_list.selectedIndex];

    //-----------------------------------
    //  各オブジェクトの値を設定
    //-----------------------------------
    lodger_first_name_box.value = select_option.attributes["first_name"].value;
    lodger_last_name_box.value = select_option.attributes["last_name"].value;
    lodger_mail_box.value = select_option.attributes["mail_address"].value;
    lodger_mail_check_box.value = select_option.attributes["mail_address"].value;

    return true;
}

/*
 * 予約入力画面の宿泊者と同じを押したときの処理
 *
 * same_customer_chkbox_elem_id :
 * lodger_list_elem_id          :
 * add_lodger_list_check_ctl_id :
 * fname_elem_id                :
 * mname_elem_id                :
 * lname_elem_id                :
 * mail_elem_id                 :
 * mail_check_elem_id           :
 * user_first_name              :
 * user_middle_name             :
 * user_last_name               :
 * user_mail_address            :
 * from_body_onload             :
 *
*/
function lodger_set_same_customer(same_customer_chkbox_elem_id,
                                  lodger_list_elem_id,
                                  add_lodger_list_check_ctl_id,
                                  fname_elem_id,
                                  mname_elem_id,
                                  lname_elem_id,
                                  mail_elem_id, 
                                  mail_check_elem_id,
                                  user_first_name,
                                  user_middle_name,
                                  user_last_name,
                                  user_mail_address,
                                  from_body_onload) {

    //-----------------------------------
    //  各オブジェクトを取得
    //-----------------------------------
    var lodger_list = document.getElementById(lodger_list_elem_id);
    var lodger_first_name_box = document.getElementById(fname_elem_id);
    var lodger_middle_name_box = document.getElementById(mname_elem_id);
    var lodger_last_name_box = document.getElementById(lname_elem_id);
    var lodger_mail_box = document.getElementById(mail_elem_id);
    var lodger_mail_check_txt_box = document.getElementById(mail_check_elem_id);
    var lodger_add_list_checkbox = document.getElementById(add_lodger_list_check_ctl_id);

    if (document.getElementById(same_customer_chkbox_elem_id) == null) {
        //  コントロールが非表示
        return true;
    }

    //  コントロールの有効・無効フラグはチェック状態
    var disable_flg = document.getElementById(same_customer_chkbox_elem_id).checked;

    if (from_body_onload & !disable_flg) {
        //  オンロード時で無効化しない時は有効な値を消してしまう可能性がある為処理しない
        return true;
    }

    //-----------------------------------
    //  各オブジェクトの値を設定
    //-----------------------------------
    if (disable_flg) {
        //  無効化時
        if (lodger_list != null) {
            lodger_list.selectedIndex = 0;
        }
       
        if (lodger_add_list_checkbox != null) {
            lodger_add_list_checkbox.checked = false;
        }

        lodger_first_name_box.value = user_first_name;        //  宿泊者（氏）
        if (lodger_middle_name_box != null) {
            lodger_middle_name_box.value = user_middle_name;  //  宿泊者（中）
        }
        lodger_last_name_box.value = user_last_name;          //  宿泊者（名）

        if (lodger_list != null) {
            lodger_mail_box.value = user_mail_address;
            lodger_mail_check_txt_box.value = user_mail_address;
        }
        
        if (lodger_add_list_checkbox != null) {
            lodger_add_list_checkbox.checked = false;
        }
    }
    else {
        //  有効化時

        if (lodger_list != null) {
            lodger_list.selectedIndex = 0;
        }
        
        lodger_first_name_box.value = "";                       //  宿泊者（氏）
        if (lodger_middle_name_box != null) {
            lodger_middle_name_box.value = "";                  //  宿泊者（中）
        }
        lodger_last_name_box.value = "";                        //  宿泊者（名）

        lodger_mail_box.value = "";                             //  メールアドレス
        lodger_mail_check_txt_box.value = "";                   //  メールアドレス確認用
    }

    if (lodger_list != null) {
        lodger_list.disabled = disable_flg;                     //  宿泊者リスト
    }
    
    lodger_first_name_box.disabled = disable_flg;           //  宿泊者（氏）
    if (lodger_middle_name_box != null) {
        lodger_middle_name_box.disabled = disable_flg;      //  宿泊者（中）
    }
    lodger_last_name_box.disabled = disable_flg;            //  宿泊者（名）
    lodger_mail_box.disabled = disable_flg;                 //  メールアドレス
    lodger_mail_check_txt_box.disabled = disable_flg;       //  メールアドレス確認用
    if (lodger_add_list_checkbox != null) {
        lodger_add_list_checkbox.disabled = disable_flg;    //  宿泊者リストに追加する
    }

    return true;
}

/*
    2重処理防止
*/
var _page_executed = false;
function is_execute() {
    if (!_page_executed) {
        _page_executed = true;
        return true;
    }
    return false;
}

//-- 'デイユースプラン対応 2011/09/28 hyemin 
function onChkDayUse() {
    var chk_day_use = document.getElementById("SearchBox_ChkDayUse");
    var ddl_stay_len = document.getElementById("SearchBox_DdlStayLength");

    var year = document.getElementById("SearchBox_DdlCheckoutYear"); 	//年
    var month = document.getElementById("SearchBox_DdlCheckoutMonth"); 	//月
    var day = document.getElementById("SearchBox_DdlCheckoutDay"); 	    //日
    var dayuse_calender = document.getElementById("SearchBox_dayuse_calender");

    //グループカレンダーページ対応;2012/1/11 add by ozama -->>>
    if (ddl_stay_len == null) {
        ddl_stay_len = document.getElementById("DdlStayLength");
    }
    if (year == null) {
        year = document.getElementById("srch_box_DdlCheckoutYear");
        month = document.getElementById("srch_box_DdlCheckoutMonth");
        day = document.getElementById("srch_box_DdlCheckoutDay");
        dayuse_calender = document.getElementById("SearchBox_dayuse_calender");
    }
    //----------------------------------------------------- <<<
    
    if (chk_day_use.checked) 
    {
        if (ddl_stay_len != null) {
            ddl_stay_len.disabled = true;
            ddl_stay_len.selectedIndex = 0;
        }
        else {
            year.disabled = true;
            month.disabled = true;
            day.disabled = true;
            dayuse_calender.style.display = "none";
        }
    }
    else
    {
        if (ddl_stay_len != null) {
            ddl_stay_len.disabled = false;
        }
        else {
            year.disabled = false;
            month.disabled = false;
            day.disabled = false;
            dayuse_calender.style.display = "inline";
        }
    }
}
