File size: 1,898 Bytes
ecef420
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
<!-- Unified Navigation Bar Component -->
<!-- Copy this to all pages: index.html, login.html, register.html, student.html, student_history.html, lecturer.html -->

<nav class="navbar">
  <div class="container navbar-content">
    <a href="/" class="navbar-brand">✨ Attendr</a>
    <ul class="navbar-nav">
      <li><a href="/" class="navbar-link">Home</a></li>
      {% if current_user %} {% if current_user.role == 'student' %}
      <li><a href="/student" class="navbar-link">Mark Attendance</a></li>
      <li><a href="/student/history" class="navbar-link">History</a></li>
      {% elif current_user.role == 'lecturer' %}
      <li><a href="/lecturer" class="navbar-link">Dashboard</a></li>
      <li><a href="/lecturer/history" class="navbar-link">History</a></li>
      {% elif current_user.role == 'admin' %}
      <li><a href="/admin" class="navbar-link">Admin Dashboard</a></li>
      {% endif %}
      <li>
        <span class="navbar-link" style="color: var(--color-primary)"
          >👤 {{ current_user.name }}</span
        >
      </li>
      <li><a href="#" onclick="logout()" class="navbar-link">Logout</a></li>
      {% else %}
      <li><a href="/login" class="navbar-link">Login</a></li>
      <li><a href="/register" class="navbar-link">Register</a></li>
      {% endif %}
    </ul>
  </div>
</nav>

<!-- Logout Script (add to pages that need it) -->
<script>
  async function logout() {
    if (!confirm("Are you sure you want to logout?")) return;

    try {
      const response = await fetch("/api/auth/logout", {
        method: "POST",
        headers: { "Content-Type": "application/json" },
      });

      const data = await response.json();

      if (data.success) {
        alert(data.message);
        window.location.href = "/";
      } else {
        alert("Logout failed");
      }
    } catch (error) {
      alert("Logout failed");
    }
  }
</script>