f43b13f625
- Created `__init__.py` for blueprint registration. - Implemented `auth.py` for user authentication (login, register, logout). - Added `admin.py` for admin functionalities (user management, stats). - Developed `dashboard.py` for user dashboard displaying user info and generated content. - Created `gallery.py` for managing and displaying images and videos. - Implemented `generate.py` for text, image, and video generation functionalities. - Added `profile.py` for user profile management. - Updated templates to reflect new route structures and improve navigation.
61 lines
2.0 KiB
HTML
61 lines
2.0 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>{% block title %}All You Can GET AI{% endblock %}</title>
|
|
<link
|
|
rel="stylesheet"
|
|
href="{{ url_for('static', filename='style.css') }}"
|
|
/>
|
|
<script src="https://cdn.tailwindcss.com"></script>
|
|
</head>
|
|
<body>
|
|
<header>
|
|
<nav>
|
|
<a href="{{ url_for('auth.index') }}" class="brand"
|
|
>All You Can GET AI</a
|
|
>
|
|
|
|
<button class="hamburger" aria-label="Open menu">
|
|
<span></span><span></span><span></span>
|
|
</button>
|
|
|
|
<div class="nav-links">
|
|
{% if session.get('access_token') %}
|
|
<a href="{{ url_for('dashboard.index') }}">Dashboard</a>
|
|
<a href="{{ url_for('gallery.index') }}">Gallery</a>
|
|
|
|
<a href="{{ url_for('generate.text') }}">Generate Text</a>
|
|
<a href="{{ url_for('generate.image') }}">Generate Image</a>
|
|
<a href="{{ url_for('generate.video') }}">Generate Video</a>
|
|
|
|
<a href="{{ url_for('profile.index') }}">Profile</a>
|
|
{% if session.get('user_role') == 'admin' %}
|
|
<a href="{{ url_for('admin.index') }}">Admin</a>
|
|
{% endif %}
|
|
<a href="{{ url_for('auth.logout') }}">Log out</a>
|
|
{% else %}
|
|
<a href="{{ url_for('auth.login') }}">Log in</a>
|
|
<a href="{{ url_for('auth.register') }}">Register</a>
|
|
{% endif %}
|
|
</div>
|
|
</nav>
|
|
</header>
|
|
|
|
<div id="loading-overlay">
|
|
<div class="spinner"></div>
|
|
<span class="spinner-label">Working…</span>
|
|
</div>
|
|
|
|
<main>
|
|
{% with messages = get_flashed_messages(with_categories=true) %} {% for
|
|
category, message in messages %}
|
|
<div class="alert alert-{{ category }}">{{ message }}</div>
|
|
{% endfor %} {% endwith %} {% block content %}{% endblock %}
|
|
</main>
|
|
|
|
<script src="{{ url_for('static', filename='app.js') }}"></script>
|
|
</body>
|
|
</html>
|