44from aiogram import Dispatcher , Bot
55from aiogram .types import Message , CallbackQuery
66
7+ from misc .html_tags import b
78from telegram_bot .database .methods .update import set_vip
89from telegram_bot .database .methods .create import create_user_payment
910from telegram_bot .database .methods .get import get_user_by_telegram_id
11+ from telegram_bot .filters .main import NotAdmin , NotVip
1012
1113from telegram_bot .utils .util import get_payment_info
1214from telegram_bot .handlers .user .util import _buy_vip_text
@@ -19,23 +21,17 @@ async def __buy_vip(msg: Message) -> None:
1921 user_id = msg .from_user .id
2022 user = get_user_by_telegram_id (user_id )
2123
22- if user .vip :
23- await bot .send_message (user_id , 'Вы уже приобрели vip доступ' )
24- return
25- if user .admin :
26- await bot .send_message (user_id , 'Вы являетесь администратором, используйте настройку в Админ меню' )
27- return
28-
29- pay_id = user .payment .key if user .payment else f'{ uuid4 ()} '
30- payment = Payment .create (get_payment_info (), pay_id )
3124 if user and not user .payment :
25+ payment = Payment .create (get_payment_info (), uuid4 ())
3226 create_user_payment (user , payment .id )
27+ else :
28+ payment = Payment .find_one (user .payment .key )
3329 if payment .status != 'succeeded' :
3430 keyboard = get_payment_keyboard (payment .confirmation .confirmation_url )
3531 await bot .send_message (user_id , _buy_vip_text (), reply_markup = keyboard )
3632 else :
3733 keyboard = get_payment_keyboard ()
38- await bot .send_message (user_id , '<b> VIP</b> доступ уже оплачен. Проверьте оплату' , reply_markup = keyboard )
34+ await bot .send_message (user_id , f" { b ( ' VIP' ) } доступ уже оплачен. Проверьте оплату" , reply_markup = keyboard )
3935
4036
4137async def __check_buy (query : CallbackQuery ) -> None :
@@ -57,7 +53,7 @@ def _register_vip_handlers(dp: Dispatcher) -> None:
5753
5854 # region Msg handlers
5955
60- dp .register_message_handler (__buy_vip , content_types = ['text' ], text = "Купить полную версию 💸" )
56+ dp .register_message_handler (__buy_vip , NotAdmin (), NotVip (), content_types = ['text' ], text = "Купить полную версию 💸" )
6157
6258 # endregion
6359
0 commit comments