modified: app.py
new file: templates/server_selection.html
This commit is contained in:
8
app.py
8
app.py
@@ -74,9 +74,10 @@ def make_discord_session(token=None, state=None):
|
||||
token=token,
|
||||
state=state,
|
||||
redirect_uri=DISCORD_REDIRECT_URI,
|
||||
scope=["identify"]
|
||||
scope=["identify", "guilds"] # Hinzufügen des "guilds"-Scopes
|
||||
)
|
||||
|
||||
|
||||
def is_bot_admin():
|
||||
"""Überprüft, ob der Benutzer globale Admin-Rechte hat."""
|
||||
if "discord_user" in session:
|
||||
@@ -141,8 +142,13 @@ def callback():
|
||||
user_info = discord.get(DISCORD_API_URL).json()
|
||||
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"))
|
||||
|
||||
|
||||
@app.route("/server_selection")
|
||||
def server_selection():
|
||||
"""Zeigt dem Benutzer eine Liste aller Server an, auf denen er sich befindet."""
|
||||
|
||||
16
templates/server_selection.html
Normal file
16
templates/server_selection.html
Normal 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>
|
||||
Reference in New Issue
Block a user