1var $ = jQuery.noConflict(); 2 3// Open Navigation Menu by click on mobile 4// disabled for UPA 5(function($){ 6 /*$('.dropdown-menu .dropdown-toggle').on('click', function(e) { 7 if (!$(this).next().hasClass('show')) { 8 $(this).parents('.dropdown-menu').first().find('.show').removeClass("show"); 9 } 10 var $subMenu = $(this).next(".dropdown-menu"); 11 if ( $subMenu.hasClass( 'show') ) { 12 $subMenu.removeClass('show'); 13 } else { 14 $subMenu.addClass('show'); 15 } 16 //$subMenu.toggleClass('show'); 17 18 $(this).parents('li.nav-item.dropdown.show').on('hidden.bs.dropdown', function(e) { 19 $('.dropdown-submenu .show').removeClass("show"); 20 }); 21 22 return false; 23 });*/ 24})(jQuery); 25 26// Open background search panel on mobile 27/*** 28$('#mobile_site_search_container').on('show.bs.dropdown', function () { 29 $('.mobile-search-overlay').addClass('active'); 30 $('body').addClass('no-scroll'); 31}); 32 33 34// Close background search panel on mobile 35$('#mobile_site_search_container').on('hide.bs.dropdown', function () { 36 $('.mobile-search-overlay').removeClass('active'); 37 $('body').removeClass('no-scroll'); 38}); 39***/ 40 41// Toggle up/down arrows on mobile menu 42$('.mobile_nav_item_toggler').on('click', function(event) { 43 var target_element = event.target; 44 var target_element_node = event.target.nodeName; 45 console.log(target_element); 46 47 if(target_element_node == 'SPAN') { 48 var top_level_icons = $('.mobile_nav_item_toggler_icon.level-0').not($(target_element)); 49 $(target_element).toggleClass("fa-chevron-down fa-chevron-up"); 50 } else if(target_element_node == 'DIV') { 51 var top_level_icons = $('.mobile_nav_item_toggler_icon.level-0').not($(target_element.querySelector('span'))); 52 $(target_element.querySelector('span')).toggleClass("fa-chevron-down fa-chevron-up"); 53 } 54 if(top_level_icons.hasClass('fa-chevron-up')) { 55 top_level_icons.removeClass('fa-chevron-up'); 56 top_level_icons.addClass('fa-chevron-down'); 57 } 58}); 59 60$(document).ready(function(){ 61 62 $('.close-mega-menu').click(function() { 63 $('.navlink.dropdown-toggle').removeClass('show'); 64 $('.dropdown-menu.megamenu').removeClass('show'); 65 }); 66 67 // Change hamburger menu icon 68 $('#ChangeToggle').click(function() { 69 $('#navbar-hamburger').toggleClass('d-none'); 70 if($('#navbar-close').hasClass('d-none')) { 71 $('#navbar-close').removeClass('d-none'); 72 $('#main_navigation_toggle').addClass('show'); 73 } else { 74 $('#navbar-close').addClass('d-none'); 75 $('#main_navigation_toggle').removeClass('show'); 76 } 77 }); 78 79 // Site Search Validation 80 $('.dropdown-menu.dropdown-menu-right').on('click', function(e) { 81 e.stopPropagation(); 82 }); 83 $('.site-search-form-nav').submit(function(e){ 84 $('.site-search-err-nav').addClass('d-none'); 85 if($('.site-search-input-nav').val() == '') { 86 e.preventDefault(); 87 $('.site-search-err-nav').removeClass('d-none'); 88 } 89 }); 90 $('.site-search-form').submit(function(e){ 91 $('.site-search-err').addClass('d-none'); 92 if($('.site-search-input').val() == '') { 93 e.preventDefault(); 94 $('.site-search-err').removeClass('d-none'); 95 } 96 }); 97 98 99 $delayClass = ''; 100 $(document).on('mouseenter', '.submenu-button', function () { 101 //$('.nav-item-desktop.dropdown').hover(function() { 102 //$(this).addClass("nav-arrow-active"); 103 104 105 var parentclass = $(this).parent(); 106 107 $delayClass = setTimeout(function(){ 108 109 $(parentclass).find('.dropdown-menu').fadeIn(); 110 $(this).addClass("nav-arrow-active"); 111 }, 1000); 112 113 //$(parentclass).find('.dropdown-menu').delay(800).fadeIn(); 114 115 116 117 118 $this = $(this); 119 120 }); 121 122 $(document).on('mouseleave', '.submenu-button', function () { 123 //$('.nav-item-desktop.dropdown').hover(function() { 124 125 $(this).removeClass("nav-arrow-active"); 126 127 var parentclass = $(this).parent(); 128 129 clearTimeout($delayClass); 130 131 $delayClass = setTimeout(function(){ 132 $(parentclass).find('.dropdown-menu').fadeOut(); 133 }, 1000); 134 135 //$(parentclass).find('button').removeClass('nav-arrow-active'); 136 }); 137 138 $('#menu-main-nav > .menu-item').hover(function() { 139 clearTimeout($delayClass); 140 $('#menu-main-nav .menu-item .dropdown-menu').hide(); 141 142 $(this).find('.sub-menu').show(); 143 $(this).find('.dropdown-menu').addClass("nav-arrow-active"); 144 145 }, 146 function() { // leave hover 147 148 clearTimeout($delayClass); 149 $('#menu-main-nav .menu-item .dropdown-menu').hide(); 150 $delayClass = setTimeout(function(){ 151 152 $(this).find('.sub-menu').hide(); 153 $(this).find('.dropdown-menu').addClass("nav-arrow-active"); 154 }, 1000); 155 }); 156 157 $('.sub-menu .menu-item').hover(function() { 158 clearTimeout($delayClass); 159 160 $(this).parent().siblings(".submenu-button").addClass("nav-arrow-active"); 161 $(this).parent().show(); 162 }, 163 function () { // leave hover 164 165 $(this).parent().hide(); 166 $(this).parent().siblings(".submenu-button").removeClass("nav-arrow-active"); 167 }); 168 169 // Add smooth scrolling to all links 170 $(".a-z-content a").on('click', function(event) { 171 if (this.hash !== "") { 172 // Prevent default anchor click behavior 173 event.preventDefault(); 174 // Store hash 175 var hash = this.hash; 176 // The optional number (800) specifies the number of milliseconds it takes to
176scroll to the specified area 177 $('html, body').animate({ 178 scrollTop: $(hash).offset().top 179 }, 800, function(){ 180 // Add hash (#) to URL when done scrolling (default click behavior) 181 window.location.hash = hash; 182 }); 183 } // End if 184 }); 185 186 187 // Add card shadow on hover 188 $( '.news-events-social-feeds .media' ).hover(function(){ 189 $(this).addClass( 'shadow' ); 190 191 }, function(){ 192 $(this).removeClass( 'shadow' ); 193 }); 194 195 //Scroll to top 196 var $window = $(window); 197 var $buttonTop = $('.scroll-top') 198 var scrollTimer; 199 $('.scroll-top').on('click', function () { 200 $('html, body').animate({ 201 scrollTop: 0, 202 }, 400); 203 }); 204 205 $window.on('scroll', function () { 206 clearTimeout(scrollTimer); 207 scrollTimer = setTimeout(function() { 208 if ($window.scrollTop() > 100) { 209 $buttonTop.addClass('scroll-top-visible'); 210 } else { 211 $buttonTop.removeClass('scroll-top-visible'); 212 } 213 }, 250); 214 }); 215 216 217 // Navigation accessibility 218 var menuItems = document.querySelectorAll('#menu-main-nav li.dropdown'); 219 Array.prototype.forEach.call(menuItems, function (el, i) { 220 var activatingA = el.querySelector('a'); 221 var customClass = $(activatingA).attr('id'); 222 223 var btn = '<button class="btn-'+customClass+' submenu-button"><span><span class="visuallyhidden">show submenu for ' + activatingA.text + '</span></span></button>'; 224 activatingA.insertAdjacentHTML('afterend', btn); 225 226 el.querySelector('button').addEventListener("click", function (event) { 227 var thisElement = (this.className); 228 229 //console.log( $(this).parents().hasClass('active')); 230 231 var parent_active = false; 232 if ( $(this).parents().hasClass('active') ) { 233 parent_active = true; 234 } 235 236 237 //console.log($('.'+thisElement).next().next()); 238 //if (this.parentNode.className == "dropdown") { 239 240 var findclassname = "dropdown open"; 241 242 if(this.parentNode.className.indexOf('dropdown') != -1 && 243 this.parentNode.className.indexOf('open') != -1) { 244 245 this.parentNode.className = "dropdown"; 246 this.parentNode.querySelector('a').setAttribute('aria-expanded', "true"); 247 this.parentNode.querySelector('button').setAttribute('aria-expanded', "true"); 248 //this.parentNode.querySelector('ul').setAttribute('class', "dropdown-menu open"); 249 this.parentNode.querySelector('ul').setAttribute('aria-expanded', "true"); 250 //$('.dropdown ul.dropdown-menu').hide(); 251 $('.' + thisElement).next().next().hide(); 252 253 } else if (this.parentNode.className.indexOf('dropdown') != -1) { 254 this.parentNode.className = "dropdown open"; 255 this.parentNode.querySelector('a').setAttribute('aria-expanded', "true"); 256 this.parentNode.querySelector('button').setAttribute('aria-expanded', "true"); 257 //this.parentNode.querySelector('ul').setAttribute('class', "dropdown-menu open"); 258 this.parentNode.querySelector('ul').setAttribute('aria-expanded', "true"); 259 //$('.dropdown ul.dropdown-menu').show(); 260 $('.' + thisElement).next().next().show(); 261 262 } else { 263 this.parentNode.className = "dropdown"; 264 this.parentNode.querySelector('a').setAttribute('aria-expanded', "false"); 265 this.parentNode.querySelector('button').setAttribute('aria-expanded', "false"); 266 //this.parentNode.querySelector('ul').setAttribute('class', "dropdown-menu"); 267 this.parentNode.querySelector('ul').setAttribute('aria-expanded', "false"); 268 //$('.dropdown ul.dropdown-menu').hide(); 269 $('.' + thisElement).next().next().hide(); 270 271 } 272 273 if (parent_active == true) { 274 $(this).parent().addClass('active'); 275 } 276 event.preventDefault(); 277 }); 278 }); 279 280 $(document).on('click', '.submenu-button', function () { 281 //$('.submenu-button').click(function() { 282 283 if ( $(this).hasClass("nav-arrow-active") ) { 284 $(this).removeClass('nav-arrow-active'); 285 $(this).siblings('.sub-menu').hide(); 286 287 } else { 288 $('.submenu-button').removeClass('nav-arrow-active'); 289 $('.sub-menu').hide(); 290 291 $(this).addClass('nav-arrow-active'); 292 $(this).siblings('.sub-menu').show(); 293 } 294 }); 295 296 297 var singleMenuItems = document.querySelectorAll('#menu-main-nav li'); 298 Array.prototype.forEach.call(singleMenuItems, function (el, i) { 299 300 el.querySelector('a').addEventListener("focus", function (event) { 301 302 //if (this.parentNode.className == "dropdown") { 303 if (this.className.indexOf('dropdown-toggle') == -1 && 304 this.className.indexOf('dropdown-item') == -1) { 305 $('.dropdown ul.dropdown-menu').hide(); 306 307 var listItems = $("#menu-main-nav li"); 308 listItems.each(function (i) { 309 //console.log(idx); 310 var classname = $(this).attr('class'); 311 var attributeId = $(this).attr('id'); 312 if (classname.indexOf('open') != -1 ) { 313 314 $('#'+attributeId).removeClass("open"); 315 } 316 317 }); 318 } 319 320 event.preventDefault(); 321 }); 322 }); 323 324 var searchMenu = document.querySelectorAll('.header__navbar div.header__menu-global-search-desktop'); 325 Array.prototype.forEach.call(searchMenu, function (el, i) { 326 //console.log(el); 327 el.querySelector('button').addEventListener("focus", function (event) { 328 329 $('.dropdown ul.dropdown-menu').hide(); 330 331 var listItems = $("#menu-main-nav li"); 332 listItems.each(function (i) { 333 //console.log(idx); 334 var classname = $(this).attr('class'); 335 var attributeId = $(this).attr('id'); 336 if (classname.indexOf('open') != -1) { 337 338 $('#' + attributeId).removeClass("open"); 339 } 340 341 }); 342 343 event.preventDefault(); 344 }); 345 }); 346 347 /*** 348 // reduced header size (height on scroll) 349 $(document).on("scroll", function(){ 350 351 if ($(document).scrollTop() > 80){ 352 $(".header__navbar .header-contact .contact-item").addClass("shrink"); 353 $(".header__logo.desktop").addClass("shrink"); 354 } else { 355 $(".header__navbar .header-contact .contact-item").removeClass("shrink"); 356 $(".header__logo.desktop").removeClass("shrink"); 357 } 358 359 });***/ 360}); 361 362$(window).on('load', function(){ 363 // Remove Table inline style attribute 364 $('th,tr,td').css('font-family',''); 365}); 366 367$(".event-select-widget").on('change', function(){ 368 var param_value = $(this).val(); 369 var param_name = $(this).prop('name'); 370 var page_url = $(this).data('page-url'); 371 window.location.href = page_url + '?' + param_name + '=' + param_value; 372}); 373 374$(".news-select-widget").on('change', function(){ 375 var param_value = $(this).val(); 376 var param_name = $(this).prop('name'); 377 var page_url = $(this).data('page-url'); 378 window.location.href = page_url + '?' + param_name + '=' + param_value; 379}); 380 381$(".future-event-select-widget").on('change', function(){ 382 var param_value = $(this).val(); 383 var param_name = $(this).prop('name'); 384 var page_url = $(this).data('page-url'); 385 window.location.href = page_url + '?' + param_name + '=' + param_value; 386}); 387 388$(".events-by-month-select-widget").on('change', function(){ 389 var param_value = $(this).val(); 390 var param_name = $(this).prop('name'); 391 var page_url = $(this).data('page-url'); 392 window.location.href = page_url + '?' + param_name + '=' + param_value; 393}); 394 395$(".news-by-month-select-widget").on('change', function(){ 396 var param_value = $(this).val(); 397 var param_name = $(this).prop('name'); 398 var page_url = $(this).data('page-url'); 399 window.location.href = page_url + '?' + param_name + '=' + param_value; 400}); 401 402$(".blog-select-widget").on('change', function(){ 403 var param_value = $(this).val(); 404 var param_name = $(this).prop('name'); 405 var page_url = $(this).data('page-url'); 406 console.log(page_url + '?' + param_name + '=' + param_value); 407 window.location.href = page_url + '?' + param_name + '=' + param_value; 408}); 409 410/***** Entry Requirements */ 411$(".entry-requirements-select").on('change', function(e){ 412 e.preventDefault(); 413 var component_id = $(this).data('entry-req-id'); 414 var option_value = $(this).val(); 415 416 $(".entry-requirements-content-item-"+component_id).hide(); 417 $("."+component_id+'-'+option_value).show(); 418 419}); 420/***** End Entry Requirements */ 421 422/*** Staff Team ***/ 423$(".staff-more").on('click', function(e) { 424 425 var expanded = $(this).text().trim(); 426 var btn_id = $(this).attr('more-btn-id'); 427 var group_id = $(this).attr('staff-team-group-id'); 428 429 if (expanded == 'Show More...') { 430 $('.staff-team-group-' + group_id + ' .staff-more').text('Show More...'); 431 $('.' + btn_id).text('Show Less'); 432 433 } else { 434 $('.' + btn_id).text('Show More...'); 435 } 436 437}); 438/*** End Staff Team ***/ 439 440/*** Bootstrap Mega Menu ***/ 441document.addEventListener("DOMContentLoaded", function(){
442 /////// Prevent closing from click inside dropdown 443 document.querySelectorAll('.dropdown-menu').forEach(function(element){ 444 element.addEventListener('click', function (e) { 445 e.stopPropagation(); 446 }); 447 }) 448}); 449/*** End Bootstrap Mega Menu ***/ 450 451jQuery('.accordion .card a').on('click', function() { 452 453 // Reference https://wordpress.org/support/topic/header-column-width/ 454 var table_wrap = $(this).parent().siblings().find('.supsystic-tables-wrap'); 455 456 table_wrap.each(function() { 457 //var fields = table_wrap.attr('id').split('-'); 458 var fields = $(this).attr('id').split('-'); 459 460 var table_id_fields = fields[2].split('_'); 461 462 var table_id = table_id_fields[0]; 463 464 window.supsystic.Tables.getTableInstanceById(table_id).fnAdjustColumnSizing(); 465 }); 466 467 468}); 469 470/***** Video Iframe load */ 471$('.youtube-video').on('click', function () { 472 var wrapper = $(this); 473 var thumbnail = wrapper.children('img'); 474 var video_id = wrapper.data('videoId'); 475 var video_source = wrapper.data('videoSource'); 476 var video_source_url = ''; 477 if ( video_source == 'vimeo' ) { 478 video_source_url = 'https://player.vimeo.com/video/' + video_id + '?autoplay=1&rel=0'; 479 } else { 480 video_source_url = 'https://www.youtube.com/embed/' + video_id + '?autoplay=1'; 481 } 482 483 var embed = document.createElement('iframe'); 484 embed.src = video_source_url; 485 embed.title = thumbnail.attr('alt'); 486 embed.allow = 'autoplay; fullscreen; picture-in-picture'; 487 embed.allowFullscreen = true; 488 embed.width = '100%'; 489 embed.height = '100%'; 490 embed.rel = 0; 491 wrapper.html(''); 492 wrapper.append(embed); 493}); 494/***** End Video Iframe load */ 495 496 497/*** 498 el.querySelector('button').addEventListener("click", function (event) {*/
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.