PageSourceSearch

https://smartinnovationnorway.com/wp-content/themes/wp-theme-sin-n…?ver=2.117.0&sb-version=1790065487

js smartinnovationnorway.com collected 2026-09-26 00:45:45 UTC 1,448 bytes, 43 lines download raw bytes

1( function() {
2	document.addEventListener( 'DOMContentLoaded', function() {
3		var filterBars = document.querySelectorAll( '.sin-events-filters' );
4
5		filterBars.forEach( function( bar ) {
6			var buttons = bar.querySelectorAll( '.sin-filter-btn' );
7			var targetId = bar.getAttribute( 'data-target' );
8			var grid = document.getElementById( targetId );
9			if ( ! grid ) return;
10
11			var cards = grid.querySelectorAll( '.sin-event-card' );
12
13			buttons.forEach( function( btn ) {
14				btn.addEventListener( 'click', function() {
15					var filter = this.getAttribute( 'data-filter' );
16
17					// Update active state
18					buttons.forEach( function( b ) { b.classList.remove( 'active' ); } );
19					this.classList.add( 'active' );
20
21					// Filter cards
22					var visibleCount = 0;
23					cards.forEach( function( card ) {
24						var cat = card.getAttribute( 'data-category' ) || '';
25						if ( filter === 'all' || filter === 'upcoming' || cat === filter ) {
26							card.setAttribute( 'data-hidden', 'false' );
27							card.style.display = '';
28							visibleCount++;
29						} else {
30							card.setAttribute( 'data-hidden', 'true' );
31							card.style.display = 'none';
32						}
33					} );
34
35					// Update count on "all" button
36					var allBtn = bar.querySelector( '[data-filter="all"]' );
37					if ( ! allBtn ) allBtn = bar.querySelector( '.sin-filter-btn' );
38					// Don't update count on category filter, only show total on "all"
39				} );
40			} );
41		} );
42	} );
43} )();

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.