diff --git a/app.py b/app.py index 0ce4f40..e887d55 100644 --- a/app.py +++ b/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")) diff --git a/templates/server_selection.html b/templates/server_selection.html index 234e1f4..c41c7ba 100644 --- a/templates/server_selection.html +++ b/templates/server_selection.html @@ -10,18 +10,22 @@

Select a Server

- {% for guild in session['discord_guilds'] %} -
-
- Server Icon -
-
{{ guild['name'] }}
-

You have permission level: {{ guild['permissions'] }}

- Enter Server + {% if session['discord_guilds'] %} + {% for guild in session['discord_guilds'] %} +
+
+ Server Icon +
+
{{ guild['name'] }}
+

You have permission level: {{ guild['permissions'] }}

+ Enter Server +
-
- {% endfor %} + {% endfor %} + {% else %} +

No guilds found. Please try again later.

+ {% endif %}