PageSourceSearch

https://blueskyluxury.com/st-lucia/?code-snippets-js-snippets=head&ver=315

js blueskyluxury.com collected 2026-10-05 19:21:44 UTC 16,905 bytes, 31 lines download raw bytes

1document.addEventListener("DOMContentLoaded",function(){document.querySelectorAll(".blog-cards .kb-query-item").forEach(function(item){item.addEventListener("click",function(){let modal=this.querySelector(".kadence-block-pro-modal");let isOpen=modal.classList.toggle("is-open");modal.setAttribute("aria-hidden",!isOpen)})});const formId=7;const pages=document.querySelectorAll(`#gform_${formId} .gform_page`);pages.forEach((page,index)=>{if(page.style.display==="none"){page.classList.remove('active')}else{page.classList.add('active')}})
2const pages2=document.querySelectorAll(`#gform_12 .gform_page`);pages2.forEach((page,index)=>{if(page.style.display==="none"){page.classList.remove('active')}else{page.classList.add('active')}})
3document.addEventListener('scroll',function(){const header=document.querySelector('header .site-header-upper-inner-wrap');const height=header.offsetHeight;const section=document.querySelector('.filter-widget');if(section){if(window.scrollY>0){section.classList.add('scrolled')}else{section.classList.remove('scrolled')}}})});document.addEventListener('DOMContentLoaded',function(){gform.addFilter('gform_datepicker_options_pre_init',function(options,element){options.minDate=2;options.maxDate="+1Y";return options});document.querySelectorAll(".gform_wrapper .gf_readonly input, .gform_wrapper .gf_readonly select, .gform_wrapper .gf_readonly textarea").forEach(el=>{el.readOnly=!0});const expField=document.querySelector('#input_7_18');if(expField){expField.setAttribute('inputmode','numeric');expField.setAttribute('autocomplete','cc-exp');expField.maxLength=5;expField.addEventListener('input',(e)=>{let digits=e.target.value.replace(/\D/g,'').slice(0,4);let mm=digits.slice(0,2);if(mm.length===1){if(mm>'1')mm='0'+mm}else if(mm.length===2){let m=parseInt(mm,10);if(m===0)m=1;if(m>12)m=12;mm=String(m).padStart(2,'0')}
4const yy=digits.slice(2);let formatted=mm;if(digits.length>=3){formatted+='/'+yy}else if(digits.length>=2){formatted+='/'}
5e.target.value=formatted});expField.addEventListener('blur',(e)=>{const val=e.target.value;if(!val)return;const[m,y='']=val.split('/');if(m&&m.length===1){e.target.value=m.padStart(2,'0')+(y!==''?'/'+y:'/')}})}
6const expFieldPayment=document.querySelector('#input_12_18');if(expFieldPayment){expFieldPayment.setAttribute('inputmode','numeric');expFieldPayment.setAttribute('autocomplete','cc-exp');expFieldPayment.maxLength=5;expFieldPayment.addEventListener('input',(e)=>{let digits=e.target.value.replace(/\D/g,'').slice(0,4);let mm=digits.slice(0,2);if(mm.length===1){if(mm>'1')mm='0'+mm}else if(mm.length===2){let m=parseInt(mm,10);if(m===0)m=1;if(m>12)m=12;mm=String(m).padStart(2,'0')}
7const yy=digits.slice(2);let formatted=mm;if(digits.length>=3){formatted+='/'+yy}else if(digits.length>=2){formatted+='/'}
8e.target.value=formatted});expFieldPayment.addEventListener('blur',(e)=>{const val=e.target.value;if(!val)return;const[m,y='']=val.split('/');if(m&&m.length===1){e.target.value=m.padStart(2,'0')+(y!==''?'/'+y:'/')}})}
9const ccField=document.querySelector('#input_7_16');if(ccField){ccField.setAttribute('inputmode','numeric');ccField.setAttribute('autocomplete','cc-number');ccField.maxLength=23;const formatCC=(val)=>val.replace(/\D/g,'').slice(0,19).match(/.{1,4}/g)?.join(' ')||'';ccField.addEventListener('input',(e)=>{const cursor=e.target.selectionStart;const prev=e.target.value;const digitsBefore=prev.slice(0,cursor).replace(/\D/g,'').length;e.target.value=formatCC(e.target.value);let p=0,d=0;while(p<e.target.value.length&&d<digitsBefore){if(/\d/.test(e.target.value[p]))d++;p++}
10e.target.setSelectionRange(p,p)});ccField.addEventListener('keydown',(e)=>{if(e.key==='Backspace'){const{selectionStart,selectionEnd,value}=e.target;if(selectionStart===selectionEnd&&value[selectionStart-1]===' '){e.preventDefault();const before=value.slice(0,selectionStart-1);const after=value.slice(selectionStart);const formatted=formatCC((before+after).replace(/\s/g,''));e.target.value=formatted;const pos=Math.max(0,selectionStart-1);e.target.setSelectionRange(pos,pos)}}});ccField.addEventListener('blur',(e)=>{e.target.value=e.target.value.trim()})}
11const ccFieldPayment=document.querySelector('#input_12_16');if(ccFieldPayment){ccFieldPayment.setAttribute('inputmode','numeric');ccFieldPayment.setAttribute('autocomplete','cc-number');ccFieldPayment.maxLength=23;const formatCC=(val)=>val.replace(/\D/g,'').slice(0,19).match(/.{1,4}/g)?.join(' ')||'';ccFieldPayment.addEventListener('input',(e)=>{const cursor=e.target.selectionStart;const prev=e.target.value;const digitsBefore=prev.slice(0,cursor).replace(/\D/g,'').length;e.target.value=formatCC(e.target.value);let p=0,d=0;while(p<e.target.value.length&&d<digitsBefore){if(/\d/.test(e.target.value[p]))d++;p++}
12e.target.setSelectionRange(p,p)});ccFieldPayment.addEventListener('keydown',(e)=>{if(e.key==='Backspace'){const{selectionStart,selectionEnd,value}=e.target;if(selectionStart===selectionEnd&&value[selectionStart-1]===' '){e.preventDefault();const before=value.slice(0,selectionStart-1);const after=value.slice(selectionStart);const formatted=formatCC((before+after).replace(/\s/g,''));e.target.value=formatted;const pos=Math.max(0,selectionStart-1);e.target.setSelectionRange(pos,pos)}}});ccFieldPayment.addEventListener('blur',(e)=>{e.target.value=e.target.value.trim()})}
13const cvvSelectors=['#input_12_17','#input_7_17'];document.addEventListener('input',(e)=>{if(!e.target.matches(cvvSelectors.join(', ')))return;e.target.value=e.target.value.replace(/\D/g,'').slice(0,4)});function ymdFromInput(sel){const el=document.querySelector(sel);if(!el||!el.value)return null;const[m,d,y]=el.value.split('/');if(!m||!d||!y)return null;return y+'-'+m.padStart(2,'0')+'-'+d.padStart(2,'0')}
14function makeArrivalHighlight(arrivalSel){return function(date){const el=document.querySelector(arrivalSel);const ymd=jQuery.datepicker.formatDate('yy-mm-dd',date);const isArrival=el&&el.value&&ymd===ymdFromInput(arrivalSel);return[!0,isArrival?'bsl-arrival-day':'',isArrival?'Your arrival date ('+el.value+')':'']}}
15const searchArrival=document.querySelector('#input_4_1');const searchDeparture=document.querySelector('#input_4_3');gform.addAction('gform_input_change',function(elem,formId,fieldId){if(formId==4&&fieldId==1){const[month,day,year]=searchArrival.value.split('/');const arrivalDate=new Date(`${year}-${month}-${day}`);console.log(arrivalDate)
16if(!(arrivalDate instanceof Date&&!isNaN(arrivalDate)))return;
16const minDeparture=new Date(arrivalDate);minDeparture.setDate(minDeparture.getDate()+3);jQuery(searchDeparture).datepicker('destroy').datepicker({dateFormat:'mm/dd/yy',minDate:minDeparture,maxDate:'+1Y',changeMonth:!0,changeYear:!0,beforeShowDay:makeArrivalHighlight('#input_4_1')});if(!searchDeparture.value){setTimeout(function(){jQuery(searchDeparture).focus().datepicker('show')},150)}}})
17const onlineBooking=document.querySelector('.online-booking');if(onlineBooking){if(onlineBooking.textContent=='1'){const formSubmit=document.querySelector('#gform_submit_button_3');formSubmit.style.display='none'}}
18const btn=document.querySelector('.copy-url-button');if(btn){btn.addEventListener('click',function(e){e.preventDefault();navigator.clipboard.writeText(window.location.href).then(()=>{const originalText=btn.querySelector('.kt-btn-inner-text').textContent;btn.querySelector('.kt-btn-inner-text').textContent='Copied!';setTimeout(()=>{btn.querySelector('.kt-btn-inner-text').textContent=originalText},2000)}).catch(err=>{console.error('Failed to copy URL:',err)})})}
19document.querySelectorAll(".read-more-desc").forEach(function(bttn){bttn.addEventListener("click",function(){const container=bttn.closest(".kb-query-item");if(container){var target=container.querySelector(".property-desc")}else{var target=document.querySelector(".property-desc")}
20var btnText=bttn.querySelector(".kt-btn-inner-text");if(target.classList.contains("expanded")){target.classList.remove("expanded");btnText.textContent="Read more";bttn.classList.remove("read-less")}else{target.classList.add("expanded");btnText.textContent="Read less";bttn.classList.add("read-less")}})})});document.addEventListener('DOMContentLoaded',function(){if(document.body.classList.contains('page-id-36')){var selectedServices=new Set(JSON.parse(localStorage.getItem('selectedServices')||'[]'));const serviceCards=document.querySelectorAll('.kb-query-item.type-services');const selectedDiv=document.getElementById('selected-services');const selectedList=document.getElementById('selected-service-list');const hiddenField=document.querySelector('#input_9_10');function updateSelectedList(){console.log()
21selectedList.innerHTML='';selectedServices.forEach(name=>{const li=document.createElement('div');li.textContent=name;const removeBtn=document.createElement('span');removeBtn.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><mask id="mask0_494_6760" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"><rect width="24" height="24" fill="#D9D9D9"/></mask><g mask="url(#mask0_494_6760)"><path d="M7.30775 20.5C6.80908 20.5 6.38308 20.3234 6.02975 19.9702C5.67658 19.6169 5.5 19.1909 5.5 18.6922V5.99998H4.5V4.49998H9V3.61548H15V4.49998H19.5V5.99998H18.5V18.6922C18.5 19.1974 18.325 19.625 17.975 19.975C17.625 20.325 17.1974 20.5 16.6923 20.5H7.30775ZM17 5.99998H7V18.6922C7 18.7821 7.02883 18.8558 7.0865 18.9135C7.14417 18.9711 7.21792 19 7.30775 19H16.6923C16.7692 19 16.8398 18.9679 16.9038 18.9037C16.9679 18.8397 17 18.7692 17 18.6922V5.99998ZM9.404 17H10.9037V7.99998H9.404V17ZM13.0962 17H14.596V7.99998H13.0962V17Z" fill="#1C1B1F"/></g></svg>';removeBtn.style.lineHeight='1';removeBtn.style.cursor='pointer';removeBtn.addEventListener('click',function(){selectedServices.delete(name);localStorage.setItem('selectedServices',JSON.stringify(Array.from(selectedServices)));updateSelectedList();serviceCards.forEach(card=>{const h4=card.querySelector('h4');const btn=card.querySelector('.add-service');if(h4&&btn&&h4.textContent.trim()===name){updateButtonState(btn,!1)}})});li.appendChild(removeBtn);selectedList.appendChild(li)});selectedDiv.style.display=selectedServices.size>0?'block':'none';localStorage.setItem('selectedServices',JSON.stringify(Array.from(selectedServices)));if(hiddenField){hiddenField.value=Array.from(selectedServices).join(', ')}}
22function updateButtonState(serviceButton,isSelected){const innerText=serviceButton.querySelector('.kt-btn-inner-text');const iconWrap=serviceButton.querySelector('.kb-svg-icon-wrap');if(isSelected){serviceButton.classList.add('selected');innerText.textContent='selected';iconWrap.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" viewBox="0 0 21 20" fill="none"><path d="M7.82923 13.2291L4.35423 9.75414L3.1709 10.9291L7.82923 15.5875L17.8292 5.58748L16.6542 4.41248L7.82923 13.2291Z" fill="#000F16"/></svg>'}else{serviceButton.classList.remove('selected');innerText.textContent='request this service';iconWrap.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><line x1="12" y1="5" x2="12" y2="19"></line><line x1="5" y1="12" x2="19" y2="12"></line></svg>'}}
23serviceCards.forEach(card=>{const serviceNameElement=card.querySelector('h4');const serviceButton=card.querySelector('.add-service');if(serviceNameElement&&serviceButton){const serviceName=serviceNameElement.textContent.trim();if(selectedServices.has(serviceName)){updateButtonState(serviceButton,!0)}
24serviceButton.addEventListener('click',function(){const isSelected=selectedServices.has(serviceName);if(isSelected){selectedServices.delete(serviceName)}else{selectedServices.add(serviceName)}
25updateButtonState(serviceButton,!isSelected);updateSelectedList()})}});updateSelectedList();const targetFormId=9;const confirmationSelector=`#gform_confirmation_message_${targetFormId}`;const observer=new MutationObserver((mutationsList)=>{for(const mutation of mutationsList){if(mutation.type==='childList'&&document.querySelector(confirmationSelector)){console.log('Form submitted and confirmation loaded! Clearing selections.');selectedServices.clear();localStorage.removeItem('selectedServices');window.location.reload();observer.disconnect();break}}});const formContainer=document.getElementById(`gform_wrapper_${targetFormId}`);if(formContainer){observer.observe(formContainer,{childList:!0,subtree:!0})}}
26if(document.body.classList.contains('page-id-120')){var selectedServices=new Set(JSON.parse(localStorage.getItem('selectedPropMngServices')||'[]'));const serviceCards=document.querySelectorAll('.kb-query-item.prop_mng_services');const selectedDiv=document.getElementById('selected-prop-mng-services');const selectedList=document.getElementById('selected-prop-mng-service-list');const hiddenField=document.querySelector('#input_11_10');function updateSelectedList(){selectedList.innerHTML='';
26selectedServices.forEach(name=>{const li=document.createElement('div');li.textContent=name;const removeBtn=document.createElement('span');removeBtn.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><mask id="mask0_494_6760" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"><rect width="24" height="24" fill="#D9D9D9"/></mask><g mask="url(#mask0_494_6760)"><path d="M7.30775 20.5C6.80908 20.5 6.38308 20.3234 6.02975 19.9702C5.67658 19.6169 5.5 19.1909 5.5 18.6922V5.99998H4.5V4.49998H9V3.61548H15V4.49998H19.5V5.99998H18.5V18.6922C18.5 19.1974 18.325 19.625 17.975 19.975C17.625 20.325 17.1974 20.5 16.6923 20.5H7.30775ZM17 5.99998H7V18.6922C7 18.7821 7.02883 18.8558 7.0865 18.9135C7.14417 18.9711 7.21792 19 7.30775 19H16.6923C16.7692 19 16.8398 18.9679 16.9038 18.9037C16.9679 18.8397 17 18.7692 17 18.6922V5.99998ZM9.404 17H10.9037V7.99998H9.404V17ZM13.0962 17H14.596V7.99998H13.0962V17Z" fill="#1C1B1F"/></g></svg>';removeBtn.style.lineHeight='1';removeBtn.style.cursor='pointer';removeBtn.addEventListener('click',function(){selectedServices.delete(name);localStorage.setItem('selectedPropMngServices',JSON.stringify(Array.from(selectedServices)));updateSelectedList();serviceCards.forEach(card=>{const h4=card.querySelector('h4');const btn=card.querySelector('.add-service');if(h4&&btn&&h4.textContent.trim()===name){updateButtonState(btn,!1)}})});li.appendChild(removeBtn);selectedList.appendChild(li)});selectedDiv.style.display=selectedServices.size>0?'block':'none';localStorage.setItem('selectedPropMngServices',JSON.stringify(Array.from(selectedServices)));if(hiddenField){hiddenField.value=Array.from(selectedServices).join(', ')}}
27function updateButtonState(serviceButton,isSelected){const innerText=serviceButton.querySelector('.kt-btn-inner-text');const iconWrap=serviceButton.querySelector('.kb-svg-icon-wrap');if(isSelected){serviceButton.classList.add('selected');innerText.textContent='selected';iconWrap.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" viewBox="0 0 21 20" fill="none"><path d="M7.82923 13.2291L4.35423 9.75414L3.1709 10.9291L7.82923 15.5875L17.8292 5.58748L16.6542 4.41248L7.82923 13.2291Z" fill="#000F16"/></svg>'}else{serviceButton.classList.remove('selected');innerText.textContent='request this service';iconWrap.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><line x1="12" y1="5" x2="12" y2="19"></line><line x1="5" y1="12" x2="19" y2="12"></line></svg>'}}
28serviceCards.forEach(card=>{const serviceNameElement=card.querySelector('h4');const serviceButton=card.querySelector('.add-service');console.log(serviceNameElement)
29if(serviceNameElement&&serviceButton){const serviceName=serviceNameElement.textContent.trim();if(selectedServices.has(serviceName)){updateButtonState(serviceButton,!0)}
30serviceButton.addEventListener('click',function(){const isSelected=selectedServices.has(serviceName);if(isSelected){selectedServices.delete(serviceName)}else{selectedServices.add(serviceName)}
31updateButtonState(serviceButton,!isSelected);updateSelectedList()})}});updateSelectedList();const targetFormId=11;const confirmationSelector=`#gform_confirmation_message_${targetFormId}`;const observer=new MutationObserver((mutationsList)=>{for(const mutation of mutationsList){if(mutation.type==='childList'&&document.querySelector(confirmationSelector)){console.log('Form submitted and confirmation loaded! Clearing selections.');selectedServices.clear();localStorage.removeItem('selectedPropMngServices');window.location.reload();observer.disconnect();break}}});const formContainer=document.getElementById(`gform_wrapper_${targetFormId}`);if(formContainer){observer.observe(formContainer,{childList:!0,subtree:!0})}}})

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.