This commit is contained in:
2026-07-09 16:45:17 +03:00
parent 5c7a9710f3
commit da24ed8ba7
23 changed files with 1542 additions and 358 deletions

View File

@@ -108,6 +108,10 @@ class Settings(BaseSettings):
default="Переведите оплату по указанным реквизитам и отправьте чек в бот.",
validation_alias="PAYMENT_TRANSFER_TEXT",
)
payment_success_text: str = Field(
default="Доступ выдан. Сохраните ссылку и используйте её для подключения.",
validation_alias="PAYMENT_SUCCESS_TEXT",
)
payment_review_link: str = Field(default="", validation_alias="PAYMENT_REVIEW_LINK")
payment_review_chat_id_raw: str = Field(
default="",
@@ -117,6 +121,18 @@ class Settings(BaseSettings):
default=0,
validation_alias="PAYMENT_REVIEW_THREAD_ID",
)
broadcast_results_link: str = Field(
default="https://t.me/c/3646494169/67/68",
validation_alias="BROADCAST_RESULTS_LINK",
)
broadcast_results_chat_id_raw: str = Field(
default="",
validation_alias="BROADCAST_RESULTS_CHAT_ID",
)
broadcast_results_thread_id: int = Field(
default=0,
validation_alias="BROADCAST_RESULTS_THREAD_ID",
)
referral_discount_percent: int = Field(
default=5,
validation_alias="REFERRAL_DISCOUNT_PERCENT",
@@ -241,6 +257,22 @@ class Settings(BaseSettings):
_, parsed_thread_id = self._parse_private_topic_link(self.payment_review_link)
return parsed_thread_id
@cached_property
def broadcast_results_chat_id(self) -> int | None:
if self.broadcast_results_chat_id_raw.strip():
return int(self.broadcast_results_chat_id_raw.strip())
parsed_chat_id, _ = self._parse_private_topic_link(self.broadcast_results_link)
return parsed_chat_id
@cached_property
def broadcast_results_message_thread_id(self) -> int | None:
if self.broadcast_results_thread_id > 0:
return self.broadcast_results_thread_id
_, parsed_thread_id = self._parse_private_topic_link(self.broadcast_results_link)
return parsed_thread_id
@staticmethod
def _parse_private_topic_link(link: str) -> tuple[int | None, int | None]:
cleaned = link.strip()