diff --git a/handlers/backup.py b/handlers/backup.py index d8f178c..38afde0 100644 --- a/handlers/backup.py +++ b/handlers/backup.py @@ -2,7 +2,7 @@ import asyncio import json from datetime import datetime from aiogram import F -from aiogram.types import Message, InlineKeyboardMarkup, InlineKeyboardButton +from aiogram.types import Message, InlineKeyboardMarkup, InlineKeyboardButton, CallbackQuery from app import dp from auth import is_admin_msg from keyboards import backup_kb @@ -247,13 +247,20 @@ async def ls(msg: Message): @dp.message(F.text == "🧾 Queue") async def qb(msg: Message): if is_admin_msg(msg): - await msg.answer(format_status(), reply_markup=backup_kb) + kb = InlineKeyboardMarkup( + inline_keyboard=[ + [InlineKeyboardButton(text="Details", callback_data="queue:details")], + ] + ) + await msg.answer(format_status(), reply_markup=kb) -@dp.message(F.text == "🧾 Queue details") -async def qd(msg: Message): - if is_admin_msg(msg): - await msg.answer(format_details(), reply_markup=backup_kb) +@dp.callback_query(F.data == "queue:details") +async def qd(cb: CallbackQuery): + if not is_admin_msg(cb.message): + return + await cb.answer() + await cb.message.answer(format_details(), reply_markup=backup_kb) @dp.message(F.text == "▶️ Run backup") diff --git a/keyboards.py b/keyboards.py index 9cb7209..54c3b8d 100644 --- a/keyboards.py +++ b/keyboards.py @@ -37,7 +37,7 @@ backup_kb = ReplyKeyboardMarkup( keyboard=[ [KeyboardButton(text="📦 Status"), KeyboardButton(text="📦 Last snapshot")], [KeyboardButton(text="📊 Repo stats"), KeyboardButton(text="🧯 Restore help")], - [KeyboardButton(text="▶️ Run backup"), KeyboardButton(text="🧾 Queue"), KeyboardButton(text="🧾 Queue details")], + [KeyboardButton(text="▶️ Run backup"), KeyboardButton(text="🧾 Queue")], [KeyboardButton(text="🧪 Restic check"), KeyboardButton(text="📬 Weekly report"), KeyboardButton(text="⬅️ Назад")], ], resize_keyboard=True,