From d69fac63d793b325c0bf816ec07ab95412a71537 Mon Sep 17 00:00:00 2001 From: ErfJab Date: Mon, 22 Jul 2024 23:47:57 +0330 Subject: [PATCH] fix: tgbot links error when on_hold is null --- app/telegram/handlers/admin.py | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/app/telegram/handlers/admin.py b/app/telegram/handlers/admin.py index 6fbd56819..e7d1a76d5 100644 --- a/app/telegram/handlers/admin.py +++ b/app/telegram/handlers/admin.py @@ -523,7 +523,7 @@ def get_user_info_text( timeout_str = 'Not set' text += f'''\ -├─📅 On Hold Duration: {on_hold_expire_duration // (24*60*60)} days +├─📅 On Hold Duration: {on_hold_expire_duration // (24*60*60) if on_hold_expire_duration else None} days │ └─On Hold Timeout: {timeout_str} │ ''' @@ -700,6 +700,7 @@ def links_command(call: types.CallbackQuery): if len(text) > 4056 : text += '\n\n...' break + text += f'\n{link}' bot.edit_message_text( text, @@ -743,17 +744,29 @@ def genqr_command(call: types.CallbackQuery): qr.add_data(user.subscription_url) qr.make_image().save(f) f.seek(0) - bot.send_photo( - call.message.chat.id, - photo=f, - caption=get_user_info_text( + if user.status == UserStatus.on_hold: + text = get_user_info_text( + status=user.status, + username=user.username, + sub_url=user.subscription_url, + data_limit=user.data_limit, + usage=user.used_traffic, + on_hold_expire_duration=user.on_hold_expire_duration, + on_hold_timeout=user.on_hold_timeout + ) + else: + text = get_user_info_text( status=user.status, username=user.username, sub_url=user.subscription_url, data_limit=user.data_limit, usage=user.used_traffic, expire=user.expire - ), + ) + bot.send_photo( + call.message.chat.id, + photo=f, + caption=text, parse_mode="HTML", reply_markup=BotKeyboard.subscription_page(user.subscription_url) )