PageSourceSearch

https://www.phoenixreisen.com/public/js/hotel-integration.js

js phoenixreisen.com collected 2026-10-01 12:11:26 UTC 3,621 bytes, 132 lines download raw bytes

1let terminBadeReisenPicker = null;
2
3function initHotelIntegration() {
4    const  datepickedContainer = document.getElementById('badereisen-datepicked');
5    
6    if( datepickedContainer ) {
7       // populateDateRangeBox();
8     //   initDateRange();
9    }
10
11
12}
13
14function populateDateRangeBox() {
15    let  datepickedContainer = document.getElementById('badereisen-datepicked');
16    
17
18   
19
20    let startDate = moment().add(2, "days");
21    let endDate = startDate.clone().add(14, "days");
22
23    if( datepickedContainer.innerText !== "" ) {
24        let daterange = datepickedContainer.innerText.split("-");
25
26        if( daterange.length === 2 ) {
27            startDate = moment( daterange[0].replace(/\s/g, "" ).toDate() );
28            endDate = moment( daterange[1].replace(/\s/g, "" ).toDate() );
29        }
30    } 
31    
32    datePickedFormat( startDate, endDate );
33}
34
35function initDateRange() {
36
37    $(document).off('click', hideRangePickerLayer).on('click', hideRangePickerLayer);
38
39    let fromdate = false;
40    let todate = false;
41
42    const  datepickedContainer = document.getElementById('badereisen-datepicked');
43    //const daterange = datepickedContainer.innerText;
44
45    if( !datepickedContainer ) return;
46    
47    const daterange = datepickedContainer.innerText.split("-");
48    const minDate = datepickedContainer.getAttribute("data-mindate");
49    const maxDate = datepickedContainer.getAttribute("data-maxdate");
50
51
52    if( daterange.length === 2 ) {
53        fromdate = daterange[0].replace(/\s+/g, "").toDate();
54        todate = daterange[1].replace(/\s+/g, "").toDate();
55    }
56    
57    terminBadeReisenPicker = new Lightpick({ 
58        field: document.getElementById('termin-badereisen'),
59        singleDate: false,
60        selectForward: true,
61
62        startDate: fromdate ? moment( fromdate ) : moment( minDate ) ,
63        endDate: todate ? moment( todate ) : null,
64                    
65
66        minDays: 2,
67        lang: 'de',
68        locale: {
69            tooltip: {
70                one: 'Nacht',
71                other: 'Nächte'
72            },
73            buttons: {
74                prev: '←',
75                next: '→', 
76            }
77        },
78        parentEl: '#datarange-picker-wrap',
79        onSelect: datePickedFormat,
80        tooltipNights: true,
81        dropdowns: {
82            years: {
83                min: moment().year(),
84                max: moment().year() + 1
85            },
86        },
87        minDate: moment( minDate ),
88        maxDate: moment( maxDate),
89        inline: false
90    });
91}
92
93function stopProp( event ) {
94    event.stopPropagation();
95    
96}
97
98function toggleOpen( event, el ) {
99    console.log( el )
100}
101
102function datePickedFormat(start, end) {
103    const  datepickedContainer = document.getElementById('badereisen-datepicked');
104
105    let str = '';
106    str += start ? start.format('DD.MM.YYYY') + ' - ' : '';
107    str += end ? end.format('DD.MM.YYYY') : '...';
108    datepickedContainer.innerHTML = str;
109}
110
111function showBadeReisenPicker() {
112    const daterangeSelector = document.getElementById('daterange-selector');
113    daterangeSelector.classList.toggle("open");
114    terminBadeReisenPicker.show()
115}
116
117function toggleTravelersLayer( event, el ) {
118    console.log( el )
119}
120
121function toggleOptions( event, el ) {
122    $(el).next( ".dropdown-menu" ).toggle()
123}
124
125function hideDropDown( el ) {
126    $(el).closest(".dropdown-menu").hide()
127}
128
129function hideRangePickerLayer() {
130    console.log('hiding picker!')
131    $( '#daterange-selector' ).removeClass('open')
132}

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.