PageSourceSearch

https://midsussexdistrictscouts.com/wp-content/themes/skillsforlife/js/scripts.js?ver=1787657678

js midsussexdistrictscouts.com collected 2026-10-04 02:05:08 UTC 3,696 bytes, 138 lines download raw bytes

1( function () {
2	'use strict';
3
4	function initGroupPicker() {
5		var picker = document.getElementById( 'group-picker' );
6		if ( ! picker ) {
7			return;
8		}
9
10		var pickerTop = picker.querySelector( '.top' );
11		var pickerDropdown = picker.querySelector( '.dropdown' );
12		var pickerText = picker.querySelector( '.top .text' );
13
14		if ( ! pickerTop || ! pickerDropdown || ! pickerText ) {
15			return;
16		}
17
18		pickerTop.addEventListener( 'click', function () {
19			var isOpen = window.getComputedStyle( pickerDropdown ).display !== 'none';
20			pickerDropdown.style.display = isOpen ? 'none' : 'block';
21			pickerTop.setAttribute( 'aria-expanded', isOpen ? 'false' : 'true' );
22		} );
23
24		pickerTop.addEventListener( 'keydown', function ( event ) {
25			if ( event.key === 'Escape' ) {
26				pickerDropdown.style.display = 'none';
27				pickerTop.setAttribute( 'aria-expanded', 'false' );
28			}
29		} );
30
31		var pickerItems = pickerDropdown.querySelectorAll( 'li' );
32		for ( var i = 0; i < pickerItems.length; i++ ) {
33			pickerItems[ i ].addEventListener( 'click', function () {
34					pickerText.textContent = this.textContent;
35					pickerDropdown.style.display = 'none';
36					pickerTop.setAttribute( 'aria-expanded', 'false' );
37				} );
38		}
39	}
40
41	function initFooterAnimation() {
42		var footerMark = document.querySelector( '.footer-logo__mark' );
43		if ( ! footerMark ) {
44			return;
45		}
46
47		function revealFooterMark() {
48			footerMark.classList.add( 'is-visible' );
49		}
50
51		if ( ! ( 'IntersectionObserver' in window ) ) {
52			revealFooterMark();
53			return;
54		}
55
56		var observer = new IntersectionObserver( function ( entries ) {
57			if ( ! entries[ 0 ].isIntersecting ) {
58				return;
59			}
60
61			revealFooterMark();
62			observer.disconnect();
63		}, {
64			threshold: 0
65		} );
66
67		observer.observe( footerMark );
68	}
69
70	function init() {
71		initGroupPicker();
72		initFooterAnimation();
73	}
74
75	if ( document.readyState === 'loading' ) {
76		document.addEventListener( 'DOMContentLoaded', init );
77	} else {
78		init();
79	}
80}() );
81
82var skillsForLifeLastShareTrigger = null;
83
84// Close the site notice.
85function closeSiteNotice() {
86	var notice = document.getElementById( 'SiteNotice' );
87	if ( notice ) {
88		notice.style.display = 'none';
89		notice.setAttribute( 'hidden', '' );
90	}
91}
92
93// Open the share box.
94function openShare() {
95	var overlay = document.getElementById( 'ShareOverlay' );
96	if ( overlay ) {
97		skillsForLifeLastShareTrigger = document.activeElement;
98		overlay.style.display = 'block';
99		overlay.style.height = '';
100		overlay.setAttribute( 'aria-hidden', 'false' );
101		var triggers = document.querySelectorAll( '[aria-controls="ShareOverlay"]' );
102		for ( var i = 0; i < triggers.length; i++ ) {
103			triggers[ i ].setAttribute( 'aria-expanded', 'true' );
104		}
105
106		var closeButton = overlay.querySelector( '.closebtn' );
107		if ( closeButton ) {
108			window.setTimeout( function () {
109				closeButton.focus();
110			}, 0 );
111		}
112	}
113}
114
115// Close the share box.
116function closeShare() {
117	var overlay = document.getElementById( 'ShareOverlay' );
118	if ( overlay ) {
119		overlay.style.display = 'none';
120		overlay.style.height = '0px';
121		overlay.setAttribute( 'aria-hidden', 'true' );
122		var triggers = document.querySelectorAll( '[aria-controls="ShareOverlay"]' );
123		for ( var i = 0; i < triggers.length; i++ ) {
124			triggers[ i ].setAttribute( 'aria-expanded', 'false' );
125		}
126
127		if ( skillsForLifeLastShareTrigger && typeof skillsForLifeLastShareTrigger.focus === 'function' ) {
128			skillsForLifeLastShareTrigger.focus();
129		}
130	}
131}
132
133document.addEventListener( 'keydown', function ( event ) {
134	var overlay = document.getElementById( 'ShareOverlay' );
135	if ( event.key === 'Escape' && overlay && overlay.getAttribute( 'aria-hidden' ) === 'false' ) {
136		closeShare();
137	}
138} );

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.