File size: 2,655 Bytes
35195b0
 
 
 
 
 
 
 
 
 
 
28c6a45
35195b0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28c6a45
 
3f0c4d9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28c6a45
 
 
 
 
 
3f0c4d9
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
// 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.";
    }
  });
}