Statutory Boards, Committees and Other Bodies

(function () { function findTabLinkById(tabId) { // find the tab container, then a link/button that targets the pane id var container = document.querySelector('.lfr-layout-structure-item-basic-component-tabs'); if (!container) return null; // common cases: <a href="#id"> or <button data-target="#id"> or <button aria-controls="id"> var a = container.querySelector('a[href="#' + tabId + '"]'); if (a) return a; var btn = container.querySelector('button[data-target="#' + tabId + '"], button[aria-controls="' + tabId + '"]'); return btn; } function activateTab(tabId) { var link = findTabLinkById(tabId); if (!link) return; // If using native anchor links, click will activate; for Bootstrap/Clay, click usually works too. link.click(); // As a fallback, add active classes manually (generic): try { var container = document.querySelector('.lfr-layout-structure-item-basic-component-tabs'); var activeClassItems = container.querySelectorAll('.nav-link, .tab-item'); activeClassItems.forEach(function (el) { el.classList.remove('active', 'show'); }); link.classList.add('active'); var pane = document.getElementById(tabId); if (pane) { var panes = container.querySelectorAll('.tab-pane, .tab-panel'); panes.forEach(function (p) { p.classList.remove('active', 'show'); }); pane.classList.add('active', 'show'); } } catch (e) {} } function getRequestedTabId() { if (location.hash) return location.hash.slice(1); try { var params = new URLSearchParams(location.search); return params.get('tab'); } catch (e) { return null; } } function applyFromUrl() { var id = getRequestedTabId(); if (id) activateTab(id); } document.addEventListener('DOMContentLoaded', applyFromUrl); window.addEventListener('hashchange', applyFromUrl); // Optional: update URL when user changes tabs document.addEventListener('click', function (e) { var container = e.target.closest('.lfr-layout-structure-item-basic-component-tabs'); if (!container) return; var target = e.target.closest('a[href^="#"], button[data-target], button[aria-controls]'); if (!target) return; var id = null; if (target.getAttribute('href') && target.getAttribute('href').startsWith('#')) { id = target.getAttribute('href').slice(1); } else if (target.dataset.target && target.dataset.target.startsWith('#')) { id = target.dataset.target.slice(1); } else if (target.getAttribute('aria-controls')) { id = target.getAttribute('aria-controls'); } if (!id) return; try { var url = new URL(location.href); url.hash = ''; // prefer query param to avoid default fragment navigation if desired url.searchParams.set('tab', id); history.replaceState(null, '', url.toString()); } catch (err) {} }); })(); // selected tab does not show when clicked from dropdown menus, // reload page once to ensure selected tab is shown if(window.location.href.substr(-41) !== "/statutory-boards-committees-other-bodies") { if(window.location.href.substr(-6) !== "&rel=1") { window.location = window.location.href + "&rel=1"; } } //