// Shared JavaScript across all pages console.log('Eventful Days App loaded'); // Smooth scrolling for anchor links document.querySelectorAll('a[href^="#"]').forEach(anchor => { anchor.addEventListener('click', function (e) { e.preventDefault(); const target = document.querySelector(this.getAttribute('href')); if (target) { window.scrollTo({ top: target.offsetTop - 80, behavior: 'smooth' }); } }); }); // Navbar scroll effect window.addEventListener('scroll', function() { const navbar = document.querySelector('custom-navbar'); if (window.scrollY > 50) { navbar.classList.add('scrolled'); } else { navbar.classList.remove('scrolled'); } }); // Form validation example function validateForm(form) { let isValid = true; // Example validation for required fields form.querySelectorAll('[required]').forEach(field => { if (!field.value.trim()) { isValid = false; field.classList.add('border-red-500'); } else { field.classList.remove('border-red-500'); } }); return isValid; } // Toggle mobile menu function toggleMobileMenu() { const menu = document.getElementById('mobile-menu'); menu.classList.toggle('hidden'); } // Initialize tooltips (if using) function initTooltips() { const tooltips = document.querySelectorAll('[data-tooltip]'); tooltips.forEach(tooltip => { tooltip.addEventListener('mouseenter', function() { const tooltipText = this.getAttribute('data-tooltip'); // Implementation for showing tooltip }); }); } // Document ready equivalent document.addEventListener('DOMContentLoaded', function() { console.log('DOM fully loaded'); initTooltips(); });