From 5a5a18d80d9b9bc4b9c90c090ccc8aa2914700f8 Mon Sep 17 00:00:00 2001 From: gy9vin Date: Thu, 1 Jan 2026 22:59:12 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20=D0=BF=D1=80=D0=BE?= =?UTF-8?q?=D0=BC=D0=BE=D0=BA=D0=BE=D0=B4=D0=BE=D0=B2=20=D0=9F=D0=B0=D0=B3?= =?UTF-8?q?=D0=B8=D0=BD=D0=B0=D1=86=D0=B8=D1=8F=20=D1=81=D0=BF=D0=B8=D1=81?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=BF=D1=80=D0=BE=D0=BC=D0=BE=D0=BA=D0=BE=D0=B4?= =?UTF-8?q?=D0=BE=D0=B2:=20=20=20=20=20=20-=20promocodes.py:=20=D0=B4?= =?UTF-8?q?=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=20=D1=85=D0=B5=D0=BD?= =?UTF-8?q?=D0=B4=D0=BB=D0=B5=D1=80=20show=5Fpromocodes=5Flist=5Fpage=20?= =?UTF-8?q?=20=20=20=20=20-=20=D0=97=D0=B0=D1=80=D0=B5=D0=B3=D0=B8=D1=81?= =?UTF-8?q?=D1=82=D1=80=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20admin=5Fpromo=5Flist=5Fpage=5F*?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/handlers/admin/promocodes.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/app/handlers/admin/promocodes.py b/app/handlers/admin/promocodes.py index 73aef95c..e8668282 100644 --- a/app/handlers/admin/promocodes.py +++ b/app/handlers/admin/promocodes.py @@ -130,6 +130,21 @@ async def show_promocodes_list( await callback.answer() +@admin_required +@error_handler +async def show_promocodes_list_page( + callback: types.CallbackQuery, + db_user: User, + db: AsyncSession +): + """Обработчик пагинации списка промокодов.""" + try: + page = int(callback.data.split('_')[-1]) + except (ValueError, IndexError): + page = 1 + await show_promocodes_list(callback, db_user, db, page=page) + + @admin_required @error_handler async def show_promocode_management( @@ -1103,6 +1118,7 @@ async def show_general_promocode_stats( def register_handlers(dp: Dispatcher): dp.callback_query.register(show_promocodes_menu, F.data == "admin_promocodes") dp.callback_query.register(show_promocodes_list, F.data == "admin_promo_list") + dp.callback_query.register(show_promocodes_list_page, F.data.startswith("admin_promo_list_page_")) dp.callback_query.register(start_promocode_creation, F.data == "admin_promo_create") dp.callback_query.register(select_promocode_type, F.data.startswith("promo_type_")) dp.callback_query.register(process_promo_group_selection, F.data.startswith("promo_select_group_"))