modified: app.py
modified: templates/server_selection.html
This commit is contained in:
14
app.py
14
app.py
@@ -140,28 +140,39 @@ def login():
|
||||
def callback():
|
||||
"""Verarbeitet den OAuth2-Rückruf von Discord."""
|
||||
try:
|
||||
# Discord OAuth2-Session initialisieren
|
||||
discord = make_discord_session(state=session.get("oauth_state"))
|
||||
|
||||
# Token abrufen
|
||||
token = discord.fetch_token(
|
||||
DISCORD_TOKEN_URL,
|
||||
client_secret=DISCORD_CLIENT_SECRET,
|
||||
authorization_response=request.url,
|
||||
)
|
||||
|
||||
session['oauth_token'] = token
|
||||
|
||||
# Abrufen der Benutzerinformationen von Discord
|
||||
user_info = discord.get(DISCORD_API_URL).json()
|
||||
session['discord_user'] = user_info
|
||||
|
||||
# Debugging: Prüfe, ob Benutzerinformationen erfolgreich abgerufen wurden
|
||||
print(f"User info: {user_info}")
|
||||
|
||||
# Hole die Gilden (Server), auf denen der Benutzer ist
|
||||
guilds_response = discord.get('https://discord.com/api/users/@me/guilds')
|
||||
|
||||
# Debugging: Prüfe den Status der Antwort
|
||||
print(f"Guilds response status: {guilds_response.status_code}")
|
||||
|
||||
if guilds_response.status_code != 200:
|
||||
flash("Fehler beim Abrufen der Gilden.", "danger")
|
||||
return redirect(url_for("landing_page"))
|
||||
|
||||
guilds = guilds_response.json()
|
||||
|
||||
# Debugging: Gib die Gildeninformationen aus
|
||||
print(f"Guilds: {guilds}")
|
||||
|
||||
# Verbindung zur Datenbank herstellen
|
||||
connection = get_db_connection()
|
||||
cursor = connection.cursor()
|
||||
@@ -201,6 +212,7 @@ def callback():
|
||||
return redirect(url_for("server_selection"))
|
||||
|
||||
except Exception as e:
|
||||
# Fehlerbehandlung mit detaillierter Fehlermeldung
|
||||
print(f"Error in OAuth2 callback: {e}")
|
||||
flash("Ein Fehler ist beim Authentifizierungsprozess aufgetreten.", "danger")
|
||||
return redirect(url_for("landing_page"))
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
<div class="container mt-5">
|
||||
<h1 class="text-center">Select a Server</h1>
|
||||
<div class="row">
|
||||
{% if session['discord_guilds'] %}
|
||||
{% for guild in session['discord_guilds'] %}
|
||||
<div class="col-md-4 mt-3">
|
||||
<div class="card">
|
||||
@@ -22,6 +23,9 @@
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
<p>No guilds found. Please try again later.</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user