// Utility: get users object from localStorage (or empty object) function getUsers() { const users = localStorage.getItem("users"); return users ? JSON.parse(users) : {}; } // Utility: save users object back to localStorage function saveUsers(users) { localStorage.setItem("users", JSON.stringify(users)); } // SIGNUP PAGE LOGIC const signupForm = document.getElementById("signupForm"); if (signupForm) { const signupMessage = document.getElementById("signupMessage"); signupForm.addEventListener("submit", (e) => { e.preventDefault(); const username = document.getElementById("newUsername").value.trim(); const password = document.getElementById("newPassword").value; const confirmPassword = document.getElementById("confirmPassword").value; if (!username || !password || !confirmPassword) { signupMessage.style.color = "red"; signupMessage.textContent = "❌ Please fill in all fields."; return; } if (password !== confirmPassword) { signupMessage.style.color = "red"; signupMessage.textContent = "❌ Passwords do not match."; return; } const users = getUsers(); if (users[username]) { signupMessage.style.color = "red"; signupMessage.textContent = "❌ Username already exists."; return; } users[username] = password; saveUsers(users); signupMessage.style.color = "green"; signupMessage.textContent = "✅ Account created! Redirecting to login..."; setTimeout(() => { window.location.href = "index.html"; }, 1500); }); } // LOGIN PAGE LOGIC const loginForm = document.getElementById("loginForm"); if (loginForm) { const loginMessage = document.getElementById("loginMessage"); loginForm.addEventListener("submit", (e) => { e.preventDefault(); const username = document.getElementById("loginUsername").value.trim(); const password = document.getElementById("loginPassword").value; if (!username || !password) { loginMessage.style.color = "red"; loginMessage.textContent = "❌ Please enter both username and password."; return; } const users = getUsers(); if (users[username] && users[username] === password) { loginMessage.style.color = "green"; loginMessage.textContent = `✅ Welcome back, ${username}!`; // Store logged-in user and redirect localStorage.setItem("loggedInUser", username); setTimeout(() => { window.location.href = "dashboard.html"; }, 1000); } else { loginMessage.style.color = "red"; loginMessage.textContent = "❌ Invalid username or password."; } }); }