// kick off the code on page ready $(document).ready(function () { setupMobileNav(); setupLangMenu(); setupMobileSearch(); //setupHomeSlider(); setupRecentNews(); //setupProgramSearchAutoComplete(); //setupAutoComplete(); //setupSliders(); //setupAccessibleMenu(); }); /*function setupSliders() { $('.bxslider-home').bxSlider({ mode: 'horizontal', pause: 8000, auto: true }); $('.bxslider').bxSlider({ mode: 'horizontal', adaptiveHeight: true }); $('.bxslider .captions').bxSlider({ mode: 'horizontal', adaptiveHeight: true, captions: true }); }*/ function setupMobileNav() { $('#js-mainNavigationTrigger').click(function (e) { e.preventDefault(); $('#js-globalNav').toggleClass('navigationWrapper_isOpen'); }); $('.footerNavHdg').click(function (e) { e.preventDefault(); $(this).closest('li').toggleClass('footerNav-item_isActive'); }) } function setupMobileSearch() { $('#js-mobileSearchTrigger').click(function (e) { e.preventDefault(); $('.mastheadInner-bd-search').toggleClass('isOpen'); }) } function setupLangMenu() { $('#js-languagePicker').click(function (e) { e.preventDefault(); $('#languageMenu').toggleClass('utilItemMenu_isOpen'); }) } // kick off the recent news carousel on the home page function setupRecentNews() { // set to remove postback function of buttons $('.slick-prev').click(function (e) { e.preventDefault(); }); $('.slick-next').click(function (e) { e.preventDefault(); }); $('#js-recentNews').slick({ infinate: true, autoplay: true, slidesToShow: 1, slidesToScroll: 1, fade: true, prevArrow: $('.slick-prev'), nextArrow: $('.slick-next') }); } // initialize the mega menu /*function setupAccessibleMenu() { $('#js-globalNav').accessibleMegaMenu(); // hack so that the megamenu doesn't show flash of css animation after the page loads. setTimeout(function () { $('body').removeClass('init'); }, 500); }*/ // expand/contract the main nav in mobile $('.globalNav .dropdown > .topLevelLink > .nav-arrow').click(function () { var aTag = $(this).parent(); var span = $(this); aTag.siblings('div').slideToggle(function () { if ($(span).text() === "+") $(span).text('-'); else $(span).text('+'); }); }); // expand/contract the main nav 3rd level $('.globalNav .dropdown > .nav-arrow').click(function () { var span = $(this); span.siblings('div').slideToggle(function () { if ($(span).text() === "+") $(span).text('-'); else $(span).text('+'); }); }); function setupProgramSearchAutoComplete() { /* auto complete for the menu search option */ $("#program_search").autocomplete({ source: function (request, response) { $.ajax({ type: 'GET', url: '/SpecialPages/Program-Autocomplete', data: { 'searchtext' : encodeURIComponent(request.term) }, dataType: 'json', success: function(jsonData) { response(jsonData); } }); }, delay: 200, minLength: 2, open: function() { $(this).autocomplete("widget") .appendTo("#autocomplete-results") .css("position", "static")}, select: function (event, ui) { event.preventDefault(); var url = ui.item.value; if (url != '#') { location.href = url; } } }); } // auto complete for the menu search option function setupAutoComplete() { $("#txtSearchProgram").autocomplete({ source: function (request, response) { $.ajax({ type: 'GET', url: '/SpecialPages/Program-Autocomplete.aspx', data: { 'searchtext': encodeURIComponent(request.term) }, dataType: 'json', success: function (jsonData) { response(jsonData); } }); }, delay: 0, minLength: 2, open: function () { $(this).autocomplete("widget") .appendTo("#autocomplete-results") .css("position", "static") }, focus: function (event, ui) { $(this).attr("placeholder", ui.item.label); return false; }, select: function (event, ui) { event.preventDefault(); var url = ui.item.value; if (url != '#') { location.href = url; } } }); } function toggle(targetId) { target = document.getElementById(targetId); if (target.style.display == "none") { target.style.display = ""; } else { target.style.display = "none"; } } function trackOutbounds() { var hitCallbackHandler = function (url, win) { if (win) { window.open(url, win); } else { window.location.href = url; } }; var addEvent = function (el, eventName, handler) { if (el.addEventListener) { el.addEventListener(eventName, handler); } else { el.attachEvent('on' + eventName, function () { handler.call(el); }); } } if (document.getElementsByTagName) { var el = document.getElementsByTagName('a'); var getDomain = document.domain.split('.').reverse()[1] + '.' + document.domain.split('.').reverse()[0]; // Look thru each a element for (var i = 0; i < el.length; i++) { // Extract it's href attribute var href = (typeof (el[i].getAttribute('href')) == 'string') ? el[i].getAttribute('href') : ''; // Query the href for the top level domain (xxxxx.com) var myDomain = href.match(getDomain); // If link is outbound and is not to this domain if ((href.match(/^https?\:/i) && !myDomain) || href.match(/^mailto\:/i)) { // Add an event to click addEvent(el[i], 'click', function (e) { var url = this.getAttribute('href'), win = (typeof (this.getAttribute('target')) == 'string') ? this.getAttribute('target') : ''; console.log("add event", url); // Log even to Analytics, once done, go to the link ga('send', 'event', 'outbound', 'click', url, { 'hitCallback': hitCallbackHandler(url, win) }, { 'nonInteraction': 1 } ); e.preventDefault(); }); } } } }