﻿$(document).ready(function() {
    hn_hotelsearch = function(param) {
        try {
            param = $.extend({
                CitySearch: "",
                CheckInDate: "",
                CheckOutDate: "",
                Nights: $('#sltNights'),
                RoomType1: $('#sltRoomSingle'),
                RoomType2: $('#sltRoomDouble'),
                RoomType3: $('#sltRoomTwin'),
                RoomType4: $('#sltRoom3'),
                RoomType5: $('#sltRoom4'),
                HotelName: $('#txtHotelName'),
                LandmarkCode: $('#sltLandmarkCode'),
                HotelGrade: $('#sltHotelGrade'),
                AvailableHotel: $('#chkAvailableHotel'),
                RecommendHotel: $('#chkRecommandHotel'),
                IncludeBreakFastHotel: $('#chkIncludeBrakfatHotel')
            },
			param);


            if (param.CitySearch.selectedValue == "") {
                alert("숙박도시를 선택하세요.");
                param.CitySearch.focus();
                return;
            }
            if (param.CheckInDate.selectedValue == "") {
                alert("체크인 날짜를 선택하세요.");
                param.CheckInDate.focus();
                return;
            }
            if (param.CheckOutDate.selectedValue == "") {
                alert("체크아웃 날짜를 선택하세요.");
                param.CheckOutDate.focus();
                return;
            }
            if (Number(param.RoomType1.val()) + Number(param.RoomType2.val()) + Number(param.RoomType3.val()) + Number(param.RoomType4.val()) + Number(param.RoomType5.val()) == 0) {
                alert("숙박하실 객실을 선택하세요.");
                return;
            }
            if (Number(param.RoomType1.val()) + Number(param.RoomType2.val()) + Number(param.RoomType3.val()) + Number(param.RoomType4.val()) + Number(param.RoomType5.val()) > 9) {
                alert("룸수는 총 9개를 넘을 수 없습니다!");
                return;
            }

            hn_proxy.form.Request({
                p: "/product/lodge/lg-32000.asp?res_type=H",
                v: "html",
                s: hn_proxy.form.getXml({
                    wsname: hn_proxy.ws.getLGPriceListAttVs10,
                    CityCode: param.CitySearch.selectedValue,
                    CheckInDate: param.CheckInDate.selectedValue,
                    CheckOutDate: param.CheckOutDate.selectedValue,
                    RoomType1: param.RoomType1.val(),
                    RoomType2: param.RoomType2.val(),
                    RoomType3: param.RoomType3.val(),
                    RoomType4: param.RoomType4.val(),
                    RoomType5: param.RoomType5.val(),
                    HotelName: ((param.HotelName != undefined) ? param.HotelName.val() : ""),
                    LandmarkCode: param.LandmarkCode.val(),
                    HotelGrade: param.HotelGrade.val(),
                    AvailableHotel: ((param.AvailableHotel != undefined) ? param.AvailableHotel.attr('checked').toString() : ""),
                    RecommendHotel: ((param.RecommendHotel != undefined) ? param.RecommendHotel.attr('checked').toString() : ""),
                    IncludeBreakFastHotel: ((param.IncludeBreakFastHotel != undefined) ? param.IncludeBreakFastHotel.attr('checked').toString() : "")
                }),
                q: "",
                c: hn_proxy.form.getCookieXml({
                    City: param.CitySearch.selectedValue,
                    CheckIn: param.CheckInDate.selectedValue.replace(/-/g, ''),
                    CheckOut: param.CheckOutDate.selectedValue.replace(/-/g, ''),
                    Nights: param.Nights.val(),
                    RT1: param.RoomType1.val(),
                    RT2: param.RoomType2.val(),
                    RT3: param.RoomType3.val(),
                    RT4: param.RoomType4.val(),
                    RT5: param.RoomType5.val(),
                    HotelGrade: ((param.HotelGrade.val() != undefined) ? param.HotelGrade.val() : ""),
                    Landmark: ((param.LandmarkCode.val() != undefined) ? param.LandmarkCode.val() : ""),
                    AvailableHotel: ((param.AvailableHotel != undefined) ? param.AvailableHotel.attr('checked').toString() : "false"),
                    RecommendHotel: ((param.RecommendHotel != undefined) ? param.RecommendHotel.attr('checked').toString() : "false"),
                    IncludeBreakFastHotel: ((param.IncludeBreakFastHotel != undefined) ? param.IncludeBreakFastHotel.attr('checked').toString() : "false"),
                    Hotel: ((param.HotelName != undefined) ? param.HotelName.val() : ""),
                    CityText: param.CitySearch.selectedText,
                    CheckInText: param.CheckInDate.Control.val(),
                    CheckOutText: param.CheckOutDate.Control.val()
                })
            });
        } catch (e) {
            alert(e.message);
        }
    };
    // 0623 
    hn_hotelsearchD = function(param) {
        try {
            param = $.extend({
                StateCode: null,
                CityCode: null,
                CheckInDate: null,
                CheckOutDate: null,
                Nights: null,
                RoomType1: null,
                RoomType2: null,
                RoomType3: null,
                RoomType4: null,
                RoomType5: null,
                HotelName: null,
                LandmarkCode: null,
                HotelGrade: null,
                AvailableHotel: null,
                RecommendHotel: null,
                IncludeBreakFastHotel: null,
                Dp: null,
                Fp: null,
                WardCode: null
            },
			param);


            if (param.StateCode.val() == "" && param.CityCode.val() == "") {
                alert("숙박하실 구 또는 도시를 선택하세요.");
                return;
            }
            if (param.CheckInDate.selectedValue == "") {
                alert("체크인 날짜를 선택하세요.");
                param.CheckInDate.focus();
                return;
            }
            if (param.CheckOutDate.selectedValue == "") {
                alert("체크아웃 날짜를 선택하세요.");
                param.CheckOutDate.focus();
                return;
            }
            if (param.RoomTypeD == null) {
                if (Number(param.RoomType1.val()) + Number(param.RoomType2.val()) + Number(param.RoomType3.val()) + Number(param.RoomType4.val()) + Number(param.RoomType5.val()) == 0) {
                    alert("숙박하실 객실을 선택하세요.");
                    return;
                }
                if (Number(param.RoomType1.val()) + Number(param.RoomType2.val()) + Number(param.RoomType3.val()) + Number(param.RoomType4.val()) + Number(param.RoomType5.val()) > 9) {
                    alert("룸수는 총 9개를 넘을 수 없습니다!");
                    return;
                }
            }
            
            hn_proxy.form.Request({
                p: "/product/lodge/lg-32000.asp?res_type=H",
                v: "html",
                s: hn_proxy.form.getXml({
                    wsname: hn_proxy.ws.getLGSearchedDomLodgePriceList,
                    StateCode: param.StateCode.val(),
                    CityCode: param.CityCode.val(),
                    WardCode: param.WardCode.val(),
                    CheckInDate: param.CheckInDate.selectedValue,
                    CheckOutDate: param.CheckOutDate.selectedValue,
                    RoomType1: param.RoomType1.val(),
                    RoomType2: ((param.RoomType2 != null) ? param.RoomType2.val() : ""),
                    RoomType3: ((param.RoomType3 != null) ? param.RoomType3.val() : ""),
                    RoomType4: ((param.RoomType4 != null) ? param.RoomType4.val() : ""),
                    RoomType5: ((param.RoomType5 != null) ? param.RoomType5.val() : ""),
                    HotelName: ((param.HotelName != null) ? param.HotelName.val() : ""),
                    LandmarkCode: ((param.LandmarkCode != null) ? param.LandmarkCode.val() : ""),
                    HotelGrade: ((param.HotelGrade != null) ? param.HotelGrade.val() : ""),
                    AvailableHotel: ((param.AvailableHotel != null) ? param.AvailableHotel.attr('checked').toString() : ""),
                    RecommendHotel: ((param.RecommendHotel != null) ? param.RecommendHotel.attr('checked').toString() : ""),
                    IncludeBreakFastHotel: "",
                    LodgeType: "L001/L013",
                    GroupCode: ""
                }),
                q: "",
                c: hn_proxy.form.getCookieXml({
                    Kdo: param.StateCode.val(),
                    KCity: param.CityCode.val(),
                    Kgu: param.WardCode.val(),
                    KCheckIn: param.CheckInDate.selectedValue.replace(/-/g, ''),
                    KCheckOut: param.CheckOutDate.selectedValue.replace(/-/g, ''),
                    KNights: param.Nights.val(),
                    KR1: ((param.RoomType1 != null) ? param.RoomType1.val() : ""),
                    KR2: ((param.RoomType2 != null) ? param.RoomType2.val() : ""),
                    KR3: ((param.RoomType3 != null) ? param.RoomType3.val() : ""),
                    KR4: ((param.RoomType4 != null) ? param.RoomType4.val() : ""),
                    KR5: ((param.RoomType5 != null) ? param.RoomType5.val() : ""),
                    KHotelName: ((param.HotelName != undefined) ? param.HotelName.val() : ""),
                    LorT: 'true',
                    DorF: 'false',
                    KAvi: ((param.AvailableHotel != null) ? param.AvailableHotel.attr('checked').toString() : ""),
                    KRec: ((param.RecommendHotel != null) ? param.RecommendHotel.attr('checked').toString() : ""),
                    KBra: "",
                    Kdp: ((param.Dp != null) ? param.Dp.attr('checked').toString() : ""),
                    Kfp: ((param.Fp != null) ? param.Fp.attr('checked').toString() : ""),
                    KHotelName: ((param.HotelName != null) ? param.HotelName.val() : "")
                })
            });
        } catch (e) {
            alert(e.message);
        }
    };
    hn_hotelsearchDCP = function(param) {
        try {
            param = $.extend({
                StateCode: null,
                CityCode: null,
                WardCode: null,
                CheckInDate: null,
                CheckOutDate: null,
                Nights: null,
                RoomType1: null,
                LandmarkCode: null,
                HotelGrade: null,
                AvailableHotel: null,
                RecommendHotel: null,
                IncludeBreakFastHotel: null,
                Dp: null,
                Fp: null,
                WardCode: null,
                isCondo: true,
                KHotelName: null
            },
			param);
			
            if (param.StateCode.val() == "" && param.CityCode.val() == "") {
                alert("숙박하실 구 또는 도시를 선택하세요.");
                return;
            }
            if (param.CheckInDate.selectedValue == "") {
                alert("체크인 날짜를 선택하세요.");
                param.CheckInDate.focus();
                return;
            }
            if (param.CheckOutDate.selectedValue == "") {
                alert("체크아웃 날짜를 선택하세요.");
                param.CheckOutDate.focus();
                return;
            }
            if (Number(param.RoomType1.val()) == 0) {
                alert("숙박하실 객실을 선택하세요.");
                return;
            }
            if (Number(param.RoomType1.val()) > 9) {
                alert("객실수는 9개를 넘을 수 없습니다!");
                return;
            }
            hn_proxy.form.Request({
                p: "/product/lodge/lg-32000.asp?res_type=H",
                v: "html",
                s: hn_proxy.form.getXml({
                    wsname: hn_proxy.ws.getLGSearchedDomLodgePriceList,
                    StateCode: param.StateCode.val(),
                    CityCode: param.CityCode.val(),
                    WardCode: param.WardCode.val(),
                    CheckInDate: param.CheckInDate.selectedValue,
                    CheckOutDate: param.CheckOutDate.selectedValue,
                    RoomType1: param.RoomType1.val(),
                    HotelName: ((param.HotelName != null) ? param.HotelName.val() : ""),
                    LandmarkCode: "",
                    HotelGrade: "",
                    AvailableHotel: ((param.AvailableHotel != null) ? param.AvailableHotel.attr('checked').toString() : ""),
                    RecommendHotel: ((param.RecommendHotel != null) ? param.RecommendHotel.attr('checked').toString() : ""),
                    IncludeBreakFastHotel: "",
                    LodgeType: (param.isCondo) ? "L005" : "L012",
                    GroupCode: ""
                }),
                q: "",
                c: hn_proxy.form.getCookieXml({
                    Kdo: param.StateCode.val(),
                    KCity: param.CityCode.val(),
                    Kgu: param.WardCode.val(),
                    KCheckIn: param.CheckInDate.selectedValue.replace(/-/g, ''),
                    KCheckOut: param.CheckOutDate.selectedValue.replace(/-/g, ''),
                    KNights: param.Nights.val(),
                    LorT: (param.isCondo) ? "Condo" : "Pension",
                    DorF: 'false',
                    KAvi: ((param.AvailableHotel != null) ? param.AvailableHotel.attr('checked').toString() : ""),
                    KRec: ((param.RecommendHotel != null) ? param.RecommendHotel.attr('checked').toString() : ""),
                    KBra: "",
                    Kdp: ((param.Dp != null) ? param.Dp.attr('checked').toString() : ""),
                    Kfp: ((param.Fp != null) ? param.Fp.attr('checked').toString() : ""),
                    KcR: param.RoomType1.val(),
                    KcN: ((param.HotelName != undefined) ? param.HotelName.val() : ""),
                    KR1: ((param.RoomType1 != null) ? param.RoomType1.val() : ""),
                    KHotelName: ((param.HotelName != null) ? param.HotelName.val() : "")
                })
            });
        } catch (e) {
            alert(e.message);
        }
    };
    // 0623 
});