chore: remove terms of service setting
Keep privacy policy and user agreement links as the supported legal documents. Refresh the admin settings manifest, demo dataset, locales, docs, and bot menu tests.
This commit is contained in:
@@ -65,7 +65,6 @@ SETTINGS_MANIFEST: List[SettingField] = [
|
||||
"SUPPORT_LINK", "url", "general", "Ссылка поддержки", "Куда вести пользователей за помощью."
|
||||
),
|
||||
SettingField("SERVER_STATUS_URL", "url", "general", "Ссылка на статус серверов"),
|
||||
SettingField("TERMS_OF_SERVICE_URL", "url", "general", "Условия использования"),
|
||||
SettingField("PRIVACY_POLICY_URL", "url", "general", "Политика конфиденциальности"),
|
||||
SettingField("USER_AGREEMENT_URL", "url", "general", "Пользовательское соглашение"),
|
||||
SettingField("DISABLE_WELCOME_MESSAGE", "bool", "general", "Скрыть приветствие /start"),
|
||||
|
||||
@@ -765,7 +765,6 @@ def _get_cached_webapp_settings(request: web.Request) -> Dict[str, Any]:
|
||||
"traffic_packages": settings.traffic_packages,
|
||||
"stars_traffic_packages": settings.stars_traffic_packages,
|
||||
"support_url": settings.SUPPORT_LINK or "",
|
||||
"terms_url": settings.TERMS_OF_SERVICE_URL or "",
|
||||
"privacy_policy_url": settings.PRIVACY_POLICY_URL or "",
|
||||
"user_agreement_url": settings.USER_AGREEMENT_URL or "",
|
||||
"currency": settings.DEFAULT_CURRENCY_SYMBOL or "RUB",
|
||||
@@ -1018,7 +1017,6 @@ def _build_webapp_bootstrap_payload(request: web.Request) -> Dict[str, Any]:
|
||||
"telegramOAuthClientId": _resolve_telegram_oauth_client_id(settings) or 0,
|
||||
"telegramOAuthRequestAccess": _resolve_telegram_oauth_request_access(settings),
|
||||
"supportUrl": cached["support_url"],
|
||||
"termsUrl": cached["terms_url"],
|
||||
"privacyPolicyUrl": cached["privacy_policy_url"],
|
||||
"userAgreementUrl": cached["user_agreement_url"],
|
||||
"currency": cached["currency"],
|
||||
|
||||
@@ -1184,7 +1184,7 @@ async def main_action_callback_handler(
|
||||
_ = lambda key, **kwargs: i18n.gettext(current_lang, key, **kwargs) if i18n else key
|
||||
|
||||
privacy_url = settings.PRIVACY_POLICY_URL
|
||||
user_agreement_url = settings.USER_AGREEMENT_URL or settings.TERMS_OF_SERVICE_URL
|
||||
user_agreement_url = settings.USER_AGREEMENT_URL
|
||||
|
||||
if not privacy_url and not user_agreement_url:
|
||||
await safe_answer_callback(
|
||||
|
||||
@@ -166,8 +166,7 @@ def get_main_menu_inline_keyboard(
|
||||
InlineKeyboardButton(text=_(key="menu_support_button"), url=settings.SUPPORT_LINK)
|
||||
)
|
||||
|
||||
user_agreement_url = settings.USER_AGREEMENT_URL or settings.TERMS_OF_SERVICE_URL
|
||||
if settings.PRIVACY_POLICY_URL or user_agreement_url:
|
||||
if settings.PRIVACY_POLICY_URL or settings.USER_AGREEMENT_URL:
|
||||
builder.row(
|
||||
InlineKeyboardButton(text=_(key="menu_info_button"), callback_data="main_action:info")
|
||||
)
|
||||
@@ -234,8 +233,7 @@ def get_bot_interface_inline_keyboard(
|
||||
InlineKeyboardButton(text=_(key="menu_support_button"), url=settings.SUPPORT_LINK)
|
||||
)
|
||||
|
||||
user_agreement_url = settings.USER_AGREEMENT_URL or settings.TERMS_OF_SERVICE_URL
|
||||
if settings.PRIVACY_POLICY_URL or user_agreement_url:
|
||||
if settings.PRIVACY_POLICY_URL or settings.USER_AGREEMENT_URL:
|
||||
builder.row(
|
||||
InlineKeyboardButton(
|
||||
text=_(key="menu_info_button"), callback_data="main_action:bot_info"
|
||||
|
||||
@@ -205,7 +205,6 @@ LOCALE_GROUPS = [
|
||||
"admin_settings_field_subscription_mini_app_url",
|
||||
"admin_settings_field_support_link",
|
||||
"admin_settings_field_server_status_url",
|
||||
"admin_settings_field_terms_",
|
||||
"admin_settings_field_privacy_",
|
||||
"admin_settings_field_user_agreement_",
|
||||
"appearance_",
|
||||
|
||||
@@ -148,7 +148,6 @@ class Settings(BaseSettings):
|
||||
|
||||
SUPPORT_LINK: Optional[str] = Field(default=None)
|
||||
SERVER_STATUS_URL: Optional[str] = Field(default=None)
|
||||
TERMS_OF_SERVICE_URL: Optional[str] = Field(default=None)
|
||||
PRIVACY_POLICY_URL: Optional[str] = Field(default=None)
|
||||
USER_AGREEMENT_URL: Optional[str] = Field(default=None)
|
||||
REQUIRED_CHANNEL_ID: Optional[int] = Field(
|
||||
|
||||
@@ -105,7 +105,6 @@
|
||||
| `DEFAULT_CURRENCY_SYMBOL` | Символ/код валюты в интерфейсе. |
|
||||
| `SUPPORT_LINK` | Внешняя ссылка поддержки. |
|
||||
| `SERVER_STATUS_URL` | Страница статуса сервиса. |
|
||||
| `TERMS_OF_SERVICE_URL` | Условия использования. |
|
||||
| `PRIVACY_POLICY_URL` | Политика конфиденциальности. |
|
||||
| `USER_AGREEMENT_URL` | Пользовательское соглашение. |
|
||||
| `REQUIRED_CHANNEL_ID` | ID обязательного Telegram-канала. Используется для проверки подписки и автоматического получения ссылки кнопки, если бот видит канал. |
|
||||
|
||||
@@ -15,14 +15,14 @@ export const DEMO_DATASET = {
|
||||
logs: 1600,
|
||||
supportTickets: 3,
|
||||
translationKeys: 1994,
|
||||
settingsFields: 223,
|
||||
settingsFields: 222,
|
||||
},
|
||||
},
|
||||
config: {
|
||||
title: "/minishop",
|
||||
supportUrl: "https://t.me/demo_minishop_support",
|
||||
privacyPolicyUrl: "https://demo.example/privacy",
|
||||
userAgreementUrl: "https://demo.example/terms",
|
||||
userAgreementUrl: "https://demo.example/agreement",
|
||||
telegramLoginBotUsername: "demo_minishop_bot",
|
||||
telegramLoginBotId: 1234567890,
|
||||
telegramOAuthClientId: 1234567890,
|
||||
@@ -68425,8 +68425,8 @@ export const DEMO_DATASET = {
|
||||
telegram_username: "login_please",
|
||||
telegram_first_name: "",
|
||||
email: "",
|
||||
event_type: "command:/terms",
|
||||
content: "Demo event: command:/terms Account #910327.",
|
||||
event_type: "command:/agreement",
|
||||
content: "Demo event: command:/agreement Account #910327.",
|
||||
is_admin_event: false,
|
||||
target_user_id: null,
|
||||
timestamp: "2026-05-21T07:34:39Z",
|
||||
@@ -69385,8 +69385,8 @@ export const DEMO_DATASET = {
|
||||
telegram_username: "login_please",
|
||||
telegram_first_name: "",
|
||||
email: "",
|
||||
event_type: "command:/terms",
|
||||
content: "Demo event: command:/terms Account #910327.",
|
||||
event_type: "command:/agreement",
|
||||
content: "Demo event: command:/agreement Account #910327.",
|
||||
is_admin_event: false,
|
||||
target_user_id: null,
|
||||
timestamp: "2026-05-19T13:37:32Z",
|
||||
@@ -86121,26 +86121,6 @@ export const DEMO_DATASET = {
|
||||
overridden: false,
|
||||
updated_at: null,
|
||||
},
|
||||
{
|
||||
key: "TERMS_OF_SERVICE_URL",
|
||||
type: "url",
|
||||
section: "general",
|
||||
section_order: 1,
|
||||
subsection: null,
|
||||
label: "Условия использования",
|
||||
description: "",
|
||||
i18n_label_key: "admin_settings_field_terms_of_service_url_label",
|
||||
i18n_description_key: null,
|
||||
i18n_subsection_key: null,
|
||||
i18n_placeholder_key: null,
|
||||
placeholder: "https://demo.example/terms_of_service_url",
|
||||
optional: true,
|
||||
secret: false,
|
||||
default: "https://demo.example/terms_of_service_url",
|
||||
value: "https://demo.example/terms_of_service_url",
|
||||
overridden: false,
|
||||
updated_at: null,
|
||||
},
|
||||
{
|
||||
key: "PRIVACY_POLICY_URL",
|
||||
type: "url",
|
||||
@@ -114599,30 +114579,6 @@ export const DEMO_DATASET = {
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
key: "admin_settings_field_terms_of_service_url_label",
|
||||
audience: "internal",
|
||||
values: {
|
||||
ru: {
|
||||
base: "Условия использования",
|
||||
fallback: "Условия использования",
|
||||
effective: "Условия использования",
|
||||
override: "",
|
||||
overridden: false,
|
||||
updated_at: null,
|
||||
updated_by: null,
|
||||
},
|
||||
en: {
|
||||
base: "Terms Of Service URL",
|
||||
fallback: "Условия использования",
|
||||
effective: "Terms Of Service URL",
|
||||
override: "",
|
||||
overridden: false,
|
||||
updated_at: null,
|
||||
updated_by: null,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
key: "admin_settings_field_user_agreement_url_label",
|
||||
audience: "internal",
|
||||
@@ -133711,30 +133667,6 @@ export const DEMO_DATASET = {
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
key: "menu_terms_button",
|
||||
audience: "user",
|
||||
values: {
|
||||
ru: {
|
||||
base: "📄 Условия сервиса",
|
||||
fallback: "📄 Условия сервиса",
|
||||
effective: "📄 Условия сервиса",
|
||||
override: "",
|
||||
overridden: false,
|
||||
updated_at: null,
|
||||
updated_by: null,
|
||||
},
|
||||
en: {
|
||||
base: "📄 Terms of Service",
|
||||
fallback: "📄 Условия сервиса",
|
||||
effective: "📄 Terms of Service",
|
||||
override: "",
|
||||
overridden: false,
|
||||
updated_at: null,
|
||||
updated_by: null,
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
|
||||
@@ -98,25 +98,6 @@
|
||||
"overridden": false,
|
||||
"updated_at": null
|
||||
},
|
||||
{
|
||||
"key": "TERMS_OF_SERVICE_URL",
|
||||
"type": "url",
|
||||
"section": "general",
|
||||
"section_order": 1,
|
||||
"subsection": null,
|
||||
"label": "Условия использования",
|
||||
"description": "",
|
||||
"i18n_label_key": "admin_settings_field_terms_of_service_url_label",
|
||||
"i18n_description_key": null,
|
||||
"i18n_subsection_key": null,
|
||||
"i18n_placeholder_key": null,
|
||||
"placeholder": "",
|
||||
"optional": true,
|
||||
"secret": false,
|
||||
"value": "",
|
||||
"overridden": false,
|
||||
"updated_at": null
|
||||
},
|
||||
{
|
||||
"key": "PRIVACY_POLICY_URL",
|
||||
"type": "url",
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
"menu_language_settings_inline": "🌐 Language",
|
||||
"menu_server_status_button": "📊 Status",
|
||||
"menu_support_button": "💬 Admin contact",
|
||||
"menu_terms_button": "📄 Terms of Service",
|
||||
"menu_info_button": "ℹ️ Information",
|
||||
"bot_interface_menu_title": "Bot interface",
|
||||
"bot_interface_menu_webapp_hint": "The Personal Account is the easier place to manage the service.",
|
||||
@@ -1591,7 +1590,6 @@
|
||||
"admin_settings_field_support_link_label": "Support Link",
|
||||
"admin_settings_field_support_link_description": "Controls the 'Support Link' setting in admin overrides.",
|
||||
"admin_settings_field_server_status_url_label": "Server Status URL",
|
||||
"admin_settings_field_terms_of_service_url_label": "Terms Of Service URL",
|
||||
"admin_settings_field_privacy_policy_url_label": "Privacy Policy URL",
|
||||
"admin_settings_field_user_agreement_url_label": "User Agreement URL",
|
||||
"admin_settings_field_disable_welcome_message_label": "Disable Welcome Message",
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
"menu_language_settings_inline": "🌐 Язык",
|
||||
"menu_server_status_button": "📊 Статус",
|
||||
"menu_support_button": "💬 Связаться в telegram",
|
||||
"menu_terms_button": "📄 Условия сервиса",
|
||||
"menu_info_button": "ℹ️ Информация",
|
||||
"bot_interface_menu_title": "Интерфейс в боте",
|
||||
"bot_interface_menu_webapp_hint": "В личном кабинете взаимодействовать с сервисом будет удобнее.",
|
||||
@@ -1591,7 +1590,6 @@
|
||||
"admin_settings_field_support_link_label": "Ссылка поддержки",
|
||||
"admin_settings_field_support_link_description": "Куда вести пользователей за помощью.",
|
||||
"admin_settings_field_server_status_url_label": "Ссылка на статус серверов",
|
||||
"admin_settings_field_terms_of_service_url_label": "Условия использования",
|
||||
"admin_settings_field_privacy_policy_url_label": "Политика конфиденциальности",
|
||||
"admin_settings_field_user_agreement_url_label": "Пользовательское соглашение",
|
||||
"admin_settings_field_disable_welcome_message_label": "Скрыть приветствие /start",
|
||||
|
||||
@@ -46,7 +46,6 @@ class UserBotMenuTests(unittest.TestCase):
|
||||
SUPPORT_LINK="https://t.me/support",
|
||||
PRIVACY_POLICY_URL="https://example.com/privacy",
|
||||
USER_AGREEMENT_URL="https://example.com/agreement",
|
||||
TERMS_OF_SERVICE_URL="",
|
||||
TRIAL_ENABLED=True,
|
||||
SERVER_STATUS_URL="",
|
||||
SUBSCRIPTION_GUIDES_ENABLED=True,
|
||||
|
||||
Reference in New Issue
Block a user