mirror of
https://github.com/chillpadclub/bedolaga-cabinet.git
synced 2026-07-28 09:33:46 +00:00
feat: add multi-channel subscription blocking UI and admin management
- Channel subscription blocking screen with per-channel status display - Safe URL handling with protocol validation (no open redirect) - Race-condition-safe subscription check with useRef guard - Admin channel management page with create, toggle, delete - Error handlers on all admin mutations with haptic feedback - Proper type guard for channel subscription error detection - Accessibility: aria-labels on icon-only buttons - Localization: en, ru, zh, fa translations
This commit is contained in:
@@ -861,7 +861,8 @@
|
||||
"updates": "Updates",
|
||||
"pinnedMessages": "Pinned Messages",
|
||||
"partners": "Partners",
|
||||
"withdrawals": "Withdrawals"
|
||||
"withdrawals": "Withdrawals",
|
||||
"channelSubscriptions": "Required Channels"
|
||||
},
|
||||
"panel": {
|
||||
"title": "Admin Panel",
|
||||
@@ -888,7 +889,8 @@
|
||||
"updatesDesc": "Bot & cabinet versions",
|
||||
"pinnedMessagesDesc": "Manage pinned messages for users",
|
||||
"partnersDesc": "Manage partner applications and commissions",
|
||||
"withdrawalsDesc": "Review and process withdrawal requests"
|
||||
"withdrawalsDesc": "Review and process withdrawal requests",
|
||||
"channelSubscriptionsDesc": "Manage required channel subscriptions"
|
||||
},
|
||||
"trafficUsage": {
|
||||
"title": "Traffic Usage",
|
||||
@@ -1297,6 +1299,28 @@
|
||||
"editMessage": "Edit",
|
||||
"cantDeleteActive": "Cannot delete active message"
|
||||
},
|
||||
"channelSubscriptions": {
|
||||
"title": "Required Channels",
|
||||
"subtitle": "Users must subscribe to these channels",
|
||||
"addChannel": "Add Channel",
|
||||
"empty": "No channels configured",
|
||||
"enabled": "Enabled",
|
||||
"disabled": "Disabled",
|
||||
"enable": "Enable",
|
||||
"disable": "Disable",
|
||||
"delete": "Delete",
|
||||
"deleteConfirm": "Delete this channel?",
|
||||
"sortOrder": "Order",
|
||||
"form": {
|
||||
"title": "Display Name",
|
||||
"channelId": "Channel ID",
|
||||
"channelIdHint": "@username or -100XXXXXXXXXX",
|
||||
"channelLink": "Channel Link",
|
||||
"channelLinkHint": "https://t.me/channel",
|
||||
"submit": "Add",
|
||||
"cancel": "Cancel"
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"title": "System Settings",
|
||||
"allCategories": "All categories",
|
||||
@@ -3144,7 +3168,9 @@
|
||||
"waitSeconds": "Wait {{seconds}} sec.",
|
||||
"hint": "Click check button after subscribing",
|
||||
"notSubscribed": "You haven't subscribed to the channel yet",
|
||||
"checkError": "Check failed. Please try again later."
|
||||
"checkError": "Check failed. Please try again later.",
|
||||
"subscribed": "Subscribed",
|
||||
"channelsRequired": "Subscribe to all channels below to continue"
|
||||
},
|
||||
"blacklisted": {
|
||||
"title": "Access Denied",
|
||||
|
||||
Reference in New Issue
Block a user