1/*** BEFORE DOCUMENT READY SO PSUEDO CLASSES ARE LOADED ****/ 2 3jQuery('.menu-item-has-children > a').append('<span class="icon-arrow-right"></span>'); 4jQuery('.sub-menu').prepend('<li class="mobile-only go-back"><a><span class="icon-arrow-left"></span>Go Back</a></li>'); 5jQuery('.quick-quote input[type="submit"]').wrap('<a class="aligncenter brand-button-submit"></a>'); 6jQuery('.contact-forms input[type="submit"]').wrap('<a class="brand-button-submit"></a>'); 7jQuery('.full-height-image input[type="submit"]').wrap('<a class="white-button-submit"></a>'); 8 9 10/**** DOCUMENT READY ****/ 11jQuery(document).ready(function($){ 12 13 const lang = $("html").attr('lang') 14 var text = 'By clicking on the button to proceed, you accept our '; 15 switch(lang){ 16 case 'it-IT': 17 text = 'Cliccando sul pulsante per procedere, accetti la nostra '; 18 break; 19 case 'es-ES': 20 text = 'Al hacer clic en el botón para continuar, acepta nuestra'; 21 break; 22 } 23 24 $("[type='submit'], .pay-invoice [type='button']").parent().parent().append( 25 [ 26 '<div style="display: flex; align-items: center;" class="elementor-field-group elementor-column elementor-field-type-submit elementor-col-100 e-form__buttons elementor-md-50">', 27 //'<input type="checkbox" class="accept-privacy" style="display: inline; max-width: 50px;">', 28 '<span style="color: ',($(".pay-invoice [type='button']").length ? 'black' : 'white'),';">', 29 text+' <a style="color: white; text-decoration: underline" href="/wp-content/uploads/2023/05/Traslo-Service-LTD-Privacy-Policy-2023.pdf">privacy policy</a>', 30 '</span>', 31 '</div>' 32 ].join('') 33 ) 34 35 /*$("[type='submit'], .pay-invoice [type='button']").prop('disabled',true).css('pointerEvents','none') 36 37 $(".accept-privacy").click(function(){ 38 $("[type='submit'], .pay-invoice [type='button']").prop('disabled',!$(this).is(':checked')).css('pointerEvents',$(this).is(':checked') ? '' : 'none') 39 })*/ 40 41 //Slick slider 42 43 jQuery('.full-page-slider').slick({ 44 infinite: true, 45 dots: true, 46 autoplay: false, 47 autoplaySpeed: 3500, 48 }); 49 50 jQuery('.three-showing-slider').slick({ 51 slidesToShow: 3, 52 slidesToScroll: 1, 53 dots: false, 54 centerMode: true, 55 infinite: false, 56 responsive: [{ 57 breakpoint: 1140, 58 settings: { 59 slidesToShow: 1, 60 } 61 }] 62 }); 63 64 jQuery('.slide').removeClass('hide'); 65 66 // Preview previous/next slide 67 68 jQuery('.full-page-slider .slick-prev').hover(function() { 69 jQuery('.slick-track').toggleClass('tease-right'); 70 }); 71 72 jQuery('.full-page-slider .slick-next').hover(function() { 73 jQuery('.slick-track').toggleClass('tease-left'); 74 }); 75 76 // Set the three-showing slider to the middle slide as initialSlide doesn't work 77 78 jQuery(function() { 79 setTimeout(function () { 80 jQuery('.three-showing-slider').slickSetOption('speed', 0).slickGoTo(2).slickSetOption('speed', 300); 81 }, 10); 82 }); 83 84 //Edit Link Button 85 jQuery('.edit-link a').addClass('black-button'); 86 87 jQuery('img').parent('a').addClass('image-link'); 88 89 //Input hover effect 90 91 92 93 //Navigation 94 95 function open_overlays() { 96 jQuery('html').addClass('active-overlay'); 97 jQuery('.overlay').removeClass('hide').addClass('fade-in'); 98 } 99 100 function close_overlays() { 101 jQuery('html').removeClass('active-overlay active-menu'); 102 jQuery('.overlay').addClass('hide').removeClass('fade-in'); 103 jQuery('[class*="fade-overlay"]').addClass('hide').removeClass('fade-move-down'); 104 if(jQuery('.enquiry-fade-overlay').hasClass('has-value')) { 105 setTimeout(function() { 106 jQuery('.reminder').removeClass('hide').addClass('fade-move-down'); 107 }, 1500); 108 } 109 } 110 111 112 jQuery('.site-header .language-switcher a').click(function() { 113 jQuery(this).addClass('active'); 114 open_overlays(); 115 jQuery('html').removeClass('active-menu'); 116 jQuery('.language-switcher-fade-overlay').removeClass('hide').addClass('fade-in'); 117 return false;
118 }); 119 120 jQuery('.close, .overlay').click(function() { 121 close_overlays(); 122 }); 123 124 jQuery(document).keydown(function(e) { 125 // ESCAPE key pressed 126 if (e.keyCode == 27) { 127 close_overlays(); 128 } 129 }); 130 131 jQuery('.watch-video a').click(function() { 132 jQuery(this).addClass('active'); 133 open_overlays(); 134 jQuery('html').removeClass('active-menu'); 135 jQuery('.video-fade-overlay').removeClass('hide').addClass('fade-in'); 136 }); 137 138 jQuery('.site-header .icon-phone2').click(function() { 139 jQuery(this).addClass('active'); 140 open_overlays(); 141 jQuery('html').removeClass('active-menu'); 142 jQuery('.contact-details-fade-overlay').removeClass('hide').addClass('fade-in'); 143 }); 144 145 jQuery('.has-value.hide').click(function() { //ENQUIRY REMINDER 146 jQuery(this).removeClass('hide'); 147 open_overlays(); 148 }); 149 150 151 152 //Entry Header Heights Set 153 154 var $headerHeight = jQuery('.entry-header .vertical-align').outerHeight(); 155 jQuery('.entry-header .height-filler').css('height', $headerHeight); 156 157 158 //Height Match 159 160 jQuery(window).load(function() { 161 var elementHeights = jQuery('.height-match').map(function() { 162 return jQuery(this).height(); 163 }) 164 var maxHeight = Math.max.apply(null, elementHeights); 165 jQuery('.height-match').height(maxHeight); 166 jQuery('.height-match h3').addClass('full vertical-align horizontal-align'); 167 168 169 var elementHeightsTwo = jQuery('.height-match-two').map(function() { 170 return jQuery(this).height(); 171 }) 172 var maxHeight = Math.max.apply(null, elementHeightsTwo); 173 jQuery('.height-match-two').height(maxHeight); 174 jQuery('.height-match-two h4').addClass('full vertical-align horizontal-align'); 175 }); 176 177 /*************** SMOOTH SCROLLING ***************/ 178 179 jQuery(function() { 180 jQuery('a[href*="#scrollto"]:not([href="#"])').click(function() { 181 event.preventDefault(); 182 if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) { 183 var target = jQuery(this.hash); 184 target = target.length ? target : jQuery('[name=' + this.hash.slice(1) +']'); 185 if (target.length) { 186 jQuery('html,body').animate({ 187 scrollTop: target.offset().top 188 }, 500); 189 return false; 190 } 191 } 192 }); 193 }); 194 195 /*************************************************/ 196 197jQuery('.get-enquiry').bind('click', function() { 198 jQuery(this).parents('.quick-quote-container').removeClass('fade-move-down').addClass('hide'); 199 jQuery(this).parents('.quick-quote-container').next('.enquiry-form-container').removeClass('hide').addClass('fade-move-down'); 200 }); 201 202jQuery('.get-quote').bind('click', function() { 203 jQuery(this).parents('.enquiry-form-container').removeClass('fade-move-down').addClass('hide'); 204 jQuery(this).parents('.enquiry-form-container').prev('.quick-quote-container').removeClass('hide').addClass('fade-move-down'); 205 }); 206 207/******************************/ 208 209jQuery('.enquiry-fade-overlay input, .enquiry-fade-overlay textarea').change(function() { 210 setTimeout(function() { 211 if (jQuery('.enquiry-fade-overlay input, .enquiry-fade-overlay textarea').hasClass('valid')) { 212 jQuery('.enquiry-fade-overlay').addClass('has-value'); 213 var enquiryWidth = jQuery('.enquiry-fade-overlay').innerWidth(); 214 var enquiryHeight = jQuery('.enquiry-fade-overlay').innerHeight(); 215 jQuery('.enquiry-fade-overlay').css({ 216 'width': enquiryWidth, 217 'height': enquiryHeight 218 }); 219 } 220 221 else { 222 jQuery('.enquiry-fade-overlay').removeClass('has-value'); 223 } 224 }, 300) 225 }); 226 227 228/******************************/ 229 230jQuery('a[href="#scrollto-quote"]').click(function() { 231 setTimeout(function() { 232 jQuery('.quick-quote').addClass('bg-flash'); 233 }, 500); 234 235 setTimeout(function() { 236 jQuery('.quick-quote').removeClass('bg-flash'); 237 }, 3500); 238 }); 239 240 241/*******************************/ 242 243 244
245jQuery('.icon-menu').click(function() { 246 if(!jQuery('html').hasClass('active-menu')) { 247 jQuery('html').addClass('active-menu'); 248 open_overlays(); 249 250 } 251 else { 252 jQuery('html').removeClass('active-menu'); 253 close_overlays(); 254 } 255 256 }); 257 258jQuery('.site-header .menu-item-has-children > a .icon-arrow-right').click(function() { 259 jQuery(this).parents('li').find('.width-contain').addClass('active'); 260 return false; 261 }); 262 263jQuery('.go-back').click(function() { 264 jQuery(this).parents('.width-contain').removeClass('active'); 265 }); 266 267 268 /******* slider loading *********/ 269 270 jQuery('.slide').mouseover(function() { 271 var next = jQuery(this).next('.slide').children('.featured-image'); 272 var nextImage = jQuery(next).attr('slider-bg'); 273 jQuery(next).css('background-image', 'url(' + nextImage + ')'); 274 }); 275 276 jQuery('.slick-prev').mouseover(function() { 277 var prev = jQuery('.slick-active').prev('.slide').children('.featured-image'); 278 var prevImage = jQuery(prev).attr('slider-bg'); 279 jQuery(prev).css('background-image', 'url(' + prevImage + ')'); 280 console.log(prev); 281 console.log(prevImage); 282 }); 283 284 setTimeout(function() { 285 286 jQuery('[slider-bg]').each(function() { 287 var dataBG = jQuery(this).attr('slider-bg'); 288 jQuery(this).css('background-image', 'url(' + dataBG + ')'); 289 }); 290 291 jQuery('[data-bg]').each(function() { 292 var dataBG = jQuery(this).attr('data-bg'); 293 jQuery(this).css('background-image', 'url(' + dataBG + ')'); 294 }); 295 }, 6000); 296 297}); //end ready 298 299 300 301 302// https://developers.google.com/youtube/iframe_api_reference 303 304// global variable for the player 305var player; 306 307// this function gets called when API is ready to use 308function onYouTubePlayerAPIReady() { 309 // create the global player from the specific iframe (#video) 310 player = new YT.Player('video1', { 311 events: { 312 // call this function when player is ready to use 313 'onReady': onPlayerReady, 314 'onStateChange': onPlayerStateChange 315 } 316 }); 317 } 318 319function onPlayerReady(event) { 320 321 // bind events 322 jQuery('.watch-video a').bind("click", function() { 323 player.playVideo(); 324 }); 325 326 jQuery('.overlay').bind("click", function() { 327 player.pauseVideo(); 328 }); 329 330 jQuery(document).keydown(function(e) { 331 // ESCAPE key pressed 332 if (e.keyCode == 27) { 333 player.pauseVideo(); 334 } 335 }); 336 } 337 338function onPlayerStateChange(event) { 339 if(event.data === 0) { 340 jQuery('.video-fade-overlay').addClass('hide').removeClass('fade-in'); 341 jQuery('.reminder').addClass('hide').removeClass('fade-in'); 342 setTimeout(function () { 343 jQuery('.enquiry-fade-overlay').removeClass('hide'); 344 jQuery('.enquiry-fade-overlay .width-contain').addClass('fade-move-down'); 345 }, 0) 346 } 347 } 348// Inject YouTube API script 349var tag = document.createElement('script'); 350tag.src = "https://www.youtube.com/player_api"; 351var firstScriptTag = document.getElementsByTagName('script')[0]; 352firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 353 354 355 356//PAY INVOICE ONLINE 357 358jQuery(document).ready(function($) { 359 $(document).on("change", ".affects-price, [name='email']", function() { 360 var initialAmount = $(".initial-amount").val(); 361 if($(".card-type option:selected").val() == "credit-card") { 362 initialAmount = (initialAmount * 1.022).toFixed(2); 363 } 364 $(".total").val(initialAmount); 365 366 367 console.log(initialAmount); 368 }); 369 370 $(document).on("change", ".invoice-number", function() { 371 var invoiceNumber = $(".invoice-number").val(); 372 var desc = "Invoice Number: " + invoiceNumber; 373 var cartId = invoiceNumber + "-ONLINE" 374 $(".invoice-desc").val(desc); 375 $(".cartId").val(cartId); 376 }); 377 378 $(document).on("change", ".pay-invoice input, .pay-invoice select", function() { 379 if($(this).val() != "") { 380 $(this).parent().removeClass("error"); 381 $(".overall-error").addClass("hide"); 382 } 383 }); 384 385 $(document).on("click", ".pay-invoice .submit", function(){ 386 var proceed = true; 387 (function check_empty_inputs() { 388 $(".pay-invoice input, .pay-invoice select").each(function() { 389 if($(this).val() == "") { 390 $(this).parent().addClass("error"); 391 proceed = false;
392 console.log($(this).attr("name")); 393 } 394 }); 395 })(); 396 397 if(!proceed) { 398 $(".overall-error").removeClass("hide"); 399 return false; 400 } 401 402 $.get('/wp-json/v1/extendedhash',{ 403 total: $(".initial-amount").val(), 404 email: $('[name="email-email"]').val(), 405 date: $('[name="txndatetime"]').val(), 406 data: btoa($('.pay-invoice').serialize()), 407 invoicenumber: $('[name="invoice-number"]').val(), 408 v: (new Date()).getTime() 409 },function(json){ 410 $('[name="chargetotal"]').val($(".initial-amount").val()) 411 $('[name="hashExtended"]').val(json.hash) 412 $('[name="txndatetime"]').val(json.date) 413 $("[name='responseSuccessURL']").val(json.url) 414 $("[name='responseFailURL']").val(json.url) 415 $("[name='email']").val(json.email) 416 $("[name='invoicenumber']").val(json.invoicenumber) 417 $('.pay-invoice-form').trigger('submit') 418 }) 419 }); 420 421 });
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.