$ = jQuery; var bookingWidgetController = function () { return { init: function () { this.prepare_dependencies(); }, prepare_dependencies: function () { this.append_styles(); var language_widget = $("html").attr("lang"); $.getScript("//muni-kyoto-dot-bear-luxe.appspot.com/static_1/lib/selectric/jquery.selectric.1.8.js").done(function () { $.getScript("//muni-kyoto-dot-bear-luxe.appspot.com/static_1/lib/jquery-ui-1.10.1.custom.min.modified.js").done(function () { $.getScript("//muni-kyoto-dot-bear-luxe.appspot.com/static_1/js/datepicker/jquery.ui.datepicker-" + language_widget + ".js?v=1").done(function () { bookingWidgetController.get_booking_widget_html(language_widget); }); }); }); }, get_booking_widget_html: function (language_widget) { var parent_wrapper_widget = ""; $.get("//muni-kyoto-dot-bear-luxe.appspot.com/bearluxewidget/" + language_widget + "/", function (e) { parent_widget_wrapper = "
@@WIDGET@@
"; parent_wrapper_widget = parent_widget_wrapper.replace("@@WIDGET@@", e); }).done(function () { _set_datepicker_regional($); $("#paraty_booking_widget").append(parent_wrapper_widget); $("#paraty_booking_widget .paraty-booking-form").append($("#paraty-customer-id")); $("#paraty-customer-id").attr("name", "external_user_id"); $.getScript("//muni-kyoto-dot-bear-luxe.appspot.com/static_1/lib/jquery-i18n-1.1.1/jquery.i18n.js").done(function () { $.getScript("//muni-kyoto-dot-bear-luxe.appspot.com/static_1/i18n/messages_" + language_widget + ".js").done(function () { $.i18n.load(messages); $.getScript("//muni-kyoto-dot-bear-luxe.appspot.com/static_1/plugins/pricescalendar/calendar.plugin.js").done(function () { $.getScript("//muni-kyoto-dot-bear-luxe.appspot.com/static_1/plugins/dates-selector/datepicker_v1.js").done(function () { DP_extend_info.config.booking_version = '7'; DP_extend_info.config.hotel_path_endpoint = '//muni-kyoto-dot-bear-luxe.appspot.com'; DP_extend_info.config.custom_format_day_month = function (dateComponents) { dateComponents = dateComponents.split("/"); return "
" + dateComponents[2] + "
/
" + dateComponents[1] + "
/
" + dateComponents[0] + "
"; }; DP_extend_info.init(); $.getScript("//muni-kyoto-dot-bear-luxe.appspot.com/static_1/scripts/booking_7.js").done(function () { DP_extend_info.update_dates_v7($.datepicker.formatDate("dd/mm/yy", new Date())); bookingWidgetController.set_occupancy_number(); bookingWidgetController.prepare_rooms_modifications(); $("select.room_selector").unbind("change").change(bookingWidgetController.set_occupancy_number); $(".guest_selector").append($(".room_list_wrapper")); $(".room_list_wrapper").click(function (e) { e.stopPropagation(); }); $(".submit_button").html("" + $(".submit_button").text() + ""); }); }); }); }); }); }); }, append_styles: function () { var list_css = [ "//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css", "//muni-kyoto-dot-bear-luxe.appspot.com/static_1/plugins/pricescalendar/styles.css", "//muni-kyoto-dot-bear-luxe.appspot.com/static_1/plugins/dates-selector/css/datepicker_ext_inf.css", "//muni-kyoto-dot-bear-luxe.appspot.com/static_1/css/booking/booking_widget_bearluxe.css?v=1.24" ]; for (var i = 0; i < list_css.length; i++) { $('head').append($('').attr('href', list_css[i])); } }, set_occupancy_number: function () { var number_of_rooms = $("select[name='numRooms']").val(), adults_number = 0, kids_number = 0; if (number_of_rooms) { for (var room_loop = 1; room_loop <= number_of_rooms; room_loop++) { var actual_select_adults = $("select[name='adultsRoom" + room_loop + "']").val(), actual_select_kids = $("select[name='childrenRoom" + room_loop + "']").val(); if (actual_select_adults || actual_select_kids) { adults_number += parseInt(actual_select_adults); kids_number += parseInt(actual_select_kids); } } } var target_placeholder = $(".guest_selector .placeholder_text"), placeholder_string = ""; adults_number = parseInt(adults_number); var adult_tag = $("#adults_tag").val(); if ($("html").attr("lang") === "ja") { placeholder_string += "" + adult_tag.slice(0,2) + "" + adults_number + "" + adult_tag.slice(2) + ""; } else { placeholder_string += "" + adults_number + " " + adult_tag + ""; } if(!$(".adults_only_selector").length){ placeholder_string += " + " + kids_number + ""; } placeholder_string += ""; target_placeholder.html(placeholder_string); }, prepare_rooms_modifications: function () { var _room2 = $("#full_wrapper_booking .room2"); var _room3 = $("#full_wrapper_booking .room3"); $("#full_wrapper_booking select.rooms_number").unbind("change"); $("#full_wrapper_booking select.rooms_number").change(function (event) { var number = $(this).val(); if (number == 1) { _room2.hide(); _room3.hide(); } else if (number == 2) { _room2.show(); _room3.hide(); } else { _room2.show(); _room3.show(); } bookingWidgetController.set_occupancy_number(); }); } }; }(); bookingWidgetController.init();