From 89eb92f201c22fefcceaad6fd8501b161bb1ca5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaakko=20Kera=CC=88nen?= Date: Fri, 27 Oct 2023 05:45:55 +0300 Subject: [PATCH 1/1] Admin: Adjusting batch delete --- model.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/model.py b/model.py index f3bdec7..84f6e2d 100644 --- a/model.py +++ b/model.py @@ -663,7 +663,7 @@ class Database: self.notify_admin(Notification.USER_CREATED, user_id) return user_id - def get_users(self, role, max_age=None, avatar=None, post_count=None): + def get_users(self, role, max_age=None, avatar=None, empty_info=None, max_post_count=None): cur = self.conn.cursor() cond = ['role=?'] values = [role] @@ -673,9 +673,11 @@ class Database: if avatar != None: cond.append('avatar=?') values.append(avatar) - if post_count != None: - cond.append('(SELECT COUNT(*) FROM posts WHERE user=users.id)=?') - values.append(post_count) + if empty_info != None: + cond.append('info=""') + if max_post_count != None: + cond.append('(SELECT COUNT(*) FROM posts WHERE user=users.id)<=?') + values.append(max_post_count) cur.execute(f""" SELECT id, name, avatar, UNIX_TIMESTAMP(ts_created), UNIX_TIMESTAMP(ts_active) FROM users @@ -1844,8 +1846,10 @@ class Database: cur.execute("UPDATE posts SET flags=0 WHERE user=?", (user.id,)) self.commit() - def batch_delete_limited_users(self, max_age): - for user in self.get_users(role=User.LIMITED, max_age=max_age, avatar='🚀', post_count=0): + def batch_delete_limited_users(self, max_age, max_post_count=1): + for user in self.get_users(role=User.LIMITED, max_age=max_age, avatar='🚀', + empty_info=True, + max_post_count=max_post_count): self.destroy_user(user) def update_post(self, post, title=None, flags=None, subspace_id=None): -- 2.34.1