// Initialize tooltips document.addEventListener('DOMContentLoaded', function() { checkSecurityHeaders(); // This would be replaced with actual tooltip initialization console.log('Tooltips initialized'); // Simulate loading data setTimeout(() => { const loadingElements = document.querySelectorAll('.loading'); loadingElements.forEach(el => { el.classList.remove('loading'); }); }, 1500); }); // Security check function checkSecurityHeaders() { const securityHeaders = { 'Content-Security-Policy': document.querySelector('meta[http-equiv="Content-Security-Policy"]') !== null, 'X-Frame-Options': document.querySelector('meta[http-equiv="X-Frame-Options"]') !== null, 'X-Content-Type-Options': document.querySelector('meta[http-equiv="X-Content-Type-Options"]') !== null, 'Strict-Transport-Security': document.querySelector('meta[http-equiv="Strict-Transport-Security"]') !== null }; if (!Object.values(securityHeaders).every(Boolean)) { console.warn('Some security headers are missing'); } } // Toggle mobile menu function toggleMobileMenu() { const sidebar = document.querySelector('custom-sidebar'); const body = document.body; if (sidebar) { sidebar.isMobileOpen = !sidebar.isMobileOpen; sidebar.render(); if (sidebar.isMobileOpen) { body.classList.add('menu-open'); body.style.overflow = 'hidden'; } else { body.classList.remove('menu-open'); body.style.overflow = ''; } } } // Viewport meta tag for mobile function setupViewport() { const viewportMeta = document.createElement('meta'); viewportMeta.name = 'viewport'; viewportMeta.content = 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no'; document.head.appendChild(viewportMeta); } // Initialize mobile setup document.addEventListener('DOMContentLoaded', function() { setupViewport(); checkSecurityHeaders(); // Simulate loading data setTimeout(() => { const loadingElements = document.querySelectorAll('.loading'); loadingElements.forEach(el => { el.classList.remove('loading'); }); }, 1500); }); // Dark mode toggle function toggleDarkMode() { document.documentElement.classList.toggle('dark'); localStorage.setItem('darkMode', document.documentElement.classList.contains('dark')); } // Check for saved dark mode preference if (localStorage.getItem('darkMode') === 'false') { document.documentElement.classList.remove('dark'); }