/* THIS IS GLOBALLY INCLUDED ON EVERY PAGE. SO PUT STUFF HERE YOU NEED TO BE ON *EVERY* PAGE OF THE WEBSITE Previously called inc-htmlheader.js */ var hmbgButton = $('#hmbg-btn'); var contentWrapper = $('#content-wrapper'); var sidebarWrapper = $('#sidebar-wrapper'); var sidebarLogo = $('#sidebar-logo'); var sidebarBottomText = $('#sidebar-bottom-text'); var theDocument =$(document); window.addEventListener("optimizedScroll", function() { if(theDocument.scrollTop() > 130){ sidebarLogo.addClass('sidebar-logo-scrolled'); sidebarBottomText.addClass('sidebar-logo-scrolled'); } else { sidebarLogo.removeClass('sidebar-logo-scrolled'); sidebarBottomText.removeClass('sidebar-logo-scrolled'); } }); $(document).ready(function(){ if($('.datePicker').length) { $('.datePicker').datepicker({ minDate: 0, dateFormat: 'dd/mm/yy' }); } if($('.LangClose').length) { $('.LangClose').click(function(){ document.cookie="LanguageWidgetClose=1;path=/"; $("#LangSelect").remove(); }); } if($("#CurrencySelector").length) { $("#CurrencySelector").on("change",function(){ var oDate = new Date(); oDate.setTime(oDate.getTime() + (30*24*60*60*1000)); var sExpires = "expires="+oDate.toUTCString(); document.cookie="nCurrency_ID="+$(this).val()+"; path=/"; location.reload(); }); } if(theDocument.scrollTop() > 130){ sidebarLogo.addClass('sidebar-logo-scrolled'); sidebarBottomText.addClass('sidebar-logo-scrolled'); } else { sidebarLogo.removeClass('sidebar-logo-scrolled'); sidebarBottomText.removeClass('sidebar-logo-scrolled'); } }); function fLangChange($sLangAbbr, $sSURL) { $bChange = 0; $sNewURL = window.location.href; aLanguages.forEach(function($sTempLangAbbr){ console.log($sTempLangAbbr); if(window.location.href.indexOf("/"+$sTempLangAbbr+"/")>=0) { $sNewURL = $sNewURL.replace("/"+$sTempLangAbbr+"/","/"+$sLangAbbr+"/"); $bChange = 1; } }); if(!$bChange) { $sNewURL=$sSURL+$sLangAbbr+"/"; } window.location = $sNewURL; } /* COOKIE CUTTER - The "I accept cookies" legal disclaimer */ $(function(){ $.cookieCuttr(); }); // FOOTER SUBSCRIBE FORM // ===================== jQuery(document).ready(function(){ $('form#footerNewsletter').submit(function(e){ // stop form submitting (page load) e.preventDefault(); // get the name (if is exists) var emailName = ""; if($('input[name="sNewsName"]').length) emailName = $('input[name="sNewsName"]').val(); // get email address var emailAddress = $('input[name="sNewsEmailAddress"]').val(); // Check email address length if(emailAddress.length < 10) { alert("Your email address isn't valid"); } else { // ajax it $.ajax({ data: {sEmailName:emailName, sEmailAddress: emailAddress}, type: 'post', url: 'ajax/newsletter_exec.php', success: function(data) { // Append goal information to head $('head').append(data); // Alert user of sign up success alert("Thank you. Your mailing list sign up request has been received. You may also need to check your inbox for an email to confirm your subscription"); // Clear the form if($('input[name="sNewsName"]').length) $('input[name="sNewsName"]').val(""); $('input[name="sNewsEmailAddress"]').val(""); $('input[name="sNewsEmailAddress"]').css('background-color',''); } }); } }); }); // EMAIL CHECK // ============== function fCheckEmail(email) { var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i; if(!re.test(email)) return "invalid"; else return true; } window.addEventListener('message', fReceiveMessage, false); function fReceiveMessage(e) { fScrollToDiv(e.data); } // SCROLL TO DIV // ============== function fScrollToDiv($sCSSID) { var $oCSSSelector = $("#"+$sCSSID); $(".highlighted-div").removeClass("highlighted-div"); if($oCSSSelector.length > 0) { $('html,body').animate({ scrollTop: $oCSSSelector.offset().top-100 }, 500); } } $(window).on("load", function(){ parent.postMessage("loaded","*"); }); function fToggleSidebar(){ contentWrapper.toggleClass('site-transform'); hmbgButton.toggleClass('btn-close-background'); sidebarWrapper.toggleClass('sidebar-site-tran'); } ;(function() { //declared throttle function var throttle = function(type, name, obj) { //if obj attribute is not defined then make it equal to window obj = obj || window; var running = false; //new function var func = function() { //if its firing retun if (running) { return; } running = true; //limit turn off using request animation frame requestAnimationFrame(function() { //trigger the custom event obj.dispatchEvent(new CustomEvent(name)); running = false; }); }; obj.addEventListener(type, func); }; //comment out either of these if you dont need them throttle ("scroll", "optimizedScroll"); throttle("resize", "optimizedResize"); })();