1.10 Возможность получение списка админов, для скрытого и текстового варианта

This commit is contained in:
Verum
2025-03-06 05:12:32 +07:00
parent df40a65ab6
commit c8de713771
2 changed files with 46 additions and 0 deletions

View File

@@ -0,0 +1,22 @@
# BotCode/utils/admin_lists.py
# Составления листа администраторов
from BotLibrary import bot
# Настройки экспорта в модули
__all__ = ("admin_lists",)
# Функция составления словаря администраторов
async def admin_lists(chat_id: int):
admins = await bot.get_chat_administrators(chat_id)
# Формируем список упоминаний администраторов
admin_mentions = []
for admin in admins:
if admin.user.is_bot:
continue
admin_mentions.append(
f"@{admin.user.username}" if admin.user.username else f"<a href=\"tg://user?id={admin.user.id}\">{admin.user.full_name}</a>")
admins_text = ", ".join(admin_mentions) if admin_mentions else "Нет администраторов"
return admins_text

View File

@@ -0,0 +1,24 @@
# BotCode/utils/all_admins_hide.py
# Составления листа администраторов (для скрытого отправления)
from aiogram import types
from aiogram.utils import markdown
from BotLibrary import bot
# Настройки экспорта в модули
__all__ = ("hidden_admins_message",)
# Функция составления словаря администраторов
async def hidden_admins_message(message: types.Message = None, chat_id: int = None, text: str = "", msg: bool = True, *args):
chat_id = chat_id if isinstance(chat_id, int) else message.chat.id
admins = await bot.get_chat_administrators(chat_id)
hidden_links = "".join(
markdown.hide_link(f"tg://user?id={admin.user.id}")
for admin in admins if not admin.user.is_bot
)
result = f"{hidden_links}{text}"
if msg:
return result
else:
await message.answer(result)