44 lines
1.5 KiB
Python
44 lines
1.5 KiB
Python
from aiogram.types import InlineKeyboardMarkup
|
|
from aiogram.utils.keyboard import InlineKeyboardBuilder
|
|
|
|
from middlewares import maintenance
|
|
|
|
from ..panel.keyboard import AdminPanelCallback, build_admin_back_btn
|
|
|
|
|
|
def build_management_kb() -> InlineKeyboardMarkup:
|
|
builder = InlineKeyboardBuilder()
|
|
builder.button(
|
|
text="💾 Создать резервную копию",
|
|
callback_data=AdminPanelCallback(action="backups").pack(),
|
|
)
|
|
builder.button(
|
|
text="📛 Управление банами",
|
|
callback_data=AdminPanelCallback(action="bans").pack(),
|
|
)
|
|
builder.button(
|
|
text="🔄 Перезагрузить бота",
|
|
callback_data=AdminPanelCallback(action="restart").pack(),
|
|
)
|
|
builder.button(
|
|
text="🌐 Сменить домен",
|
|
callback_data=AdminPanelCallback(action="change_domain").pack(),
|
|
)
|
|
builder.button(
|
|
text="🔑 Восстановить пробники",
|
|
callback_data=AdminPanelCallback(action="restore_trials").pack(),
|
|
)
|
|
maintenance_text = (
|
|
"🛠️ Выключить тех. работы"
|
|
if maintenance.maintenance_mode
|
|
else "🛠️ Включить тех. работы"
|
|
)
|
|
builder.button(
|
|
text=maintenance_text,
|
|
callback_data=AdminPanelCallback(action="toggle_maintenance").pack(),
|
|
)
|
|
|
|
builder.row(build_admin_back_btn())
|
|
builder.adjust(1)
|
|
return builder.as_markup()
|