2024-11-20 15:29:44 +05:30
|
|
|
from hydrogram import Client
|
|
|
|
|
from hydrogram.types import Message, CallbackQuery
|
|
|
|
|
from typing import Union, Callable
|
2023-11-05 22:02:58 +05:30
|
|
|
from functools import wraps
|
|
|
|
|
from bot.config import Telegram
|
|
|
|
|
|
2024-11-20 15:29:44 +05:30
|
|
|
def verify_user(func: Callable):
|
2023-11-05 22:02:58 +05:30
|
|
|
|
2024-11-20 15:29:44 +05:30
|
|
|
@wraps(func)
|
|
|
|
|
async def decorator(client: Client, update: Union[Message, CallbackQuery]):
|
|
|
|
|
chat_id = str(update.from_user.id if update.from_user else update.chat.id)
|
2023-11-13 11:51:16 +05:30
|
|
|
|
2024-11-20 15:29:44 +05:30
|
|
|
if not Telegram.ALLOWED_USER_IDS or chat_id in Telegram.ALLOWED_USER_IDS:
|
|
|
|
|
return await func(client, update)
|
|
|
|
|
|
2023-11-07 14:53:08 +05:30
|
|
|
return decorator
|