// Bootstrap form validation (() => { 'use strict' const forms = document.querySelectorAll('.needs-validation') Array.from(forms).forEach(form => { form.addEventListener('submit', event => { if (!form.checkValidity()) { event.preventDefault() event.stopPropagation() } form.classList.add('was-validated') }, false) }) })(); // Show toast notification for form submission status document.addEventListener('DOMContentLoaded', () => { const urlParams = new URLSearchParams(window.location.search); const status = urlParams.get('status'); const message = urlParams.get('message'); if (status) { const toastContainer = document.getElementById('toast-container'); const toastHTML = ` `; toastContainer.innerHTML = toastHTML; const toastEl = toastContainer.querySelector('.toast'); const toast = new bootstrap.Toast(toastEl, { delay: 5000 }); toast.show(); } }); // Initialize Particles.js particlesJS.load('particles-js', 'assets/particles.json', function() { console.log('particles.js config loaded'); });