PageSourceSearch

https://www.est-hotels.com/typo3temp/assets/compressed/merged-a40e…853f456ef1a58ca016d001cdad93f.js?1790674350

js est-hotels.com collected 2026-10-04 19:08:40 UTC 4,905 bytes, 114 lines download raw bytes

1
2function defer(method) {
3    if (window.jQuery) {
4        method();
5    } else {
6        setTimeout(function() { defer(method) }, 500);
7    }
8}
9defer(function () {
10    (function($) {
11
12        jQuery(document).ready(function() {
13
14            (function($){
15                $.fn.datepicker.dates['de'] = {
16                    days: ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"],
17                    daysShort: ["Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam"],
18                    daysMin: ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"],
19                    months: ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"],
20                    monthsShort: ["Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"],
21                    today: "Heute",
22                    monthsTitle: "Monate",
23                    clear: "Löschen",
24                    weekStart: 1,
25                    format: "dd.mm.yyyy"
26                };
27            }(jQuery));
28
29            // calendar
30            if ($("#quickbook").length > 0) {
31                $(".datepicker").datepicker({
32                    numberOfMonths: 2,
33                    language: "<f:format.raw>{settings.language}</f:format.raw>",
34                    keepOpen: false,
35                });
36            }
37
38            $(".bs-select").selectpicker();
39            $(".touchspin").TouchSpin({
40                verticalbuttons: true
41            });
42
43            $("#quickbook").on("submit", function(e) {
44                const form = e.target;
45
46                if (!form.qb_hotel.value) {
47                    $(form).find(".qb_hotel").focus().click();
48                    e.preventDefault();
49                }
50            });
51
52            function debounce(func, wait, immediate) {
53                var timeout;
54                return function() {
55                    var context = this, args = arguments;
56                    var later = function() {
57                        timeout = null;
58                        if (!immediate) func.apply(context, args);
59                    };
60                    var callNow = immediate && !timeout;
61                    clearTimeout(timeout);
62                    timeout = setTimeout(later, wait);
63                    if (callNow) func.apply(context, args);
64                };
65            };
66
67            var updateDates = debounce(function(e){
68                var d_from =  $("input#qb_dateFrom").data('datepicker').getDate();
69                var d_to =  $("input#qb_dateTo").data('datepicker').getDate();
70                if(d_from.getTime() >= d_to.getTime()) {
71                    if(e.currentTarget.id == "qb_dateFrom") {
72                        $("input#qb_dateTo").data('datepicker').setDate(new Date(d_from.valueOf() + 24*60*60*1000));
73                    } else if (e.currentTarget.id == "qb_dateTo") {
74                        $("input#qb_dateFrom").data('datepicker').show().setDate(new Date(d_to.valueOf() - 24*60*60*1000));
75                    }
76                }
77                $("input#" + e.currentTarget.id).data('datepicker').hide();
78                if(e.currentTarget.id == "qb_dateFrom") {
79                    $("input#qb_dateTo").data('datepicker').show();
80                }
81            }, 1000, true);
82
83            // Hotel-specific values and translated copy are provided by TYPO3 as JSON.
84            var form = document.getElementById("quickbook");
85            var configurationElement = form.parentElement.querySelector(".qb-config");
86            var hotelConfiguration = JSON.parse(configurationElement.textContent);
87
88            function updateHotelLabels(hotel) {
89                var configuration = hotelConfiguration[hotel] || hotelConfiguration._default;
90
91                $(form).find(".qb_rooms_label").text(configuration.accommodationLabel);
92                $(form).find(".qb_children_sublabel").text(configuration.childrenSublabel);
93                $(form).find(".qb_infants_sublabel").text(configuration.infantsSublabel);
94            }
95
96            jQuery("select#qb_hotel").change(function() {
97                updateHotelLabels(this.value);
98            }).trigger("change");
99
100            jQuery("input#qb_dateFrom, input#qb_dateTo").change(function(e){
101                updateDates(e);
102            });
103
104            jQuery("input#qb_adults, input#qb_children, input#qb_infants, input#qb_rooms").change(function(){
105                $("#number_children").html(parseInt($("input#qb_children").val()) + parseInt($("input#qb_infants").val()));
106                $("#number_adults").html($("input#qb_adults").val());
107                $("#number_rooms").html($("input#qb_rooms").val());
108            });
109
110            $('button.bootstrap-touchspin-up, button.bootstrap-touchspin-down').on({ "click":function(e){ e.stopPropagation(); } });
111
112        });
113    })( jQuery );
114});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.