modified: app.py

modified:   templates/user_landing_page.html
This commit is contained in:
SimolZimol
2024-10-25 15:28:03 +02:00
parent 5cc2f4a05c
commit f29dad1bff
2 changed files with 31 additions and 9 deletions

30
app.py
View File

@@ -320,13 +320,35 @@ def server_giveaways(guild_id):
@app.route("/user_landing_page") @app.route("/user_landing_page")
def user_landing_page(): def user_landing_page():
"""Zeigt die globale Benutzerdaten und die Liste der Server an.""" """Zeigt die gefilterten Gilden für den Benutzer an."""
if g.user_info and "discord_guilds" in session: if "discord_user" in session:
guilds = session["discord_guilds"] user_info = session["discord_user"]
return render_template("user_landing_page.html", user_info=g.user_info, guilds=guilds) user_id = user_info["id"]
# Verbindung zur Datenbank herstellen
connection = get_db_connection()
cursor = connection.cursor(dictionary=True)
# Holen der Guilds, bei denen der Benutzer Mitglied ist
cursor.execute("""
SELECT guild_id
FROM user_data
WHERE user_id = %s
""", (user_id,))
guild_ids = [row["guild_id"] for row in cursor.fetchall()]
cursor.close()
connection.close()
# Filtern der Gilden, sodass nur die Gilden angezeigt werden, bei denen der Benutzer Mitglied ist
user_guilds = [guild for guild in session.get("discord_guilds", []) if int(guild["id"]) in guild_ids]
session['filtered_guilds'] = user_guilds # Gefilterte Gilden in die Session speichern
return render_template("user_landing_page.html", user_info=user_info)
return redirect(url_for("landing_page")) return redirect(url_for("landing_page"))
@app.route("/global_admin_dashboard") @app.route("/global_admin_dashboard")
def global_admin_dashboard(): def global_admin_dashboard():
"""Globales Admin-Dashboard nur für globale Admins""" """Globales Admin-Dashboard nur für globale Admins"""

View File

@@ -15,14 +15,14 @@
<p>Select a server to view your server-specific data.</p> <p>Select a server to view your server-specific data.</p>
<div class="row"> <div class="row">
{% for guild in g.guilds %} {% for guild in session['filtered_guilds'] %}
<div class="col-md-4 mt-3"> <div class="col-md-4 mt-3">
<div class="card"> <div class="card">
<img src="https://cdn.discordapp.com/icons/{{ guild['id'] }}/{{ guild['icon'] }}.png" class="card-img-top" alt="Server Icon"> <img src="https://cdn.discordapp.com/icons/{{ guild.id }}/{{ guild.icon }}.png" class="card-img-top" alt="Server Icon">
<div class="card-body"> <div class="card-body">
<h5 class="card-title">{{ guild['name'] }}</h5> <h5 class="card-title">{{ guild.name }}</h5>
<p class="card-text">Select this server to view your data for {{ guild['name'] }}.</p> <p class="card-text">Select this server to view your data for {{ guild.name }}.</p>
<a href="{{ url_for('user_dashboard', guild_id=guild['id']) }}" class="btn btn-primary">View Server</a> <a href="{{ url_for('user_dashboard', guild_id=guild.id) }}" class="btn btn-primary">View Server</a>
</div> </div>
</div> </div>
</div> </div>