modified: templates/admin_dashboard.html
modified: templates/admin_giveaways.html modified: templates/user_dashboard.html modified: templates/user_giveaways.html
This commit is contained in:
@@ -1,11 +1,13 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Admin Dashboard</title>
|
||||
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
|
||||
<a class="navbar-brand" href="#">Multus Bot - Admin Dashboard</a>
|
||||
@@ -24,6 +26,7 @@
|
||||
<div class="container mt-5">
|
||||
<h1 class="text-center">Welcome, {{ user_info.username }} (Admin)</h1>
|
||||
<p class="text-center">Here you can manage the system and users.</p>
|
||||
|
||||
<div class="card mt-4">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Bot Status</h5>
|
||||
@@ -38,10 +41,25 @@
|
||||
class="btn btn-danger btn-block {{ 'disabled' if not bot_running else '' }}">Stop Bot</a>
|
||||
<a href="{{ url_for('settings') }}" class="btn btn-secondary btn-block">Settings</a>
|
||||
<a href="{{ url_for('view_logs') }}" class="btn btn-warning btn-block">View Logs</a>
|
||||
<a href="{{ url_for('users') }}" class="btn btn-info btn-block">User Management</a>
|
||||
<a href="{{ url_for('logout') }}" class="btn btn-outline-secondary btn-block">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mt-4">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Giveaway Management</h5>
|
||||
<p class="card-text">Manage and view all active giveaways.</p>
|
||||
<a href="{{ url_for('admin_giveaways') }}" class="btn btn-info btn-block">View Giveaways</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mt-4">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">User Management</h5>
|
||||
<p class="card-text">Manage all registered users.</p>
|
||||
<a href="{{ url_for('users') }}" class="btn btn-info btn-block">View Users</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -4,40 +4,23 @@
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Admin Dashboard</title>
|
||||
<title>Admin - Giveaways</title>
|
||||
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet">
|
||||
<style>
|
||||
.container {
|
||||
margin-top: 50px;
|
||||
}
|
||||
|
||||
.dashboard-card {
|
||||
transition: transform 0.2s;
|
||||
}
|
||||
|
||||
.dashboard-card:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
.card-icon {
|
||||
font-size: 2rem;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.bg-custom {
|
||||
background-color: #343a40;
|
||||
th a {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!-- Navbar -->
|
||||
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
|
||||
<a class="navbar-brand" href="#">Multus Bot - Admin Dashboard</a>
|
||||
<a class="navbar-brand" href="#">Multus Bot - Admin Giveaways</a>
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav ml-auto">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url_for('user_dashboard') }}">Switch to User View</a>
|
||||
<a class="nav-link" href="{{ url_for('admin_dashboard') }}">Admin Dashboard</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url_for('logout') }}">Logout</a>
|
||||
@@ -46,72 +29,44 @@
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<!-- Admin Dashboard Content -->
|
||||
<div class="container">
|
||||
<h1 class="text-center mb-4">Welcome, {{ user_info.username }} (Admin)</h1>
|
||||
|
||||
<!-- Row for Bot Status, Settings, and Logs -->
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="card bg-success text-white dashboard-card">
|
||||
<div class="card-body text-center">
|
||||
<i class="fas fa-robot card-icon"></i>
|
||||
<h5 class="card-title mt-2">Bot Status</h5>
|
||||
<p class="card-text">Status:
|
||||
<span class="badge badge-{{ 'success' if bot_running else 'danger' }}">
|
||||
{{ "Running" if bot_running else "Stopped" }}
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container mt-5">
|
||||
<h1 class="text-center">Giveaways Management</h1>
|
||||
<table class="table table-bordered table-hover mt-4">
|
||||
<thead class="thead-dark">
|
||||
<tr>
|
||||
<th><a href="{{ url_for('admin_giveaways', sort='id', order='asc' if sort_field == 'id' and order == 'desc' else 'desc') }}">ID</a></th>
|
||||
<th><a href="{{ url_for('admin_giveaways', sort='platform', order='asc' if sort_field == 'platform' and order == 'desc' else 'desc') }}">Platform</a></th>
|
||||
<th><a href="{{ url_for('admin_giveaways', sort='name', order='asc' if sort_field == 'name' and order == 'desc' else 'desc') }}">Name</a></th>
|
||||
<th>Game Key</th>
|
||||
<th>Winner Discord ID</th>
|
||||
<th>Active</th>
|
||||
<th>Actions</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for giveaway in giveaways %}
|
||||
<tr>
|
||||
<td>{{ giveaway.id }}</td>
|
||||
<td>{{ giveaway.platform }}</td>
|
||||
<td>{{ giveaway.name }}</td>
|
||||
<td>{{ giveaway.game_key }}</td>
|
||||
<td>{{ giveaway.winner_dc_id or 'Not Assigned' }}</td>
|
||||
<td>
|
||||
{% if giveaway.aktiv %}
|
||||
<span class="badge badge-success">Active</span>
|
||||
{% else %}
|
||||
<span class="badge badge-danger">Inactive</span>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
<a href="{{ url_for('edit_giveaway', giveaway_id=giveaway.id) }}" class="btn btn-primary btn-sm">Edit</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="card bg-info text-white dashboard-card">
|
||||
<div class="card-body text-center">
|
||||
<i class="fas fa-cogs card-icon"></i>
|
||||
<h5 class="card-title mt-2">Manage Settings</h5>
|
||||
<a href="{{ url_for('settings') }}" class="btn btn-light btn-block">Settings</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="card bg-warning text-white dashboard-card">
|
||||
<div class="card-body text-center">
|
||||
<i class="fas fa-file-alt card-icon"></i>
|
||||
<h5 class="card-title mt-2">View Logs</h5>
|
||||
<a href="{{ url_for('view_logs') }}" class="btn btn-light btn-block">Logs</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Row for User Management and Giveaways -->
|
||||
<div class="row mt-5">
|
||||
<div class="col-md-6">
|
||||
<div class="card bg-secondary text-white dashboard-card">
|
||||
<div class="card-body text-center">
|
||||
<i class="fas fa-users card-icon"></i>
|
||||
<h5 class="card-title mt-2">User Management</h5>
|
||||
<a href="{{ url_for('users') }}" class="btn btn-light btn-block">Manage Users</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<div class="card bg-danger text-white dashboard-card">
|
||||
<div class="card-body text-center">
|
||||
<i class="fas fa-gift card-icon"></i>
|
||||
<h5 class="card-title mt-2">Manage Giveaways</h5>
|
||||
<a href="{{ url_for('admin_giveaways') }}" class="btn btn-light btn-block">Giveaways</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://kit.fontawesome.com/a076d05399.js"></script>
|
||||
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.2/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
|
||||
@@ -6,46 +6,15 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>User Dashboard</title>
|
||||
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet">
|
||||
<style>
|
||||
body {
|
||||
background-color: #f7f7f7;
|
||||
}
|
||||
.card {
|
||||
margin-top: 20px;
|
||||
}
|
||||
.card-header {
|
||||
background-color: #343a40;
|
||||
color: white;
|
||||
}
|
||||
.user-info {
|
||||
margin-top: 20px;
|
||||
}
|
||||
.points {
|
||||
font-size: 2em;
|
||||
color: #28a745;
|
||||
}
|
||||
.badge-rank {
|
||||
font-size: 1.2em;
|
||||
padding: 10px;
|
||||
}
|
||||
.footer {
|
||||
background-color: #343a40;
|
||||
color: white;
|
||||
padding: 20px;
|
||||
text-align: center;
|
||||
margin-top: 50px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!-- Navbar -->
|
||||
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
|
||||
<a class="navbar-brand" href="#">Multus Bot - User Dashboard</a>
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav ml-auto">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url_for('admin_dashboard') }}">Switch to Admin View (Admin only)</a>
|
||||
<a class="nav-link" href="{{ url_for('admin_dashboard') }}">Switch to Admin View</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url_for('logout') }}">Logout</a>
|
||||
@@ -54,89 +23,26 @@
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<!-- User Info -->
|
||||
<div class="container user-info">
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-center">
|
||||
<h1>Welcome, {{ user_info.username }}</h1>
|
||||
<p>Your Discord ID: {{ user_info.id }}</p>
|
||||
<div class="container mt-5">
|
||||
<h1 class="text-center">Welcome, {{ user_info.username }}</h1>
|
||||
<p class="text-center">Here you can view your points, status, and more.</p>
|
||||
|
||||
<div class="card mt-4">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Your Points</h5>
|
||||
<p class="card-text">You currently have: <strong>{{ points }}</strong> points.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mt-4">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Your Giveaways</h5>
|
||||
<p class="card-text">Check if you have won any giveaways and redeem your prizes.</p>
|
||||
<a href="{{ url_for('user_giveaways') }}" class="btn btn-info btn-block">View Your Giveaways</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Dashboard Cards -->
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<!-- Points Card -->
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
Points
|
||||
</div>
|
||||
<div class="card-body text-center">
|
||||
<p class="points">{{ user_data.points }}</p>
|
||||
<p>Points available</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Rank Card -->
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
Rank
|
||||
</div>
|
||||
<div class="card-body text-center">
|
||||
<span class="badge badge-rank badge-{{ 'primary' if user_data.permission == 10 else 'secondary' }}">
|
||||
{{ 'Owner' if user_data.permission == 10 else 'Admin' if user_data.permission == 8 else 'Mod' if user_data.permission == 5 else 'User' }}
|
||||
</span>
|
||||
<p>Your current rank</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bot Status Card -->
|
||||
<div class="col-md-4">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
Bot Status
|
||||
</div>
|
||||
<div class="card-body text-center">
|
||||
<span class="badge badge-{{ 'success' if bot_running else 'danger' }}">
|
||||
{{ "Running" if bot_running else "Stopped" }}
|
||||
</span>
|
||||
<p>Current Bot Status</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Helpful Links -->
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
Useful Links
|
||||
</div>
|
||||
<div class="card-body text-center">
|
||||
<a href="/help" class="btn btn-info btn-lg">Help</a>
|
||||
<a href="/settings" class="btn btn-secondary btn-lg">Settings</a>
|
||||
<a href="https://discordapp.com/users/@simolzimol" class="btn btn-outline-primary btn-lg">Contact SimolZimol</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<p>© 2024 Multus Bot | Built by SimolZimol | Exclusively on Ludi et Historia</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.2/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -4,38 +4,24 @@
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>User Dashboard</title>
|
||||
<title>My Giveaways</title>
|
||||
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet">
|
||||
<style>
|
||||
.container {
|
||||
margin-top: 50px;
|
||||
}
|
||||
|
||||
.dashboard-card {
|
||||
transition: transform 0.2s;
|
||||
}
|
||||
|
||||
.dashboard-card:hover {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
.card-icon {
|
||||
font-size: 2rem;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.bg-custom {
|
||||
background-color: #6c757d;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!-- Navbar -->
|
||||
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
|
||||
<a class="navbar-brand" href="#">Multus Bot - User Dashboard</a>
|
||||
<a class="navbar-brand" href="#">Multus Bot - My Giveaways</a>
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav ml-auto">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url_for('user_dashboard') }}">User Dashboard</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url_for('logout') }}">Logout</a>
|
||||
</li>
|
||||
@@ -43,58 +29,45 @@
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<!-- User Dashboard Content -->
|
||||
<!-- Giveaways List -->
|
||||
<div class="container">
|
||||
<h1 class="text-center mb-4">Welcome, {{ user_info.username }}</h1>
|
||||
|
||||
<!-- Row for Points and Status -->
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="card bg-success text-white dashboard-card">
|
||||
<div class="card-body text-center">
|
||||
<i class="fas fa-coins card-icon"></i>
|
||||
<h5 class="card-title mt-2">Your Points</h5>
|
||||
<p class="card-text">{{ points }} Points</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="card bg-info text-white dashboard-card">
|
||||
<div class="card-body text-center">
|
||||
<i class="fas fa-trophy card-icon"></i>
|
||||
<h5 class="card-title mt-2">Active Giveaways</h5>
|
||||
<p class="card-text">{{ active_giveaways }} Giveaways</p>
|
||||
<a href="{{ url_for('user_giveaways') }}" class="btn btn-light">View Your Giveaways</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="card bg-custom text-white dashboard-card">
|
||||
<div class="card-body text-center">
|
||||
<i class="fas fa-user-alt card-icon"></i>
|
||||
<h5 class="card-title mt-2">Account Status</h5>
|
||||
<p class="card-text">{{ account_status }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- User Activity -->
|
||||
<h1 class="text-center">Giveaways You've Won</h1>
|
||||
<div class="row mt-5">
|
||||
<div class="col-md-12">
|
||||
<h4>Recent Activity</h4>
|
||||
<ul class="list-group">
|
||||
{% for activity in recent_activity %}
|
||||
<li class="list-group-item">{{ activity }}</li>
|
||||
{% if giveaways %}
|
||||
<table class="table table-bordered">
|
||||
<thead class="thead-dark">
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Platform</th>
|
||||
<th>Name</th>
|
||||
<th>Game Key</th>
|
||||
<th>Actions</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for giveaway in giveaways %}
|
||||
<tr>
|
||||
<td>{{ giveaway.id }}</td>
|
||||
<td>{{ giveaway.platform }}</td>
|
||||
<td>{{ giveaway.name }}</td>
|
||||
<td>{{ giveaway.game_key }}</td>
|
||||
<td>
|
||||
<form method="POST" action="{{ url_for('redeem_giveaway', giveaway_id=giveaway.id) }}">
|
||||
<button type="submit" class="btn btn-success">Redeem Prize</button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</tbody>
|
||||
</table>
|
||||
{% else %}
|
||||
<p class="text-center">You have not won any giveaways yet.</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://kit.fontawesome.com/a076d05399.js"></script>
|
||||
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.2/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user