Skip to content
Snippets Groups Projects
Commit 0dc3dce0 authored by Eric Bremner's avatar Eric Bremner
Browse files

Removing the JS folder again, it is no longer requried to be stored

parent 9b32b3fd
No related branches found
No related tags found
No related merge requests found
/**
* @file
* Ckeditor Modal.
*/
(function ($, Drupal) {
if ($.ui && $.ui.dialog) {
orig_allowInteraction = $.ui.dialog.prototype._allowInteraction;
$.ui.dialog.prototype._allowInteraction = function (event) {
if ($(event.target).closest('.cke_dialog').length) {
return true;
}
return orig_allowInteraction.apply(this, arguments);
};
}
})(jQuery, Drupal);
/**
* @file
*/
(function ($, Drupal) {
Drupal.behaviors.cardbanner = {
attach: function (context, settings) {
$(document).ready(function () {
// Step through each FF on the page.
$('.card.banner').each(function () {
// Get the number of items for the carousel, if any.
var num_of_items = 1;
// Add the carousel to the FF using the id.
$('.owl-carousel').owlCarousel({
margin: 10,
nav: true,
navContainerClass: 'uw-owl-nav',
navText:[
'‹ prev',
'next ›'
],
responsiveClass: true,
responsive: {
0: {
items: 1
},
600: {
items: num_of_items <= 2 ? (num_of_items - 1 > 0) ? num_of_items - 1 : 1 : 2
},
1000: {
items: num_of_items
}
}
});
});
});
}
};
})(jQuery, Drupal);
/**
* @file
*/
/**
* @file
*/
(function ($, Drupal) {
Drupal.behaviors.expandcollapse = {
attach: function (context, settings) {
$(document).ready(function () {
$('.uw-expand-collapse').each(function () {
// Get the id of the expand collapse.
var id = '#uw-expand-collapse-' + $(this).data('id');
// When the expand all button is clicked, expand all the items.
$(id + ' [data-type="expand-all"]').click(function () {
// Find each of the buttons, which are the titles and change
// aria-expanded and add class to show expanded.
$(id + ' .uw-expand-collapse__items button').each(function () {
$(this).attr('aria-expanded', true);
$(this).addClass('uw-expanded');
});
// Find each of the text and add css to display them.
$(id + ' .uw-expand-collapse__items .uw-expand-collapse__text').each(function () {
$(this).css('display', 'block');
});
});
// When the collapse all button is clicked, collapse all the items.
$(id + ' [data-type="collapse-all"]').click(function () {
// Find each of the buttons, which are the titles and change
// aria-expanded and remove class to show collapsed.
$(id + ' .uw-expand-collapse__items button').each(function () {
$(this).attr('aria-expanded', true);
$(this).removeClass('uw-expanded');
});
// Find each of the text and add css to display them.
$(id + ' .uw-expand-collapse__items .uw-expand-collapse__text').each(function () {
$(this).css('display', 'none');
});
});
// Step through each of the titles and add a click function.
$(id + ' .uw-expand-collapse__items button').click(function () {
// If this has an expanded class, remove it and change aria expanded to false.
// Otherwise add the expanded class and set aria-expanded to true.
if ($(this).hasClass('uw-expanded')) {
$(this).attr('aria-expanded', false);
$(this).removeClass('uw-expanded');
}
else {
$(this).attr('aria-expanded', true);
$(this).addClass('uw-expanded');
}
// Toggle the text to show/hide.
$(this).parent().parent().find('.uw-expand-collapse__text').toggle();
})
});
});
}
};
})(jQuery, Drupal);
/**
* @file
*/
(function ($, Drupal) {
Drupal.behaviors.factfigure = {
attach: function (context, settings) {
$(document).ready(function () {
// Step through each FF on the page.
$('.uw-ff').each(function () {
var result = $(this).find('.uw-ff__has-carousel-settings').length;
// Get the id to reference the individual FF.
// Need this to ensure that if more than one FF on the page,
// that all FFs get the carousel added.
var id = '#uw-ff-' + $(this).data('id');
// Get the number of items for the carousel, if any.
var num_of_items = $(id).data('num-per-carousel') !== '' ? $(this).data('num-per-carousel') : 3;
// Add the carousel to the FF using the id.
$(id + ' .owl-carousel').owlCarousel({
margin: 10,
nav: true,
navContainerClass: 'uw-owl-nav',
navText:[
'‹ prev',
'next ›'
],
responsiveClass: true,
responsive: {
0: {
items: 1
},
600: {
items: num_of_items <= 2 ? (num_of_items - 1 > 0) ? num_of_items - 1 : 1 : 2
},
1000: {
items: num_of_items
}
}
});
});
});
}
};
})(jQuery, Drupal);
/**
* @file
*/
(function ($, Drupal) {
Drupal.behaviors.filtersopen = {
attach: function (context, settings) {
$(document).ready(function () {
$('.view-filters details').each(function () {
$(this).attr("open", "");
});
});
}
};
})(jQuery, Drupal);
/**
* @file
*/
(function ($, Drupal) {
Drupal.behaviors.imagegallery = {
attach: function (context, settings) {
$(document).ready(function () {
// Step through each FF on the page.
$('.uw-ig').each(function () {
// Get the id to reference the individual FF.
// Need this to ensure that if more than one FF on the page,
// that all FFs get the carousel added.
var id = '#uw-ig-' + $(this).data('id');
// Add the carousel to the FF using the id.
$(id + ' .owl-carousel').owlCarousel({
loop: true,
nav: true,
margin: 10,
responsiveClass: true,
responsive: {
0: {
items: 1,
nav: true,
loop: true
},
600: {
items: 1,
nav: true,
loop: true
},
1000: {
items: 1,
nav: true,
loop: true
}
}
});
});
});
}
};
})(jQuery, Drupal);
/**
* @file
*/
(function ($, Drupal) {
Drupal.behaviors.multitypelist = {
attach: function (context, settings) {
window.addEventListener("DOMContentLoaded", () => {
const tabs = document.querySelectorAll('[role="tab"]');
const tabList = document.querySelector('[role="tablist"]');
if (tabs.length == 0) {
return;
}
// Add a click event handler to each tab.
tabs.forEach(tab => {
tab.addEventListener("click", changeTabs);
});
// Enable arrow navigation between tabs in the tab list.
let tabFocus = 0;
tabList.addEventListener("keydown", e => {
// Move right.
if (e.keyCode === 39 || e.keyCode === 37) {
tabs[tabFocus].setAttribute("tabindex", -1);
if (e.keyCode === 39) {
tabFocus++;
// If we're at the end, go to the start.
if (tabFocus >= tabs.length) {
tabFocus = 0;
}
// Move left.
}
else if (e.keyCode === 37) {
tabFocus--;
// If we're at the start, move to the end.
if (tabFocus < 0) {
tabFocus = tabs.length - 1;
}
}
tabs[tabFocus].setAttribute("tabindex", 0);
tabs[tabFocus].focus();
}
});
});
function changeTabs(e) {
const target = e.target;
const parent = target.parentNode;
const grandparent = parent.parentNode;
// Remove all current selected tabs.
parent
.querySelectorAll('[aria-selected="true"]')
.forEach(t => t.setAttribute("aria-selected", false));
// Set this tab as selected.
target.setAttribute("aria-selected", true);
// Hide all tab panels.
grandparent
.querySelectorAll('[role="tabpanel"]')
.forEach(p => p.setAttribute("hidden", true));
// Show the selected panel.
grandparent.parentNode
.querySelector(`#${target.getAttribute("aria-controls")}`)
.removeAttribute("hidden");
}
}
};
})(jQuery, Drupal);
/**
* @file
*/
(function ($, Drupal) {
Drupal.behaviors.tabs = {
attach: function (context, settings) {
$(document).ready(function () {
$('.uw-contact-expand-all').click(function () {
$('.uw-contact details').each(function () {
console.log($(this));
$(this).attr("open", "");
});
});
$('.uw-contact-collapse-all').click(function () {
$('.uw-contact details').each(function () {
console.log($(this));
$(this).removeAttr("open");
});
});
});
}
};
})(jQuery, Drupal);
/**
* @file
*/
(function ($) {
Drupal.behaviors.responsive_menu_combined = {
attach: function (context, settings) {
'use strict';
// Close "other users" by default.
$('.uw_other h3 span:first-child').html('&#9656;');
$('.uw_other ul').hide();
// Since we're making the headers visible, wrap them in a button.
$('.uw-whos-online-block h3').wrapInner('<button></button>');
// Add appropriate ARIA attributes for default states.
$('.uw_privileged button').attr('aria-expanded', 'true');
$('.uw_other button').attr('aria-expanded', 'false');
// Handle show/hide.
$('.uw-whos-online-block button').on('click', function () {
let $list = $(this).closest('div').find('ul');
if ($list.is(":visible")) {
$list.hide();
$('span:first-child',this).html('&#9656;');
$(this).attr('aria-expanded', 'false');
}
else {
$list.show();
$('span:first-child',this).html('&#9662;');
$(this).attr('aria-expanded', 'true');
}
});
}
};
})(jQuery);
/**
* @file
*/
(function ($, Drupal) {
Drupal.behaviors.menuhorizontal = {
attach: function (context, settings) {
// uw-horizontal-nav.
$(document).ready(function () {
// Have to add the run this code only once, so that multiple
// loads of the menu are not shown when logged in.
$(document, context).once('menuhorizontal').each(function () {
const toggle = document.querySelector(".uw-navigation-button");
const navHeader = document.querySelector(".uw-header__navigation");
const menus = document.querySelectorAll(".menu--horizontal");
const items = document.querySelectorAll(".menu--item");
/* Toggle mobile menu */
function toggleMenu() {
if (this.classList.contains('active')) {
this.classList.remove('active');
this.setAttribute('aria-expanded', 'false');
navHeader.classList.remove('open');
navHeader.classList.add('close');
$('html').removeClass('no-scroll');
}
else {
this.classList.add('active');
this.setAttribute('aria-expanded', 'true');
navHeader.classList.remove('close');
navHeader.classList.add('open');
$('html').addClass('no-scroll');
}
};
for (let menu of menus) {
/* Activate Submenu */
function toggleItem() {
var parent = this.parentNode.parentNode.parentNode.parentNode;
var screenWidth = $(window).width();
if (this.classList.contains('submenu-active')) {
this.classList.remove('submenu-active');
if (this.hasAttribute('aria-expanded', 'true')) {
this.setAttribute('aria-expanded', 'false');
}
// If hamburger.
if (screenWidth <= 767) {
// Look at parents and reset the menus.
if (parent.classList.contains('uw-horizontal-nav--secondary')) {
$('.uw-horizontal-nav--main').css('display', 'block');
}
}
}
else if ($('.submenu-active')) {
// Get elements with .submnenu-active than close them,.
$('.submenu-active').removeClass('submenu-active').attr('aria-expanded', 'false');
// And open this one.
this.classList.add("submenu-active");
this.setAttribute('aria-expanded', 'true');
// If hamburger.
if (screenWidth <= 767) {
// Look at parents and hide other menus if not secondary and open.
if (parent.classList.contains('uw-horizontal-nav--secondary')) {
$('.uw-horizontal-nav--main').css('display', 'none');
$('.uw-horizontal-nav--secondary').css('display', 'block');
}
}
}
else {
this.classList.add('submenu-active');
this.setAttribute('aria-expanded', 'true');
}
}
/* Close Submenu From Anywhere */
function closeSubmenu(e) {
let isClickInside = menu.contains(e.target);
if (!isClickInside && menu.querySelector(".submenu-active")) {
menu.querySelector(".submenu-active").classList.remove("submenu-active");
}
}
}
for (let item of items) {
if (item.querySelector(".menu--subnav")) {
item.addEventListener("click", toggleItem, false);
}
// Add event listeners to keyup event of enter and escape keys for the menu--items .
item.addEventListener('keyup', function (e) {
if (e.key === "Enter") {
this.click();
}
if (e.key === "Escape") {
this.click();
}
// Space bar keypress to open close menu
// keyCode to be deprecated find way to use key.
});
item.addEventListener('keypress', function (e) {
if (e.keyCode == 32) {
this.click();
e.preventDefault();
}
});
}
document.addEventListener("click", closeSubmenu, false);
// If Toggle on page Add event listeners on the menu toggle button.
if (toggle) {
toggle.addEventListener("click", toggleMenu, false);
}
// Apply timeout to the to event firing
// so it fires at end of event.
function debouncer(func) {
var timeoutID,
timeout = 0;
return function () {
var scope = this,
args = arguments;
clearTimeout(timeoutID);
timeoutID = setTimeout(function () {
func.apply(scope, Array.prototype.slice.call(args));
}, timeout);
};
}
// Check the width of the screen and
// force the button click if wider that 767px.
function menuCheckWidth() {
// Check if menu is on page.
if (navHeader) {
// Set screenWidth var.
var screenWidth = $(window).width();
navHeader.classList.add('close');
if (screenWidth > 767) {
if ($('html').hasClass('no-scroll')) {
toggle.click();
$('.uw-horizontal-nav').css('display', 'block');
}
else {
$('.uw-header__navigation').addClass('open');
}
}
else {
if ($('.uw-header__navigation').hasClass('open')) {
$('.uw-header__navigation').removeClass('open');
$('.uw-header__navigation').addClass('close');
}
}
}
}
// Listen to event resize and apply the debouncer
// to the menuCheckWidth function.
$(window).resize(
debouncer(function () {
menuCheckWidth();
}
)
);
menuCheckWidth();
});
});
}
};
})(jQuery, Drupal);
/**
* @file
*/
(function ($, document, Drupal) {
Drupal.behaviors.wcmsheadersearchbar = {
attach: function (context, settings) {
}
}
})(jQuery, document, Drupal);
/**
* @file
*/
(function ($, document, Drupal) {
Drupal.behaviors.wcmsheadersearch = {
attach: function (context, settings) {
$(document).ready(function () {
$('.uw-search--checkboxlabel').on("click", function () {
$(this).toggleClass('close');
$('.uw-header__masthead').toggleClass('open');
});
function debouncer(func) {
var timeoutID,
timeout = 0;
return function () {
var scope = this,
args = arguments;
clearTimeout(timeoutID);
timeoutID = setTimeout(function () {
func.apply(scope, Array.prototype.slice.call(args));
}, timeout);
};
}
// Check the width of the screen and.
function checkWidth() {
// Set screenWidth var.
var screenWidth = $(window).width();
if ($('.uw-header__masthead').hasClass('open')) {
$('.uw-search--checkboxlabel').click();
}
}
// Listen to event resize and apply the debouncer
// to the menuCheckWidth function.
$(window).resize(
debouncer(function () {
checkWidth();
}
)
);
// checkWidth();
});
}
}
})(jQuery, document, Drupal);
/**
* @file
*/
(function ($, Drupal) {
Drupal.behaviors.uwexpcolall = {
attach: function (context, settings) {
$(document).ready(function () {
$('.uw-exp-col-expand-all').click(function () {
var uuid = $(this).attr('data-uuid');
$('[data-uuid="' + uuid + '"] details').each(function () {
$(this).attr("open", "");
});
});
$('.uw-exp-col-collapse-all').click(function () {
var uuid = $(this).attr('data-uuid');
$('[data-uuid="' + uuid + '"] details').each(function () {
$(this).removeAttr("open");
});
});
});
}
};
})(jQuery, Drupal);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment