From 3bcf4e3d22ff516f6fef644ac26d9c6dbcf9b60f Mon Sep 17 00:00:00 2001 From: Aevann Date: Wed, 9 Aug 2023 14:48:02 +0300 Subject: [PATCH] do this https://rdrama.net/h/meta/post/195365/dramatards-rly-join-eighteen-18-ping/4764206#context --- files/helpers/actions.py | 8 +------- files/helpers/alerts.py | 11 +---------- 2 files changed, 2 insertions(+), 17 deletions(-) diff --git a/files/helpers/actions.py b/files/helpers/actions.py index a1c31d3e6..7df09f87b 100644 --- a/files/helpers/actions.py +++ b/files/helpers/actions.py @@ -131,13 +131,7 @@ def execute_snappy(post, v): elif body == '!pinggroup': group = g.db.query(Group).order_by(func.random()).first() - group_members = group.member_ids - - for user in g.db.query(User).filter(User.id.in_(group_members)): - user.pay_account('coins', 10) - g.db.add(user) - - cost = len(group_members) * 10 + cost = len(group.member_ids) * 10 snappy.charge_account('coins', cost) body = f'!{group.name}' diff --git a/files/helpers/alerts.py b/files/helpers/alerts.py index 60861c6ff..c23814371 100644 --- a/files/helpers/alerts.py +++ b/files/helpers/alerts.py @@ -146,7 +146,6 @@ def NOTIFY_USERS(text, v, oldtext=None, ghost=False, log_cost=None): if FEATURES['PING_GROUPS']: cost = 0 - total_members = set() for i in group_mention_regex.finditer(text): if oldtext and i.group(1) in oldtext: @@ -157,8 +156,6 @@ def NOTIFY_USERS(text, v, oldtext=None, ghost=False, log_cost=None): if cost > v.coins: abort(403, f"You need {cost} coins to mention these ping groups!") - g.db.query(User).options(load_only(User.id)).update({ User.coins: User.coins + 10 }) - v.charge_account('coins', cost) if log_cost: log_cost.ping_cost = cost @@ -182,18 +179,12 @@ def NOTIFY_USERS(text, v, oldtext=None, ghost=False, log_cost=None): if cost > v.coins: abort(403, f"You need {cost} coins to mention these ping groups!") - total_members.update(members) - if log_cost: log_cost.ping_cost = cost - if total_members: - g.db.query(User).options(load_only(User.id)).filter(User.id.in_(total_members)).update({ User.coins: User.coins + 10 }) - + if cost: v.charge_account('coins', cost) - - return notify_users - BOT_IDs - {v.id, 0} - v.all_twoway_blocks