PageSourceSearch

https://hotel.com.pl/cms/portal/js/profil/reservations/kontoactions.js?12022026

js hotel.com.pl collected 2026-10-01 12:08:09 UTC 17,371 bytes, 294 lines download raw bytes

1//Lang Config
2var langbox = document.querySelector('.lang-box button').textContent.trim().toUpperCase();
3if (langbox == 'PL') {
4var akcje = 'Akcje';
5var yes = 'TAK';
6var no = 'NIE';
7var usermailURL = '/pl/konto/profil';
8var tooltip = "<th class='pdfcolumn' scope='col'><span class='tooltippdf' style='display:flex'><span class='tooltiptextpdf'>Aby pobrać szczegóły, kliknij w poniższy przycisk.</span>Pobierz <em style='font-size:11px;margin-left:3px;' class='fal fa-info'></em></span></th>";
9var getpdf = "<td style='text-align:center' class='pdfcont'><a style='color:#000' class='pdfgenb' target='_blank'><span class='tooltippdf2'><em class='fal fa-file-pdf'><span class='tooltiptextpdf2'>Pobierz PDF</span></em></span></a></td>";
10var anulacjamodal = '<div class="loaderbar"></div><div style="display:none" class="errorempty">Przepraszamy za niedogodności związane z problemami technicznymi. Sugerujemy kontakt bezpośrednio ze wsparciem technicznym w celu uzyskania dodatkowych informacji:<br><br> <em class="fa-sharp fa-light fa-envelope"></em><a style="padding-left:7px" href="mailto:[email protected]">[email protected]</a></div><div style="visibility:hidden" class="errorcnc">Bardzo nam przykro, ale termin bezkosztowej anulacji został przekroczony. <span style="display:none" id="showdays">Dla tej rezerwacji wynosi <span id="calcdays"></span> dni przed datą przyjazdu.</span><span style="display:none" id="showdate">W przypadku tej rezerwacji bezpłatna anulacja możliwa do <span id="calcdate"></span></span><span style="display:none" id="showhour">W przypadku tej rezerwacji bezpłatna anulacja możliwa do <span id="calchour"></span> w dniu przyjazdu.</span> Sugerujemy kontakt bezpośrednio z hotelem w celu uzyskania dodatkowych informacji:<br><br> <em class="fa-sharp fa-light fa-envelope"></em><a style="padding-left:7px" id="hotelmail" href=""></a><br> <em class="fa-sharp fa-light fa-phone"></em><a style="padding-left:7px" id="hotelphone" href=""></a></div>';
11var wait = '<em style="padding-right:7px" class="fa-light fa-calendar-clock"></em>Czekaj...';
12var resdataurl = '/pl/konto/rezerwacjaPodglad/';
13var failedcancel = '<em style="padding-right:7px" class="fa-light fa-calendar-xmark"></em>Anulacja niemożliwa';
14var confirmcancel = '<em style="padding-right:7px" class="fa-light fa-calendar-check"></em>Potwierdź operację';
15var techerror = '<em style="padding-right:7px" class="fa-light fa-exclamation-triangle"></em>Błąd techniczny';
16var checkint = 'Meldunek';
17}
18if (langbox == 'EN') {
19var akcje = 'Actions';
20var yes = 'YES';
21var no = 'NO';
22var usermailURL = '/en/user/profile';
23var tooltip = "<th class='pdfcolumn' scope='col'><span class='tooltippdf' style='display:flex'><span class='tooltiptextpdf'>To download details, click the button below.</span>Download <em style='font-size:11px;margin-left:3px;' class='fal fa-info'></em></span></th>";
24var getpdf = "<td style='text-align:center' class='pdfcont'><a style='color:#000' class='pdfgenb' target='_blank'><span class='tooltippdf2'><em class='fal fa-file-pdf'><span class='tooltiptextpdf2'>Download PDF</span></em></span></a></td>";
25var anulacjamodal = '<div class="loaderbar"></div><div style="display:none" class="errorempty">We apologize for the inconvenience caused by technical issues. We suggest you contact technical support directly for more information:<br><br> <em class="fa-sharp fa-light fa-envelope"></em><a style="padding-left:7px" href="mailto:[email protected]">[email protected]</a></div><div style="visibility:hidden" class="errorcnc">We are very sorry, but the free cancellation deadline has been exceeded. <span style="display:none" id="showdays">For this reservation it is <span id="calcdays"></span> days before the arrival date.</span><span style="display:none" id ="showdate">Free cancellation possible for this booking till <span id="calcdate"></span></span><span style="display:none" id="showhour">Free cancellation for this booking possible until <span id="calchour"></span> on arrival.</span> We suggest contacting the hotel directly for additional information: <a id="hotelmail" href=""></a>
25, <a id="hotelphone" href=""></a></div>';
26var wait = '<em style="padding-right:7px" class="fa-light fa-calendar-clock"></em>Wait...';
27var resdataurl = '/en/konto/rezerwacjaPodglad/';
28var failedcancel = '<em style="padding-right:7px" class="fa-light fa-calendar-xmark"></em>Cancellation is not possible';
29var confirmcancel = '<em style="padding-right:7px" class="fa-light fa-calendar-check"></em>Confirm action';
30var techerror = '<em style="padding-right:7px" class="fa-light fa-exclamation-triangle"></em>Technical issue';
31var checkint = 'Checkin';
32}
33if (langbox == 'RU') {
34var akcje = 'Действия';
35var yes = 'ДА';
36var no = 'НЕТ';
37var usermailURL = '/ru/user/profile';
38var tooltip = "<th class='pdfcolumn' scope='col'><span class='tooltippdf' style='display:flex'><span class='tooltiptextpdf'>Чтобы скачать подробную информацию, нажмите кнопку ниже.</span>Скачать <em style='font-size:11px;margin-left:3px;' class='fal fa-info'></em></span></th>";
39var getpdf = "<td style='text-align:center' class='pdfcont'><a style='color:#000' class='pdfgenb' target='_blank'><span class='tooltippdf2'><em class='fal fa-file-pdf'><span class='tooltiptextpdf2'>Скачать PDF</span></em></span></a></td>";
40var anulacjamodal = '<div class="loaderbar"></div><div style="display:none" class="errorempty">Приносим извинения за неудобства, вызванные техническими проблемами. Мы рекомендуем напрямую обращаться в службу технической поддержки для получения дополнительной информации:<br><br> <em class="fa-sharp fa-light fa-envelope"></em><a style="padding-left:7px" href ="mailto:[email protected]">[email protected]</a></div><div style="visibility:hidden" class="errorcnc">Нам очень жаль, но срок бесплатной отмены был превышен. <span style="display:none" id="showdays">Для этого бронирования до даты прибытия осталось <span id="calcdays"></span> дней.</span><span style="display:none " id ="showdate">Для этого бронирования возможна бесплатная отмена <span id="calcdate"></span></span><span style="display:none" id="showhour">Возможна бесплатная отмена для этого бронирования до <span id="calchour"></span> в день заезда.</span> Мы предлагаем связаться напрямую с отелем для получения дополнительной информации: <a id="hotelmail" href=""></a>, <a id="hotelphone" href=""></a></div>';
41var wait = '<em style="padding-right:7px" class="fa-light fa-calendar-clock"></em>Подождите...';
42var resdataurl = '/ru/konto/rezerwacjaPodglad/';
43var failedcancel = '<em style="padding-right:7px" class="fa-light fa-calendar-xmark"></em>Отмена бронирования невозможна';
44var confirmcancel = '<em style="padding-right:7px" class="fa-light fa-calendar-check"></em>Подтвердите действие';
45var techerror = '<em style="padding-right:7px" class="fa-light fa-exclamation-triangle"></em>Техническая ошибка';
46var checkint = 'Регистрация';
47}
48var selector = 'input[name="Email"]';
49
50if (window.location.href.indexOf("hotel.com.pl") > -1) {
51var basesql = 'https://serwer1468409.home.pl/lbooking/extras/basesqln.php';
52} else {
53var basesql = 'https://serwer1468409.home.pl/lbooking/extras/basesql2n.php';	
54}
55
56//Zameldowanie
57document.querySelector('.table.w-100.rsvs thead:first-of-type tr th:nth-child(9)').innerHTML = akcje;
58var div1 = document.createElement('div');
59div1.style.display = 'none';
60div1.className = 'chcont';
61var div2 = document.createElement('div');
62div2.style.display = 'none';
63var iframe = document.createElement('iframe');
64iframe.id = 'deleteall';
65iframe.src = '';
66div2.appendChild(iframe);
67document.body.appendChild(div1);
68document.body.appendChild(div2);
69
70
71$('.btn.btn-primary.btn-sm.px-4:contains("'+yes+'")').attr('id', 'yes');
72$('.btn.btn-secondary.btn-sm.px-4:contains("'+no+'")').attr('id', 'no');
73
74function getURLParameter(url, name) {
75return (RegExp(name + '=' + '(.+?)(&|$)').exec(url)||[,null])[1];
76}
77
78async function loadUserEmailAndReservations() {
79try {
80const res = await fetch(usermailURL);
81if (!res.ok) throw new Error('Network error: ' + res.status);
82const html = await res.text();
83const parser = new DOMParser();
84const doc = parser.parseFromString(html, 'text/html');
85const input = doc.querySelector(selector);
86if (!input) throw new Error('Email input not found');
87$('.usermailoutputn').html(input.outerHTML);
88if ($('#reservationsForm .drop').length === 0) return;
89$('.table.w-100.rsvs thead:first tr').append(tooltip);
90$('.rsvs-view .data').append(getpdf);
91const encodedurl = Math.floor(Math.random() * 1e14 + 1);
92const emailid = $(".usermailoutputn input").val();
93try {
94const signedUrlResponse = await fetch(`${basesql}?emailid=${emailid}`);
95const signedUrl = await signedUrlResponse.text();
96const dataResponse = await fetch(signedUrl);
97const data = await dataResponse.text();
98$(".chcont").html(data);
99} catch (error) {
100console.error("Error fetching content:", error);
101}
102const cssstyle = "background:green;color:#fff;";
103const htmlstyle = checkint;
104const klientbase = 'https://serwer1468409.home.pl/lbooking/extras/backend/potwierdzenia/checkin_';
105let IDRESB = 0;
106$('.chbtn').each(function () {
107this.href = this.href.replace(/&clientemail=/g, '&clientmail=');
108const url = $(this).attr('href');
109const cat = getURLParameter(url, 'resid');
110IDRESB++;
111$(this).attr('data-res', cat);
112const getbase = cat;
113$(".chcont .resitem:contains('" + getbase + "')")
114.insertBefore(this)
115.attr("style", cssstyle)
116.html(htmlstyle)
117.addClass('chbtn')
118.show()
119.end()
120.next()
121.remove();
122});
123$('.pdfgenb').each(function () {
124const $p = $(this).parent();
125const getbase2 = $p.prev().prev().prev().prev().prev().prev().prev().prev().text().trim();
126$(".chcont .resitem2:contains('" + getbase2 + "')").insertBefore(this);
127const gethash = $(this).prev().attr('data-hash');
128const resid = $p.prev().prev().prev().prev().prev().prev().prev().prev().text().trim();
129const objectid = $p.prev().prev().prev().prev().prev().prev().text().trim();
130const currentid = $p.prev().prev().prev().prev().prev().prev().prev().text().trim();
131const tokenlevel = $(this).prev().attr('data-level');
132if (typeof $(this).prev().data('level') !== 'undefined') {
133$p.prev().prev().prev().append(`<div class="token">${tokenlevel}</div>`);
134}
135$('.token').each(function () {
136$(this).text($(this).text().replace('vitkac', ''));
137});
138$('.token:empty').remove();
139$('.token:contains("bronze")').css({ backgroundColor: 'saddlebrown', color: '#fff' });
140$('.token:contains("silver")').css({ backgroundColor: '#c5c5c5', color: '#252b2d' });
141$('.token:contains("gold")').css({ backgroundColor: 'goldenrod', color: '#fff' });
142const pdfurl = `https://serwer1468409.home.pl/lbooking/extras/outputrespdf.php?hash=${gethash}&resid=${resid}&objectid=${objectid}&currentid=${currentid}`;
143$(this).attr('data-url', pdfurl).end().prev().remove();
144$(this).click(function () {
145const getpdfurl = $(this).data('url');
146fetch(getpdfurl).then(response => response.blob()).then(blob => {
147const url = window.URL.createObjectURL(blob);
148window.open(url);
149window.URL.revokeObjectURL(url);
150}).catch(err => console.error('Error fetching PDF:', err));
151});
152});
153const klientbase2 = 'https://serwer1468409.home.pl/lbooking/extras/backend/potwierdzenia/checkin_';
154$('.lnk-grey').each(function () {
155$(this).on('click', function () {
156const copy = $(this).prev().attr("data-res");
157//$('#deleteall').attr('src', klientbase2 + copy + '.php');
158});
159});
160$('#yes').on('click', function () {
161const deleteframe = $('#deleteall').attr('src');
162//$('#deleteall').attr('src', deleteframe + '?delete');
163});
164$('#no').on('click', function () {
165//$('#deleteall').removeAttr('src');
166});
167} catch (error) {
168console.error('Async error:', error);
169}
170}
171loadUserEmailAndReservations();
172
173//Anulacja limit
174$(anulacjamodal).insertAfter('#cancelReservationModal .modal-header');
175$('.changeloadercont').prependTo('.loaderbar').show();
176$('#cancelReservationModal .modal-footer, #cancelReservationModal .modal-body, .errorempty').hide();
177$('#cancelReservationModal .modal-title').html(wait);
178$('.lnk-grey').each(function() {
179$(this).click(function() { 
180$('#cancelReservationModal .modal-footer, #cancelReservationModal .modal-body, .errorempty').hide();
181$('#cancelReservationModal .modal-title').html(wait);
182var tableresnumber = $(this).parent().prev().prev().prev().prev().prev().prev().prev().text().split("-").pop().trim();
183var hotelname = $(this).parent().prev().prev().prev().prev().prev().text().replace(/\&/g, '%26').toLowerCase().trim();
184var ratecode = $(this).parent().prev().prev().prev().prev().prev().prev().prev().text().trim().split('-',1)[0];
185$('#hotellimit').val(hotelname);
186$('#dayslimit').val('');
187$('#yes').attr('disabled', 'disabled');
188$('.errorcnc').attr('style', 'visibility:hidden');
189$('.loaderbar').show();
190$('#progress_percentage').text('10%');
191var bar=$('#progress_bar');
192var percentage=parseInt($('#progress_percentage').html());
193function stopProgress(){
194clearInterval(progress);
195}
196var progress= setInterval(function(){
197percentage++;
198if (percentage<=100){
199$('#progress_percentage').html(percentage+'%');
200if (percentage>10) {
201bar.css('width',percentage+'%');
202}
203} else {
204stopProgress()
205}
206},30);
207$('#getresnmbr').load(resdataurl + tableresnumber + " tbody tr:first", function() {
208$('.text-nowrap span, tr td:nth-child(2) span').remove();
209var hotellimit = $('#hotellimit').val().toLowerCase();
210var arrivallimit = $('#getresnmbr tr td:nth-child(3)').text().trim();
211var ratelimit = $('#getresnmbr tr td:nth-child(2)').text().trim();
212$('#arrivallimit').val(arrivallimit);
213$('#ratelimit').val(ratelimit);
214var ratelimitf = $('#ratelimit').val();
215var arrivallimitf = $('#arrivallimit').val();
216
217var currentDate = new Date();
218var currentHour = currentDate.getHours();
219var currentMinute = currentDate.getMinutes();
220var currentSecond = currentDate.getSeconds();
221var clienttime = currentHour + ':' + currentMinute;
222var portal = window.location.hostname;
223
224setTimeout(function(){
225var xmlhttpcn = new XMLHttpRequest();
226xmlhttpcn.onreadystatechange = function() {
227if (this.readyState == XMLHttpRequest.DONE) {
228var myObj = JSON.parse(this.responseText); 
229$('#dayslimit').val(myObj.getresponse);
230$('#dayslimitrate').val(myObj.dayslimit);
231$('#calcdate').text(myObj.datelimit);	
232$('#calchour').text(myObj.hourslimit);	
233var dayslimit = $('#dayslimitrate').val();
234if (dayslimit != ''){
235$('#showhour, #showdate').hide();
236$('#showdays').show();
237} 
238if ($('#calcdate').text().trim().length) {
239$('#showhour, #showdays').hide();
240$('#showdate').show();
241}
242if ($('#calchour').text().trim().length) { 
243$('#showdate, #showdays').hide();
244$('#showhour').show();
245}
246$('#hotelmail').attr('href', myObj.getmail).text(myObj.getmail);
247$('#hotelphone').attr('href', myObj.getphone).text(myObj.getphone);
248setTimeout(function(){
249var finalresult = $('#dayslimit').val().trim();
250if (finalresult == 'error') {
251$('#cancelReservationModal .modal-title').html(failedcancel);
252var daysrate = $('#dayslimitrate').val();
253$('#calcdays').text(daysrate);
254$('.errorcnc').attr('style', 'visibility:visible');
255$('#cancelReservationModal .modal-footer, #cancelReservationModal .modal-body').hide();
256$('#yes').attr('disabled', 'disabled');
257}
258if (finalresult == 'success') { 
259$('#cancelReservationModal .modal-title').html(confirmcancel);
260$('.errorcnc').hide();
261$('#cancelReservationModal .modal-footer, #cancelReservationModal .modal-body').show();
262$('#yes').removeAttr('disabled');
263}
264$('.loaderbar').hide();
265}, 3070);
266}
267setTimeout(function(){
268var finalresult = $('#dayslimit').val().trim();
269if (finalresult == '') { 
270$('#cancelReservationModal .modal-title').html(techerror);
271$('.loaderbar, .errorcnc').hide();
272$('.errorempty').show();
273$('#cancelReservationModal .modal-footer, #cancelReservationModal .modal-body').hide();
274$('#yes').attr('disabled', 'disabled');
275}
276}, 3070);
277}
278xmlhttpcn.open("GET", "https://serwer1468409.home.pl/lbooking/extras/rates/getratedays.php?hotelname=" + hotellimit + '&ratename=' + ratelimitf + '&arrivalname=' + arrivallimitf + '&clienttime=' + clienttime + '&portal=' + portal + '&ratecode=' + ratecode, true);
279xmlhttpcn.send();
280}, 100);
281});
282});
283});
284
285//Filtrowanie
286const head = document.head;
287const script1 = document.createElement('script');
288script1.src = '/cms/portal/js/filtry/kalendarz/kalendarz.js?12022026';
289script1.type = 'text/javascript';
290const script2 = document.createElement('script');
291script2.src = '/cms/portal/js/profil/reservations/filterrez.js?12022026';
292script2.type = 'text/javascript';
293head.appendChild(script1);
294head.appendChild(script2);

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.