From c5634cac78af7edab1b13cff405074f1be772b59 Mon Sep 17 00:00:00 2001 From: Aevann Date: Thu, 2 Feb 2023 21:28:23 +0200 Subject: [PATCH] fix automatic patron rewards --- files/routes/users.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/files/routes/users.py b/files/routes/users.py index 22cae1d1b..184d563d5 100644 --- a/files/routes/users.py +++ b/files/routes/users.py @@ -1311,6 +1311,13 @@ def claim_rewards(v): print(f'{v.username} rewards claimed successfully!', flush=True) +def claim_rewards_all_users(): + emails = [x[0] for x in g.db.query(Transaction.email).filter_by(claimed=None).all()] + users = g.db.query(User).filter(User.email.in_(emails)).all() + for user in users: + claim_rewards(v) + + KOFI_TOKEN = environ.get("KOFI_TOKEN", "").strip() if KOFI_TOKEN: @app.post("/kofi") @@ -1339,9 +1346,7 @@ if KOFI_TOKEN: g.db.add(transaction) - user = g.db.query(User).filter_by(email=email, is_activated=True).order_by(User.truescore.desc()).first() - if user: - claim_rewards(user) + claim_rewards_all_users() return '' @@ -1371,12 +1376,7 @@ def gumroad(): g.db.add(transaction) - print(f'transaction: {transaction}', flush=True) - user = g.db.query(User).filter_by(email=email, is_activated=True).order_by(User.truescore.desc()).first() - print(f'user: {user}', flush=True) - - if user: - claim_rewards(user) + claim_rewards_all_users() print("/gumroad done\n\n\n-----------------------\n\n\n", flush=True) @@ -1389,7 +1389,7 @@ def gumroad(): @limiter.limit(DEFAULT_RATELIMIT_SLOWER) @limiter.limit(DEFAULT_RATELIMIT_SLOWER, key_func=get_ID) @auth_required -def claim_rewards(v:User): +def settings_claim_rewards(v:User): if not (v.email and v.is_activated): abort(400, f"You must have a verified email to verify {patron} status and claim your rewards!")