Files

83 lines
3.6 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{% block title %}Raccoon Timekeeper{% endblock %}</title>
<link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
<link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
{% block extra_css %}{% endblock %}
</head>
<body>
<div class="app-container">
<!-- Header -->
<header class="header">
<div class="header-content">
<div class="logo">
<div class="logo-icon">🦝</div>
<div class="logo-text">
<h1>Raccoon Timekeeper</h1>
<span class="tagline">{% block tagline %}Track your work hours{% endblock %}</span>
</div>
</div>
{% if current_user.is_authenticated %}
<nav class="nav-links">
<a href="{{ url_for('index') }}" class="nav-link {% if request.endpoint == 'index' %}active{% endif %}">
<span class="nav-icon">📝</span>
Log Time
</a>
<a href="{{ url_for('settings') }}" class="nav-link {% if request.endpoint == 'settings' %}active{% endif %}">
<span class="nav-icon">⚙️</span>
Tasks
</a>
{% if current_user.is_admin %}
<a href="{{ url_for('admin_users') }}" class="nav-link {% if request.endpoint == 'admin_users' %}active{% endif %}">
<span class="nav-icon">👥</span>
Users
</a>
{% endif %}
<div class="user-menu">
<button class="user-menu-btn" onclick="toggleUserMenu()">
<span class="user-avatar">{{ current_user.display_name[0]|upper if current_user.display_name else current_user.username[0]|upper }}</span>
<span class="user-name">{{ current_user.display_name or current_user.username }}</span>
<span class="dropdown-arrow"></span>
</button>
<div class="user-dropdown" id="userDropdown">
<a href="{{ url_for('change_password') }}">🔑 Change Password</a>
<hr>
<a href="{{ url_for('logout') }}">🚪 Logout</a>
</div>
</div>
</nav>
{% endif %}
</div>
</header>
<!-- Flash Messages -->
{% with messages = get_flashed_messages(with_categories=true) %}
{% if messages %}
<div class="flash-messages">
{% for category, message in messages %}
<div class="flash-message flash-{{ category }}">
{{ message }}
<button class="flash-close" onclick="this.parentElement.remove()">×</button>
</div>
{% endfor %}
</div>
{% endif %}
{% endwith %}
<!-- Main Content -->
<main class="main-content">
{% block content %}{% endblock %}
</main>
</div>
<!-- Toast Container -->
<div id="toastContainer" class="toast-container"></div>
<script src="{{ url_for('static', filename='js/app.js') }}"></script>
{% block extra_js %}{% endblock %}
</body>
</html>