modified: app.py new file: templates/admin_dashboard.html.j2 new file: templates/base.html.j2 new file: templates/daily_leaderboard.html.j2 new file: templates/daily_puzzle.html.j2 new file: templates/home.html.j2 new file: templates/invite_admin.html.j2 new file: templates/king_of_the_mountain.html.j2 new file: templates/leaderboard_index.html.j2 new file: templates/login.html.j2 new file: templates/manage_admins.html.j2 new file: templates/profile.html.j2 new file: templates/puzzle_menu.html.j2 new file: templates/upload.html.j2 new file: templates/verify.html.j2
34 lines
1.1 KiB
Django/Jinja
34 lines
1.1 KiB
Django/Jinja
{% extends 'base.html.j2' %}
|
|
{% block content %}
|
|
<h1>Admin Dashboard</h1>
|
|
<p>Welcome, {{ request.user.username }}! Manage puzzles and admins here.</p>
|
|
<h2>Puzzle Management</h2>
|
|
<p><a href="{{ request.route_url('upload') }}">Upload/Schedule Puzzles</a></p>
|
|
<h2>Admin Management</h2>
|
|
<p><a href="{{ request.route_url('invite_admin') }}">Invite Admin</a></p>
|
|
<p><a href="{{ request.route_url('manage_admins') }}">Manage Admins</a></p>
|
|
<h2>Scheduled Puzzles</h2>
|
|
<table>
|
|
<tr>
|
|
<th>Date</th>
|
|
<th>Size</th>
|
|
<th>Title</th>
|
|
<th>Actions</th>
|
|
</tr>
|
|
{% for p in puzzles %}
|
|
<tr>
|
|
<td>{{ p.date }}</td>
|
|
<td>{{ p.size }}x{{ p.size }}</td>
|
|
<td>{{ p.title }}</td>
|
|
<td>
|
|
<a href="{{ request.route_url('edit_puzzle', puzzle_id=p.id) }}">Edit</a>
|
|
{% if p.is_visible %}
|
|
<a href="{{ request.route_url('toggle_visibility', puzzle_id=p.id) }}">Hide</a>
|
|
{% else %}
|
|
<a href="{{ request.route_url('toggle_visibility', puzzle_id=p.id) }}">Show</a>
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</table>
|
|
{% endblock %}
|