modified: app.py
modified: templates/redeem_giveaway.html
This commit is contained in:
21
app.py
21
app.py
@@ -494,28 +494,22 @@ def edit_giveaway(guild_id, uuid):
|
||||
return render_template("edit_giveaway.html", giveaway=giveaway, guild_id=guild_id)
|
||||
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):
|
||||
"""Zeigt dem Benutzer die Giveaways an, die er auf einem bestimmten Server gewonnen hat."""
|
||||
if "discord_user" in session:
|
||||
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()
|
||||
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
|
||||
cursor.execute("""
|
||||
SELECT * FROM giveaway_data WHERE winner_dc_id = %s AND guild_id = %s
|
||||
""", (user_id, guild_id))
|
||||
won_giveaways = cursor.fetchall()
|
||||
|
||||
# Debugging-Ausgabe für die abgerufenen Giveaways
|
||||
print(f"[DEBUG] Won giveaways retrieved: {won_giveaways}")
|
||||
|
||||
cursor.close()
|
||||
connection.close()
|
||||
|
||||
@@ -525,7 +519,7 @@ def user_giveaways(guild_id):
|
||||
|
||||
@app.route("/redeem_giveaway/<int:guild_id>/<string:uuid>", methods=["GET", "POST"])
|
||||
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:
|
||||
user_info = session["discord_user"]
|
||||
user_id = user_info["id"]
|
||||
@@ -540,17 +534,16 @@ def redeem_giveaway(guild_id, uuid):
|
||||
giveaway = cursor.fetchone()
|
||||
|
||||
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
|
||||
cursor.execute("UPDATE giveaway_data SET aktiv = TRUE WHERE guild_id = %s AND uuid = %s", (guild_id, uuid))
|
||||
connection.commit()
|
||||
giveaway["aktiv"] = True # Aktualisiere den Status in `giveaway` für die Anzeige
|
||||
|
||||
# Key anzeigen
|
||||
flash("Giveaway redeemed successfully!", "success")
|
||||
return render_template("redeem_giveaway.html", giveaway=giveaway, key=giveaway["game_key"])
|
||||
|
||||
# Seite anzeigen, um den Key einzulösen
|
||||
return render_template("redeem_giveaway.html", giveaway=giveaway, key=None)
|
||||
# Zeige den Game Key an, ob er eingelöst ist oder gerade eingelöst wurde
|
||||
return render_template("redeem_giveaway.html", giveaway=giveaway, key=giveaway["game_key"] if giveaway["aktiv"] else None)
|
||||
|
||||
else:
|
||||
flash("You are not the winner of this giveaway or the giveaway is no longer available.", "danger")
|
||||
|
||||
Reference in New Issue
Block a user