103 lines
5.4 KiB
HTML
103 lines
5.4 KiB
HTML
<nav class="navbar navbar-expand-lg navbar-dark bg-primary fixed-top">
|
|
<div class="container-fluid">
|
|
<!-- Logo -->
|
|
<a class="navbar-brand" href="{{ url_for('student.dashboard' if not current_user.is_admin() else 'admin.dashboard') }}">
|
|
<i class="fas fa-clock me-2"></i>
|
|
CHM考勤系统
|
|
</a>
|
|
|
|
<!-- 移动端切换按钮 -->
|
|
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
|
|
<span class="navbar-toggler-icon"></span>
|
|
</button>
|
|
|
|
<div class="collapse navbar-collapse" id="navbarNav">
|
|
<!-- 左侧导航菜单 -->
|
|
<ul class="navbar-nav me-auto">
|
|
{% if current_user.is_admin() %}
|
|
<!-- 管理员菜单 -->
|
|
<li class="nav-item">
|
|
<a class="nav-link {{ 'active' if request.endpoint == 'admin.dashboard' }}" href="{{ url_for('admin.dashboard') }}">
|
|
<i class="fas fa-tachometer-alt me-1"></i>控制台
|
|
</a>
|
|
</li>
|
|
<li class="nav-item dropdown">
|
|
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown">
|
|
<i class="fas fa-users me-1"></i>学生管理
|
|
</a>
|
|
<ul class="dropdown-menu">
|
|
<li><a class="dropdown-item" href="{{ url_for('admin.student_list') }}">
|
|
<i class="fas fa-list me-2"></i>学生列表
|
|
</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="nav-item dropdown">
|
|
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown">
|
|
<i class="fas fa-calendar-check me-1"></i>考勤管理
|
|
</a>
|
|
<ul class="dropdown-menu">
|
|
<li><a class="dropdown-item" href="{{ url_for('admin.attendance_management') }}">
|
|
<i class="fas fa-table me-2"></i>考勤记录
|
|
</a></li>
|
|
<li><a class="dropdown-item" href="{{ url_for('admin.upload_attendance') }}">
|
|
<i class="fas fa-upload me-2"></i>上传数据
|
|
</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link {{ 'active' if request.endpoint == 'admin.statistics' }}" href="{{ url_for('admin.statistics') }}">
|
|
<i class="fas fa-chart-bar me-1"></i>统计报表
|
|
</a>
|
|
</li>
|
|
{% else %}
|
|
<!-- 学生菜单 -->
|
|
<li class="nav-item">
|
|
<a class="nav-link {{ 'active' if request.endpoint == 'student.dashboard' }}" href="{{ url_for('student.dashboard') }}">
|
|
<i class="fas fa-home me-1"></i>首页
|
|
</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link {{ 'active' if request.endpoint == 'student.attendance' }}" href="{{ url_for('student.attendance') }}">
|
|
<i class="fas fa-calendar-check me-1"></i>我的考勤
|
|
</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link {{ 'active' if request.endpoint == 'student.statistics' }}" href="{{ url_for('student.statistics') }}">
|
|
<i class="fas fa-chart-line me-1"></i>个人统计
|
|
</a>
|
|
</li>
|
|
{% endif %}
|
|
</ul>
|
|
|
|
<!-- 右侧用户菜单 -->
|
|
<ul class="navbar-nav">
|
|
<li class="nav-item dropdown">
|
|
<a class="nav-link dropdown-toggle d-flex align-items-center" href="#" role="button" data-bs-toggle="dropdown">
|
|
<i class="fas fa-user-circle me-2"></i>
|
|
<span>
|
|
{% if current_user.is_admin() %}
|
|
管理员
|
|
{% else %}
|
|
{% set student = get_current_student() %}
|
|
{{ student.name if student else current_user.student_number }}
|
|
{% endif %}
|
|
</span>
|
|
</a>
|
|
<ul class="dropdown-menu dropdown-menu-end">
|
|
<li><a class="dropdown-item" href="{{ url_for('auth.profile') }}">
|
|
<i class="fas fa-user me-2"></i>个人信息
|
|
</a></li>
|
|
<li><a class="dropdown-item" href="{{ url_for('auth.change_password') }}">
|
|
<i class="fas fa-key me-2"></i>修改密码
|
|
</a></li>
|
|
<li><hr class="dropdown-divider"></li>
|
|
<li><a class="dropdown-item text-danger" href="{{ url_for('auth.logout') }}">
|
|
<i class="fas fa-sign-out-alt me-2"></i>退出登录
|
|
</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</nav>
|