Merge pull request #699 from Fr1ngg/revert-698-bedolaga/add-subscription-plan-menu-in-admin-panel

Revert "Add admin tariffs menu scaffolding"
This commit is contained in:
Egor
2025-10-04 03:48:07 +03:00
committed by GitHub
8 changed files with 2 additions and 214 deletions

View File

@@ -33,7 +33,6 @@ from app.handlers.admin import (
maintenance as admin_maintenance,
promo_groups as admin_promo_groups,
campaigns as admin_campaigns,
tariffs as admin_tariffs,
user_messages as admin_user_messages,
updates as admin_updates,
backup as admin_backup,
@@ -127,8 +126,7 @@ async def setup_bot() -> tuple[Bot, Dispatcher]:
admin_main.register_handlers(dp)
admin_users.register_handlers(dp)
admin_subscriptions.register_handlers(dp)
admin_servers.register_handlers(dp)
admin_tariffs.register_handlers(dp)
admin_servers.register_handlers(dp)
admin_promocodes.register_handlers(dp)
admin_messages.register_handlers(dp)
admin_monitoring.register_handlers(dp)

View File

@@ -11,7 +11,6 @@ from app.keyboards.admin import (
get_admin_promo_submenu_keyboard,
get_admin_communications_submenu_keyboard,
get_admin_support_submenu_keyboard,
get_admin_tariffs_submenu_keyboard,
get_admin_settings_submenu_keyboard,
get_admin_system_submenu_keyboard
)
@@ -148,24 +147,6 @@ async def show_support_submenu(
await callback.answer()
@admin_required
@error_handler
async def show_tariffs_submenu(
callback: types.CallbackQuery,
db_user: User,
db: AsyncSession
):
texts = get_texts(db_user.language)
await callback.message.edit_text(
texts.t("ADMIN_TARIFFS_SUBMENU_TITLE", "🧾 **Тарифы**\n\n") +
texts.t("ADMIN_TARIFFS_SUBMENU_DESCRIPTION", "Управление тарифным режимом и подготовка функций:"),
reply_markup=get_admin_tariffs_submenu_keyboard(db_user.language),
parse_mode="Markdown"
)
await callback.answer()
# Moderator panel entry (from main menu quick button)
async def show_moderator_panel(
callback: types.CallbackQuery,
@@ -421,12 +402,7 @@ def register_handlers(dp: Dispatcher):
show_promo_submenu,
F.data == "admin_submenu_promo"
)
dp.callback_query.register(
show_tariffs_submenu,
F.data == "admin_submenu_tariffs"
)
dp.callback_query.register(
show_communications_submenu,
F.data == "admin_submenu_communications"

View File

@@ -1,101 +0,0 @@
from aiogram import Dispatcher, F, types
from sqlalchemy.ext.asyncio import AsyncSession
from app.database.models import User
from app.keyboards.admin import get_admin_tariffs_submenu_keyboard
from app.localization.texts import get_texts
from app.utils.decorators import admin_required, error_handler
async def _show_placeholder(
callback: types.CallbackQuery,
db_user: User,
text_key: str,
default_text: str,
*,
parse_mode: str = "HTML",
) -> None:
"""Render a placeholder message with shared tariffs header."""
texts = get_texts(db_user.language)
header = texts.t("ADMIN_TARIFFS_PLACEHOLDER_TITLE", "🧾 <b>Тарифы</b>\n\n")
body = texts.t(text_key, default_text)
await callback.message.edit_text(
header + body,
reply_markup=get_admin_tariffs_submenu_keyboard(db_user.language),
parse_mode=parse_mode,
)
await callback.answer()
@admin_required
@error_handler
async def show_tariff_mode_activation(
callback: types.CallbackQuery,
db_user: User,
db: AsyncSession,
) -> None:
await _show_placeholder(
callback,
db_user,
"ADMIN_TARIFFS_ACTIVATE_PLACEHOLDER",
(
"⚙️ Режим тарифов пока в разработке.\n\n"
"После запуска режим заменит слово 'сервера' на 'тарифы' в клиентском интерфейсе"
" и откроет дополнительные настройки продаж."
),
)
@admin_required
@error_handler
async def show_tariff_creation_placeholder(
callback: types.CallbackQuery,
db_user: User,
db: AsyncSession,
) -> None:
await _show_placeholder(
callback,
db_user,
"ADMIN_TARIFFS_CREATE_PLACEHOLDER",
" Создание тарифов появится здесь. Подготовьте список параметров заранее.",
)
@admin_required
@error_handler
async def show_tariff_list_placeholder(
callback: types.CallbackQuery,
db_user: User,
db: AsyncSession,
) -> None:
await _show_placeholder(
callback,
db_user,
"ADMIN_TARIFFS_LIST_PLACEHOLDER",
"📋 Просмотр тарифов скоро будет доступен. Список покажет активные и скрытые тарифы.",
)
@admin_required
@error_handler
async def show_tariff_stats_placeholder(
callback: types.CallbackQuery,
db_user: User,
db: AsyncSession,
) -> None:
await _show_placeholder(
callback,
db_user,
"ADMIN_TARIFFS_STATS_PLACEHOLDER",
"📊 Статистика тарифов появится здесь и поможет отслеживать продажи по тарифам.",
)
def register_handlers(dp: Dispatcher) -> None:
dp.callback_query.register(show_tariff_mode_activation, F.data == "admin_tariffs_activate")
dp.callback_query.register(show_tariff_creation_placeholder, F.data == "admin_tariffs_create")
dp.callback_query.register(show_tariff_list_placeholder, F.data == "admin_tariffs_list")
dp.callback_query.register(show_tariff_stats_placeholder, F.data == "admin_tariffs_stats")

View File

@@ -15,7 +15,6 @@ def get_admin_main_keyboard(language: str = "ru") -> InlineKeyboardMarkup:
return InlineKeyboardMarkup(inline_keyboard=[
[InlineKeyboardButton(text=_t(texts, "ADMIN_MAIN_USERS_SUBSCRIPTIONS", "👥 Юзеры/Подписки"), callback_data="admin_submenu_users")],
[InlineKeyboardButton(text=_t(texts, "ADMIN_MAIN_PROMO_STATS", "💰 Промокоды/Статистика"), callback_data="admin_submenu_promo")],
[InlineKeyboardButton(text=_t(texts, "ADMIN_MAIN_TARIFFS", "🧾 Тарифы"), callback_data="admin_submenu_tariffs")],
[InlineKeyboardButton(text=_t(texts, "ADMIN_MAIN_SUPPORT", "🛟 Поддержка"), callback_data="admin_submenu_support")],
[InlineKeyboardButton(text=_t(texts, "ADMIN_MAIN_MESSAGES", "📨 Сообщения"), callback_data="admin_submenu_communications")],
[InlineKeyboardButton(text=_t(texts, "ADMIN_MAIN_SETTINGS", "⚙️ Настройки"), callback_data="admin_submenu_settings")],
@@ -112,40 +111,6 @@ def get_admin_support_submenu_keyboard(language: str = "ru") -> InlineKeyboardMa
])
def get_admin_tariffs_submenu_keyboard(language: str = "ru") -> InlineKeyboardMarkup:
texts = get_texts(language)
return InlineKeyboardMarkup(inline_keyboard=[
[
InlineKeyboardButton(
text=_t(texts, "ADMIN_TARIFFS_ACTIVATE_BUTTON", "⚙️ Активировать режим тарифов"),
callback_data="admin_tariffs_activate"
)
],
[
InlineKeyboardButton(
text=_t(texts, "ADMIN_TARIFFS_CREATE_BUTTON", " Создать тариф"),
callback_data="admin_tariffs_create"
)
],
[
InlineKeyboardButton(
text=_t(texts, "ADMIN_TARIFFS_LIST_BUTTON", "📋 Список тарифов"),
callback_data="admin_tariffs_list"
)
],
[
InlineKeyboardButton(
text=_t(texts, "ADMIN_TARIFFS_STATS_BUTTON", "📊 Статистика тарифов"),
callback_data="admin_tariffs_stats"
)
],
[
InlineKeyboardButton(text=texts.BACK, callback_data="admin_panel")
]
])
def get_admin_settings_submenu_keyboard(language: str = "ru") -> InlineKeyboardMarkup:
texts = get_texts(language)

View File

@@ -32,16 +32,3 @@ RULES_TEXT: |
2. Do not distribute spam or malicious content.
3. Respect other community members.
ADMIN_MAIN_TARIFFS: "🧾 Tariffs"
ADMIN_TARIFFS_SUBMENU_TITLE: "🧾 **Tariffs**\\n\\n"
ADMIN_TARIFFS_SUBMENU_DESCRIPTION: "Manage the tariff mode and upcoming features:\\n\\nChoose an action:"
ADMIN_TARIFFS_ACTIVATE_BUTTON: "⚙️ Activate tariff mode"
ADMIN_TARIFFS_CREATE_BUTTON: " Create tariff"
ADMIN_TARIFFS_LIST_BUTTON: "📋 Tariff list"
ADMIN_TARIFFS_STATS_BUTTON: "📊 Tariff statistics"
ADMIN_TARIFFS_PLACEHOLDER_TITLE: "🧾 <b>Tariffs</b>\\n\\n"
ADMIN_TARIFFS_ACTIVATE_PLACEHOLDER: "⚙️ Tariff mode is still under development.\\n\\nOnce launched it will rename 'servers' to 'tariffs' in the client interface and unlock additional sales settings."
ADMIN_TARIFFS_CREATE_PLACEHOLDER: " Tariff creation will appear here. Prepare the parameter list in advance."
ADMIN_TARIFFS_LIST_PLACEHOLDER: "📋 Tariff browsing is coming soon. The list will show both active and hidden tariffs."
ADMIN_TARIFFS_STATS_PLACEHOLDER: "📊 Tariff statistics will appear here to help track sales per tariff."

View File

@@ -32,16 +32,3 @@ RULES_TEXT: |
2. Не распространяйте спам и вредоносный контент.
3. Уважайте других пользователей.
ADMIN_MAIN_TARIFFS: "🧾 Тарифы"
ADMIN_TARIFFS_SUBMENU_TITLE: "🧾 **Тарифы**\\n\\n"
ADMIN_TARIFFS_SUBMENU_DESCRIPTION: "Управление тарифным режимом и подготовка функций:\\n\\nВыберите действие:"
ADMIN_TARIFFS_ACTIVATE_BUTTON: "⚙️ Активировать режим тарифов"
ADMIN_TARIFFS_CREATE_BUTTON: " Создать тариф"
ADMIN_TARIFFS_LIST_BUTTON: "📋 Список тарифов"
ADMIN_TARIFFS_STATS_BUTTON: "📊 Статистика тарифов"
ADMIN_TARIFFS_PLACEHOLDER_TITLE: "🧾 <b>Тарифы</b>\\n\\n"
ADMIN_TARIFFS_ACTIVATE_PLACEHOLDER: "⚙️ Режим тарифов пока в разработке.\\n\\nПосле запуска режим заменит слово 'сервера' на 'тарифы' в клиентском интерфейсе и откроет дополнительные настройки продаж."
ADMIN_TARIFFS_CREATE_PLACEHOLDER: " Создание тарифов появится здесь. Подготовьте список параметров заранее."
ADMIN_TARIFFS_LIST_PLACEHOLDER: "📋 Просмотр тарифов скоро будет доступен. Список покажет активные и скрытые тарифы."
ADMIN_TARIFFS_STATS_PLACEHOLDER: "📊 Статистика тарифов появится здесь и поможет отслеживать продажи по тарифам."

View File

@@ -16,18 +16,6 @@
"COUNTRY_CHANGES_ACTIVE_COUNT": "🌐 <b>Active countries:</b> {count}",
"ADMIN_MAIN_MENU": "🏠 Main menu",
"ADMIN_CAMPAIGNS": "📣 Promotional campaigns",
"ADMIN_MAIN_TARIFFS": "🧾 Tariffs",
"ADMIN_TARIFFS_SUBMENU_TITLE": "🧾 **Tariffs**\n\n",
"ADMIN_TARIFFS_SUBMENU_DESCRIPTION": "Manage the tariff mode and upcoming features:\n\nChoose an action:",
"ADMIN_TARIFFS_ACTIVATE_BUTTON": "⚙️ Activate tariff mode",
"ADMIN_TARIFFS_CREATE_BUTTON": " Create tariff",
"ADMIN_TARIFFS_LIST_BUTTON": "📋 Tariff list",
"ADMIN_TARIFFS_STATS_BUTTON": "📊 Tariff statistics",
"ADMIN_TARIFFS_PLACEHOLDER_TITLE": "🧾 <b>Tariffs</b>\n\n",
"ADMIN_TARIFFS_ACTIVATE_PLACEHOLDER": "⚙️ Tariff mode is still under development.\n\nOnce launched it will rename 'servers' to 'tariffs' in the client interface and unlock additional sales settings.",
"ADMIN_TARIFFS_CREATE_PLACEHOLDER": " Tariff creation will appear here. Prepare the parameter list in advance.",
"ADMIN_TARIFFS_LIST_PLACEHOLDER": "📋 Tariff browsing is coming soon. The list will show both active and hidden tariffs.",
"ADMIN_TARIFFS_STATS_PLACEHOLDER": "📊 Tariff statistics will appear here to help track sales per tariff.",
"AUTOPAY_BUTTON": "💳 Auto payment",
"AUTOPAY_SET_DAYS_BUTTON": "⚙️ Configure days",
"AUTOPAY_STATUS_ENABLED": "enabled",

View File

@@ -93,18 +93,6 @@
"ADMIN_PROMO_GROUP_DELETE_CONFIRM": "Удалить промогруппу «{name}»? Все пользователи будут переведены в базовую группу.",
"ADMIN_PROMO_GROUP_DELETED": "Промогруппа «{name}» удалена.",
"ADMIN_SUBSCRIPTIONS": "📱 Подписки",
"ADMIN_MAIN_TARIFFS": "🧾 Тарифы",
"ADMIN_TARIFFS_SUBMENU_TITLE": "🧾 **Тарифы**\n\n",
"ADMIN_TARIFFS_SUBMENU_DESCRIPTION": "Управление тарифным режимом и подготовка функций:\n\nВыберите действие:",
"ADMIN_TARIFFS_ACTIVATE_BUTTON": "⚙️ Активировать режим тарифов",
"ADMIN_TARIFFS_CREATE_BUTTON": " Создать тариф",
"ADMIN_TARIFFS_LIST_BUTTON": "📋 Список тарифов",
"ADMIN_TARIFFS_STATS_BUTTON": "📊 Статистика тарифов",
"ADMIN_TARIFFS_PLACEHOLDER_TITLE": "🧾 <b>Тарифы</b>\n\n",
"ADMIN_TARIFFS_ACTIVATE_PLACEHOLDER": "⚙️ Режим тарифов пока в разработке.\n\nПосле запуска режим заменит слово 'сервера' на 'тарифы' в клиентском интерфейсе и откроет дополнительные настройки продаж.",
"ADMIN_TARIFFS_CREATE_PLACEHOLDER": " Создание тарифов появится здесь. Подготовьте список параметров заранее.",
"ADMIN_TARIFFS_LIST_PLACEHOLDER": "📋 Просмотр тарифов скоро будет доступен. Список покажет активные и скрытые тарифы.",
"ADMIN_TARIFFS_STATS_PLACEHOLDER": "📊 Статистика тарифов появится здесь и поможет отслеживать продажи по тарифам.",
"ADMIN_USERS": "👥 Пользователи",
"ADMIN_TICKETS_TITLE_OPEN": "🎫 Открытые тикеты поддержки:",
"ADMIN_TICKETS_TITLE_CLOSED": "🎫 Закрытые тикеты поддержки:",