modified: app.py

modified:   templates/redeem_giveaway.html
This commit is contained in:
SimolZimol
2024-10-29 10:48:00 +01:00
parent 5e178c43cc
commit cea3981ff5
2 changed files with 9 additions and 15 deletions

21
app.py
View File

@@ -494,28 +494,22 @@ def edit_giveaway(guild_id, uuid):
return render_template("edit_giveaway.html", giveaway=giveaway, guild_id=guild_id) return render_template("edit_giveaway.html", giveaway=giveaway, guild_id=guild_id)
return redirect(url_for("landing_page")) return redirect(url_for("landing_page"))
@app.route("/user_giveaways/<string:guild_id>") @app.route("/user_giveaways/<int:guild_id>")
def user_giveaways(guild_id): def user_giveaways(guild_id):
"""Zeigt dem Benutzer die Giveaways an, die er auf einem bestimmten Server gewonnen hat.""" """Zeigt dem Benutzer die Giveaways an, die er auf einem bestimmten Server gewonnen hat."""
if "discord_user" in session: if "discord_user" in session:
user_info = session["discord_user"] user_info = session["discord_user"]
user_id = str(user_info["id"]) # Sicherstellen, dass user_id als String behandelt wird user_id = user_info["id"]
connection = get_db_connection() connection = get_db_connection()
cursor = connection.cursor(dictionary=True) cursor = connection.cursor(dictionary=True)
# Debugging-Ausgaben
print(f"[DEBUG] Searching for giveaways with guild_id: {guild_id} and winner_dc_id: {user_id}")
# Suche nach Giveaways, bei denen der eingeloggte Benutzer der Gewinner ist # Suche nach Giveaways, bei denen der eingeloggte Benutzer der Gewinner ist
cursor.execute(""" cursor.execute("""
SELECT * FROM giveaway_data WHERE winner_dc_id = %s AND guild_id = %s SELECT * FROM giveaway_data WHERE winner_dc_id = %s AND guild_id = %s
""", (user_id, guild_id)) """, (user_id, guild_id))
won_giveaways = cursor.fetchall() won_giveaways = cursor.fetchall()
# Debugging-Ausgabe für die abgerufenen Giveaways
print(f"[DEBUG] Won giveaways retrieved: {won_giveaways}")
cursor.close() cursor.close()
connection.close() connection.close()
@@ -525,7 +519,7 @@ def user_giveaways(guild_id):
@app.route("/redeem_giveaway/<int:guild_id>/<string:uuid>", methods=["GET", "POST"]) @app.route("/redeem_giveaway/<int:guild_id>/<string:uuid>", methods=["GET", "POST"])
def redeem_giveaway(guild_id, uuid): def redeem_giveaway(guild_id, uuid):
"""Erlaubt dem Benutzer, einen gewonnenen Giveaway-Code für einen bestimmten Server einzulösen.""" """Erlaubt dem Benutzer, einen gewonnenen Giveaway-Code für einen bestimmten Server einzulösen und erneut anzuzeigen, falls bereits eingelöst."""
if "discord_user" in session: if "discord_user" in session:
user_info = session["discord_user"] user_info = session["discord_user"]
user_id = user_info["id"] user_id = user_info["id"]
@@ -540,17 +534,16 @@ def redeem_giveaway(guild_id, uuid):
giveaway = cursor.fetchone() giveaway = cursor.fetchone()
if giveaway: if giveaway:
if request.method == "POST": if request.method == "POST" and not giveaway["aktiv"]:
# Wenn der Benutzer den Key einlöst, setze `aktiv` auf TRUE # Wenn der Benutzer den Key einlöst, setze `aktiv` auf TRUE
cursor.execute("UPDATE giveaway_data SET aktiv = TRUE WHERE guild_id = %s AND uuid = %s", (guild_id, uuid)) cursor.execute("UPDATE giveaway_data SET aktiv = TRUE WHERE guild_id = %s AND uuid = %s", (guild_id, uuid))
connection.commit() connection.commit()
giveaway["aktiv"] = True # Aktualisiere den Status in `giveaway` für die Anzeige
# Key anzeigen
flash("Giveaway redeemed successfully!", "success") flash("Giveaway redeemed successfully!", "success")
return render_template("redeem_giveaway.html", giveaway=giveaway, key=giveaway["game_key"])
# Seite anzeigen, um den Key einzulösen # Zeige den Game Key an, ob er eingelöst ist oder gerade eingelöst wurde
return render_template("redeem_giveaway.html", giveaway=giveaway, key=None) return render_template("redeem_giveaway.html", giveaway=giveaway, key=giveaway["game_key"] if giveaway["aktiv"] else None)
else: else:
flash("You are not the winner of this giveaway or the giveaway is no longer available.", "danger") flash("You are not the winner of this giveaway or the giveaway is no longer available.", "danger")

View File

@@ -14,8 +14,9 @@
{% if key %} {% if key %}
<div class="alert alert-success"> <div class="alert alert-success">
<strong>Game Key:</strong> {{ key }} <strong>Your Game Key:</strong> {{ key }}
</div> </div>
<p class="text-muted">This is your unique key. Keep it safe!</p>
{% else %} {% else %}
<form method="post"> <form method="post">
<button type="submit" class="btn btn-primary">Redeem Giveaway</button> <button type="submit" class="btn btn-primary">Redeem Giveaway</button>