diff --git a/app.py b/app.py index 28579a6..e04e35a 100644 --- a/app.py +++ b/app.py @@ -290,36 +290,36 @@ def user_server_data(guild_id): @app.route("/server_admin_dashboard/") def server_admin_dashboard(guild_id): - """Serverbasiertes Admin-Dashboard für server-spezifische Admin-Rechte""" + """Serverbasiertes Admin-Dashboard für server-spezifische Admin-Rechte.""" user_info = session.get("discord_user") if user_info: user_id = user_info["id"] - # Überprüfe, ob der Benutzer Admin-Rechte auf dem spezifischen Server hat - connection = get_db_connection() - cursor = connection.cursor(dictionary=True) + # Überprüfen, ob der Benutzer Admin-Rechte auf dem Server hat + if is_server_admin(guild_id): + connection = get_db_connection() + cursor = connection.cursor(dictionary=True) - cursor.execute("SELECT permission FROM user_data WHERE user_id = %s AND guild_id = %s", (user_id, guild_id)) - user_data = cursor.fetchone() + # Hole die Giveaways für den spezifischen Server + cursor.execute("SELECT * FROM giveaway_data WHERE guild_id = %s", (guild_id,)) + giveaways = cursor.fetchall() - # Hole den Gildennamen aus der guilds-Tabelle, falls verfügbar - cursor.execute("SELECT name FROM guilds WHERE guild_id = %s", (guild_id,)) - guild_name_result = cursor.fetchone() - guild_name = guild_name_result["name"] if guild_name_result else "Unknown Guild" + # Hole den Gildennamen aus der guilds-Tabelle + cursor.execute("SELECT name FROM guilds WHERE guild_id = %s", (guild_id,)) + guild_name_result = cursor.fetchone() + guild_name = guild_name_result["name"] if guild_name_result else "Unknown Guild" - cursor.close() - connection.close() + cursor.close() + connection.close() - # Prüfen, ob der Benutzer Adminrechte für die spezifische Gilde hat - if user_data and user_data['permission'] >= 8: - g.guild_id = guild_id # Setze `g.guild_id` für die Vorlage - g.guild_name = guild_name # Setze `g.guild_name` für die Anzeige - return render_template("server_admin_dashboard.html", guild_id=guild_id, guild_name=guild_name) + g.guild_id = guild_id + g.guild_name = guild_name + return render_template("server_admin_dashboard.html", giveaways=giveaways, guild_id=guild_id, guild_name=guild_name) - # Falls der Benutzer keine Admin-Rechte hat, zurück zur Landing-Page flash("You do not have permission to access this server's admin dashboard.", "danger") return redirect(url_for("user_landing_page")) + @app.route("/ban_user//") def ban_user(guild_id, user_id): """Banned einen Benutzer auf einem spezifischen Server.""" diff --git a/templates/server_admin_dashboard.html b/templates/server_admin_dashboard.html index 8aeab91..90387e1 100644 --- a/templates/server_admin_dashboard.html +++ b/templates/server_admin_dashboard.html @@ -1,36 +1,54 @@ - Server Admin Dashboard - {% include 'navigation.html' %}

Server Admin Dashboard for {{ g.guild_name }}

Manage server-specific settings for server {{ g.guild_id }}.

- +
Giveaway Management

Manage and view all active giveaways for this server.

- View Giveaways -
-
- -
-
-
Manage Points
-

Manage user points for this server.

- Manage Points + + + + + + + + + + + + {% for giveaway in giveaways %} + + + + + + + + {% endfor %} + +
NamePlatformWinnerStatusActions
{{ giveaway.name }}{{ giveaway.platform }}{{ giveaway.winner_dc_id }} + {% if giveaway.aktiv %} + Redeemed + {% else %} + Not Redeemed + {% endif %} + + Edit +
- diff --git a/templates/user_dashboard.html b/templates/user_dashboard.html index 635a391..71f235c 100644 --- a/templates/user_dashboard.html +++ b/templates/user_dashboard.html @@ -1,13 +1,11 @@ - User Dashboard - {% include 'navigation.html' %}
@@ -43,14 +41,13 @@ {% endif %}
- +
-
Additional Options
- View Server Giveaways +
Your Giveaways
+ View Won Giveaways
-