Merge pull request #2200 from BEDOLAGA-DEV/dev5

platega change name
This commit is contained in:
Egor
2025-12-22 19:36:09 +03:00
committed by GitHub
6 changed files with 30 additions and 10 deletions

View File

@@ -146,8 +146,9 @@ class Settings(BaseSettings):
BASE_PROMO_GROUP_PERIOD_DISCOUNTS_ENABLED: bool = False
BASE_PROMO_GROUP_PERIOD_DISCOUNTS: str = ""
TRAFFIC_SELECTION_MODE: str = "selectable"
FIXED_TRAFFIC_LIMIT_GB: int = 100
TRAFFIC_SELECTION_MODE: str = "selectable"
FIXED_TRAFFIC_LIMIT_GB: int = 100
BUY_TRAFFIC_BUTTON_VISIBLE: bool = True
REFERRAL_MINIMUM_TOPUP_KOPEKS: int = 10000
REFERRAL_FIRST_TOPUP_BONUS_KOPEKS: int = 10000
@@ -319,6 +320,7 @@ class Settings(BaseSettings):
PLATEGA_ENABLED: bool = False
PLATEGA_MERCHANT_ID: Optional[str] = None
PLATEGA_SECRET: Optional[str] = None
PLATEGA_DISPLAY_NAME: str = "Platega"
PLATEGA_BASE_URL: str = "https://app.platega.io"
PLATEGA_RETURN_URL: Optional[str] = None
PLATEGA_FAILED_URL: Optional[str] = None
@@ -1085,6 +1087,15 @@ class Settings(BaseSettings):
and self.PLATEGA_SECRET is not None
)
def get_platega_display_name(self) -> str:
name = (self.PLATEGA_DISPLAY_NAME or "").strip()
if not name:
return "Platega"
return name
def get_platega_display_name_html(self) -> str:
return html.escape(self.get_platega_display_name())
def get_platega_return_url(self) -> Optional[str]:
if self.PLATEGA_RETURN_URL:
return self.PLATEGA_RETURN_URL

View File

@@ -38,7 +38,7 @@ def _method_display(method: PaymentMethod) -> str:
if method == PaymentMethod.YOOKASSA:
return "YooKassa"
if method == PaymentMethod.PLATEGA:
return "Platega"
return settings.get_platega_display_name()
if method == PaymentMethod.CRYPTOBOT:
return "CryptoBot"
if method == PaymentMethod.TELEGRAM_STARS:

View File

@@ -507,7 +507,12 @@ def get_main_menu_keyboard(
)
# Добавляем кнопку докупки трафика для лимитированных подписок
if subscription and not subscription.is_trial and subscription.traffic_limit_gb > 0:
if (
settings.BUY_TRAFFIC_BUTTON_VISIBLE
and subscription
and not subscription.is_trial
and subscription.traffic_limit_gb > 0
):
paired_buttons.append(
InlineKeyboardButton(text=texts.t("BUY_TRAFFIC_BUTTON", "📈 Докупить трафик"), callback_data="buy_traffic")
)
@@ -1372,9 +1377,10 @@ def get_payment_methods_keyboard(amount_kopeks: int, language: str = DEFAULT_LAN
has_direct_payment_methods = True
if settings.is_platega_enabled() and settings.get_platega_active_methods():
platega_name = settings.get_platega_display_name()
keyboard.append([
InlineKeyboardButton(
text=texts.t("PAYMENT_PLATEGA", "💳 Platega"),
text=texts.t("PAYMENT_PLATEGA", f"💳 {platega_name}"),
callback_data=_build_callback("platega"),
)
])

View File

@@ -360,11 +360,12 @@ class PlategaPaymentMixin:
PaymentMethod.PLATEGA,
)
platega_name = settings.get_platega_display_name()
method_display = settings.get_platega_method_display_name(payment.payment_method_code)
description = (
f"Пополнение через Platega ({method_display})"
f"Пополнение через {platega_name} ({method_display})"
if method_display
else "Пополнение через Platega"
else f"Пополнение через {platega_name}"
)
transaction = existing_transaction

View File

@@ -90,7 +90,7 @@ def method_display_name(method: PaymentMethod) -> str:
if method == PaymentMethod.WATA:
return "WATA"
if method == PaymentMethod.PLATEGA:
return "Platega"
return settings.get_platega_display_name()
if method == PaymentMethod.CRYPTOBOT:
return "CryptoBot"
if method == PaymentMethod.HELEKET:

View File

@@ -84,7 +84,7 @@ class BotConfigurationService:
"CRYPTOBOT": "🪙 CryptoBot",
"HELEKET": "🪙 Heleket",
"YOOKASSA": "🟣 YooKassa",
"PLATEGA": "💳 Platega",
"PLATEGA": "💳 {platega_name}",
"TRIBUTE": "🎁 Tribute",
"MULENPAY": "💰 {mulenpay_name}",
"PAL24": "🏦 PAL24 / PayPalych",
@@ -138,7 +138,7 @@ class BotConfigurationService:
"YOOKASSA": "Интеграция с YooKassa: идентификаторы магазина и вебхуки.",
"CRYPTOBOT": "CryptoBot и криптоплатежи через Telegram.",
"HELEKET": "Heleket: криптоплатежи, ключи мерчанта и вебхуки.",
"PLATEGA": "Platega: merchant ID, секрет, ссылки возврата и методы оплаты.",
"PLATEGA": "{platega_name}: merchant ID, секрет, ссылки возврата и методы оплаты.",
"MULENPAY": "Платежи {mulenpay_name} и параметры магазина.",
"PAL24": "PAL24 / PayPalych подключения и лимиты.",
"TRIBUTE": "Tribute и донат-сервисы.",
@@ -188,6 +188,8 @@ class BotConfigurationService:
return value
if category_key == "MULENPAY":
return value.format(mulenpay_name=settings.get_mulenpay_display_name())
if category_key == "PLATEGA":
return value.format(platega_name=settings.get_platega_display_name())
return value
CATEGORY_KEY_OVERRIDES: Dict[str, str] = {