From 543e5ea3bfcc85ebfecebe2a55f7d626a2490bab Mon Sep 17 00:00:00 2001 From: yasir Date: Thu, 29 Dec 2022 17:25:51 +0700 Subject: [PATCH] If not admin in purge --- misskaty/plugins/admin.py | 43 +++++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/misskaty/plugins/admin.py b/misskaty/plugins/admin.py index a675dd43..02f1fd42 100644 --- a/misskaty/plugins/admin.py +++ b/misskaty/plugins/admin.py @@ -86,32 +86,35 @@ async def purge(_, message): message_ids = [] del_total = 0 - for message_id in range( - repliedmsg.id, - purge_to, - ): - message_ids.append(message_id) + try: + for message_id in range( + repliedmsg.id, + purge_to, + ): + message_ids.append(message_id) - # Max message deletion limit is 100 - if len(message_ids) == 100: + # Max message deletion limit is 100 + if len(message_ids) == 100: + await app.delete_messages( + chat_id=chat_id, + message_ids=message_ids, + revoke=True, # For both sides + ) + del_total += len(message_ids) + # To delete more than 100 messages, start again + message_ids = [] + + # Delete if any messages left + if len(message_ids) > 0: await app.delete_messages( chat_id=chat_id, message_ids=message_ids, - revoke=True, # For both sides + revoke=True, ) del_total += len(message_ids) - # To delete more than 100 messages, start again - message_ids = [] - - # Delete if any messages left - if len(message_ids) > 0: - await app.delete_messages( - chat_id=chat_id, - message_ids=message_ids, - revoke=True, - ) - del_total += len(message_ids) - await message.reply(f"Successfully deleted {del_total} messages..") + await message.reply(f"Successfully deleted {del_total} messages..") + except Exception as err: + await message.reply(f"ERR: {err}") # Kick members