randydev commited on
Commit
13a9f4f
Β·
1 Parent(s): 2768977

fix update

Browse files
akn/AllDownloaderBot/admins.py CHANGED
@@ -388,30 +388,31 @@ async def arz_mute_me(client: Client, message: Message):
388
  async def arz_admin_list(client: Client, message: Message):
389
  if message.chat.type == ChatType.PRIVATE:
390
  return await message.reply_text("This command is not available in private chats.")
 
391
  bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
392
- if not bot.can_restrict_members:
393
- return await message.reply_text("I don't have enough permissions")
 
394
  try:
395
- default_str = ""
396
  async for m in client.get_chat_members(message.chat.id, filter=ChatMembersFilter.ADMINISTRATORS):
397
  if m.user.is_bot:
398
  continue
399
  user = m.user
400
- mention = user.mention
401
- if user.is_self:
402
- mention = "Me"
403
- default_str += f"**Admin:** {mention}\n"
404
- default_str += f"**User ID:** `{user.id}`\n"
405
- default_str += f"**Status:** `{m.status.value}`\n\n"
406
- if not default_str:
407
  return await message.reply_text("No admins found.")
408
- else:
409
- return await message.reply_text(
410
- f"**Admin List:**\n\n{default_str}",
411
- disable_web_page_preview=True,
412
- )
 
413
  except Exception as e:
414
- await message.reply_text(f"Failed to fetch admin list: {e}")
415
 
416
  @Client.on_message(filters.incoming & filters.group, group=-1)
417
  async def check_user_mute(client: Client, message: Message):
 
388
  async def arz_admin_list(client: Client, message: Message):
389
  if message.chat.type == ChatType.PRIVATE:
390
  return await message.reply_text("This command is not available in private chats.")
391
+
392
  bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
393
+ if not bot or not bot.can_restrict_members:
394
+ return await message.reply_text("I don't have enough permissions to list admins.")
395
+
396
  try:
397
+ admin_list = []
398
  async for m in client.get_chat_members(message.chat.id, filter=ChatMembersFilter.ADMINISTRATORS):
399
  if m.user.is_bot:
400
  continue
401
  user = m.user
402
+ tag = f"[{user.first_name}](tg://user?id={user.id})"
403
+ role = "πŸ‘‘ Owner" if m.status.value == "owner" else "πŸ”§ Admin"
404
+ admin_list.append(f"┣ {role}: {tag}")
405
+
406
+ if not admin_list:
 
 
407
  return await message.reply_text("No admins found.")
408
+
409
+ text = "**πŸ‘₯ Admin List:**\n\n" + "\n".join(admin_list)
410
+ await message.reply_text(
411
+ text,
412
+ disable_web_page_preview=True
413
+ )
414
  except Exception as e:
415
+ await message.reply_text(f"Failed to fetch admin list: `{e}`")
416
 
417
  @Client.on_message(filters.incoming & filters.group, group=-1)
418
  async def check_user_mute(client: Client, message: Message):
akn/AllDownloaderBot/zombies.py CHANGED
@@ -1,11 +1,18 @@
1
  from pyrogram import *
2
  from pyrogram.types import *
3
  from pyrogram.enums import *
 
4
  from akn.utils.database import db
5
  from akn.langs import transdev
6
 
7
  @Client.on_message(filters.command("rmzombies"))
8
  async def arzrmzombies_command(client, message):
 
 
 
 
 
 
9
  deleted_accounts = []
10
  async for m in client.get_chat_members(message.chat.id):
11
  if m.user.is_bot:
@@ -17,6 +24,8 @@ async def arzrmzombies_command(client, message):
17
  for user_id in deleted_accounts:
18
  try:
19
  await client.ban_chat_member(message.chat.id, user_id)
 
 
20
  except Exception as e:
21
  return await message.reply_text(f"Failed to kick user {user_id}: {e}")
22
  await message.reply_text(f"Removed {len(deleted_accounts)} deleted accounts from the group.")
 
1
  from pyrogram import *
2
  from pyrogram.types import *
3
  from pyrogram.enums import *
4
+ from pyrogram.errors import *
5
  from akn.utils.database import db
6
  from akn.langs import transdev
7
 
8
  @Client.on_message(filters.command("rmzombies"))
9
  async def arzrmzombies_command(client, message):
10
+ bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
11
+ if not bot.can_restrict_members:
12
+ return await message.reply_text("I don't have enough permissions to restrict members.")
13
+ if not message.chat.type in [ChatType.GROUP, ChatType.SUPERGROUP]:
14
+ return await message.reply_text("This command can only be used in groups.")
15
+
16
  deleted_accounts = []
17
  async for m in client.get_chat_members(message.chat.id):
18
  if m.user.is_bot:
 
24
  for user_id in deleted_accounts:
25
  try:
26
  await client.ban_chat_member(message.chat.id, user_id)
27
+ except UserAdminInvalid:
28
+ pass
29
  except Exception as e:
30
  return await message.reply_text(f"Failed to kick user {user_id}: {e}")
31
  await message.reply_text(f"Removed {len(deleted_accounts)} deleted accounts from the group.")