Added ADMIN_IDS variable for admin check by user ID list before Telegram status check

This commit is contained in:
2025-10-15 16:22:42 +03:00
parent 6df37ae30b
commit 48234ffd91
2 changed files with 6 additions and 1 deletions
+6 -1
View File
@@ -5,7 +5,7 @@ import os
from telegram import Update, InlineKeyboardButton, InlineKeyboardMarkup, InlineQueryResultArticle, InputTextMessageContent from telegram import Update, InlineKeyboardButton, InlineKeyboardMarkup, InlineQueryResultArticle, InputTextMessageContent
from telegram.ext import ApplicationBuilder, ContextTypes, CommandHandler, MessageHandler, filters, InlineQueryHandler, ChatMemberHandler from telegram.ext import ApplicationBuilder, ContextTypes, CommandHandler, MessageHandler, filters, InlineQueryHandler, ChatMemberHandler
from database_sqlite import Database from database_sqlite import Database
from config_local import BOT_TOKEN, OPENWEATHER_API_KEY, NEWS_API_KEY from config_local import BOT_TOKEN, OPENWEATHER_API_KEY, NEWS_API_KEY, ADMIN_IDS
from messages import * from messages import *
# Настройка логирования # Настройка логирования
@@ -1129,6 +1129,11 @@ ID: {user_info['ID']}
async def is_admin(self, chat, user_id): async def is_admin(self, chat, user_id):
"""Проверка, является ли пользователь администратором""" """Проверка, является ли пользователь администратором"""
# Сначала проверяем по списку ADMIN_IDS
if user_id in ADMIN_IDS:
return True
# Затем проверяем статус в чате
try: try:
member = await chat.get_member(user_id) member = await chat.get_member(user_id)
return member.status in ['administrator', 'creator'] return member.status in ['administrator', 'creator']
BIN
View File
Binary file not shown.