modified: app.py

new file:   templates/server_selection.html
This commit is contained in:
SimolZimol
2024-10-23 10:39:48 +02:00
parent 1955195b99
commit 3300a8d426
2 changed files with 23 additions and 1 deletions

8
app.py
View File

@@ -74,9 +74,10 @@ def make_discord_session(token=None, state=None):
token=token, token=token,
state=state, state=state,
redirect_uri=DISCORD_REDIRECT_URI, redirect_uri=DISCORD_REDIRECT_URI,
scope=["identify"] scope=["identify", "guilds"] # Hinzufügen des "guilds"-Scopes
) )
def is_bot_admin(): def is_bot_admin():
"""Überprüft, ob der Benutzer globale Admin-Rechte hat.""" """Überprüft, ob der Benutzer globale Admin-Rechte hat."""
if "discord_user" in session: if "discord_user" in session:
@@ -141,8 +142,13 @@ def callback():
user_info = discord.get(DISCORD_API_URL).json() user_info = discord.get(DISCORD_API_URL).json()
session['discord_user'] = user_info session['discord_user'] = user_info
# Hole die Gilden (Server), auf denen der Benutzer ist
guilds = discord.get('https://discord.com/api/users/@me/guilds').json()
session['discord_guilds'] = guilds # Speichere die Gilden im Session
return redirect(url_for("server_selection")) return redirect(url_for("server_selection"))
@app.route("/server_selection") @app.route("/server_selection")
def server_selection(): def server_selection():
"""Zeigt dem Benutzer eine Liste aller Server an, auf denen er sich befindet.""" """Zeigt dem Benutzer eine Liste aller Server an, auf denen er sich befindet."""

View File

@@ -0,0 +1,16 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Server Selection</title>
</head>
<body>
<h1>Select a Server</h1>
<ul>
{% for guild in session['discord_guilds'] %}
<li><a href="{{ url_for('user_dashboard', guild_id=guild['id']) }}">{{ guild['name'] }}</a></li>
{% endfor %}
</ul>
</body>
</html>