$(document).ready(function() {
    if ($("#divAge").length > 0) {
        childrenAge("select.childroom_number");
        $("select.childroom_number").change(function() {
            childrenAge(this);
        });
    }
});

function childrenAge(element) {
    if ($(element).val() == 0) {
        $(".room span.note,#divAge,li.details_age,ul.children_age").hide();
    }
    else {
        var index = $(element).val();
        if ($("#divAge select").length < index) {
            var selectLenght = $("#divAge select").length;
            for (i = 0; i < index - selectLenght; i++) {
                var age = $("#divAge select:first").clone();
                age.val("1");
                age.appendTo("#divAge");
            }
        }
        if ($("#divAge select").length > index) {
            var selectLenght = $("#divAge select").length;
            for (i = 0; i < selectLenght - index; i++) {
                $("#divAge select:last").remove();
            }
        }
        $(".room span.note,#divAge,li.details_age,ul.children_age").show();
    }
}

function searchHotel() {
    doValidateCountryCode();
    if (validateQueryCondition()) {
        if ($("#countryCode").val() == "") {
            $("#cityName").val("");
            daAlert($("#cityName"), errorCityNameMsg);
            return false;
        }

        if ($("#group_hotel_checkbox_all").attr('checked')) {
            $("input[name='condition.groupHotelCodes']").each(function() {
                this.checked = false;
            });
        }

        $('#cf').attr('action', _contextpath + '/hotel/list.action');
        $('#cf').removeAttr('target');
        $("#cf").submit();
    } else {
        return false;
    }
}

function validateQueryCondition() {

    if ($.trim($("#cityName").val()).length == 0) {
        daAlert($("#cityName"), noCityNameMsg);
        return false;
    }
    return validateCheckInAndOutDate();
}

function validateCheckInAndOutDate() {
    if (noneCheckinDate()) {
        daAlert($("#checkinDate"), noCheckInDateMsg);
        $("#checkinDate").trigger('click');
        return false;
    }

    if (noneCheckoutDate()) {
        daAlert($("#checkoutDate"), noCheckOutDateMsg);
        $("#checkoutDate").trigger('click');
        return false;
    }

    if (!checkDateTime($("#checkinDate").val()) || dateBefore(toDate($("#checkinDate").val()), toFormatDate(new Date()))) {
        daAlert($("#checkinDate"), checkInDateIncorrectMsg);
        $("#checkinDate").val("");
        $("#checkinDate").trigger('click');
        return false;
    }

    if (!checkDateTime($("#checkoutDate").val()) || dateBefore(toDate($("#checkoutDate").val()), toFormatDate(new Date()))) {
        daAlert($("#checkoutDate"), checkOutDateIncorrectMsg);
        $("#checkoutDate").val("");
        $("#checkoutDate").trigger('click');
        return false;
    }

    var checkIn = document.getElementById("checkinDate").value;
    var checkOut = document.getElementById("checkoutDate").value;
    if (checkIn >= checkOut) {
        daAlert($("#checkoutDate"), checkInGTOutDateMsg);
        $("#checkoutDate").click();
        return false;
    }

    if (getDayRanges(toDate(checkIn), toDate(checkOut)) > 15) {
        daAlert($("#checkoutDate"), dateOutOfRangeMsg);
        $("#checkoutDate").click();
        return false;
    }
    return true;
}

function noneCheckinDate() {
    return $("#checkinDate").val() == "" || $("#checkinDate").val() == date_default;
}

function noneCheckoutDate() {
    return $("#checkoutDate").val() == "" || $("#checkoutDate").val() == date_default;
}

function whenNoResultMessageHide() {
    if ($(".btnIsResearch span").attr("className") == "open") {
        $(".btnIsResearch").trigger("click");
    }
}

function showContactUs() {
    $.facebox($("#js_contact_us").html());
}

function sendMessage(ele) {
    $.ajax({
        dataType: "text",
        type: "POST",
        url: _contextpath + "/hotel/sendNoRoomrateMessage.action",
        data: $(ele).parent().parent().serialize(),
        success: function(data) {
             $.facebox.close();
        },
        async: true,
        timeout: 40000
    });

}