mirror of
https://github.com/chillpadclub/bedolaga-cabinet.git
synced 2026-07-30 02:23:47 +00:00
fix(admin-wheel): unify statistics rendering + fill config UI gaps
Statistics tab now uses the shared StatCard + BreakdownList (ranked bars + share %) and the currency-aware formatter — matching the rest of the admin stats instead of ad-hoc 'card p-4 text-center' / text-3xl tiles — and gains proper loading, error and empty states. Also surface backend-supported config the form couldn't reach (forcing DB edits): - promo_validity_days (model + schema-bounded 1-365) is now editable in Settings. - per-prize manual_probability override (0-1) now has an input in the prize form.
This commit is contained in:
@@ -1756,7 +1756,8 @@
|
||||
"dailyLimit": "Daily Spin Limit (0 = unlimited)",
|
||||
"minSubDays": "Min subscription days for day payment",
|
||||
"promocodes": "Promocodes",
|
||||
"promoPrefix": "Promo code prefix"
|
||||
"promoPrefix": "Promo code prefix",
|
||||
"promoValidityDays": "Promo code validity (days)"
|
||||
},
|
||||
"starsNotEnabledGlobally": "Star payments are not enabled in Payment Methods. Enable \"Telegram Stars\" in the Payment Methods section.",
|
||||
"prizes": {
|
||||
@@ -1783,7 +1784,9 @@
|
||||
"emoji": "Emoji",
|
||||
"color": "Color",
|
||||
"active": "Active",
|
||||
"worth": "Worth"
|
||||
"worth": "Worth",
|
||||
"probability": "Manual probability (0–1)",
|
||||
"probabilityHint": "Empty = auto by RTP"
|
||||
},
|
||||
"promo": {
|
||||
"title": "Promo Code Settings",
|
||||
@@ -1801,7 +1804,9 @@
|
||||
"times": "times",
|
||||
"times_one": "{{count}} time",
|
||||
"times_other": "{{count}} times",
|
||||
"topWins": "Top Wins"
|
||||
"topWins": "Top Wins",
|
||||
"loadError": "Failed to load statistics",
|
||||
"empty": "No spins yet"
|
||||
}
|
||||
},
|
||||
"broadcasts": {
|
||||
|
||||
@@ -1432,7 +1432,8 @@
|
||||
"promoPrefix": "پیشوند کد تخفیف",
|
||||
"spinCost": "هزینه چرخش",
|
||||
"limitsAndRtp": "محدودیتها و RTP",
|
||||
"promocodes": "کدهای تخفیف"
|
||||
"promocodes": "کدهای تخفیف",
|
||||
"promoValidityDays": "اعتبار کد تخفیف (روز)"
|
||||
},
|
||||
"starsNotEnabledGlobally": "پرداخت با ستاره در روشهای پرداخت فعال نیست. «Telegram Stars» را در بخش «روشهای پرداخت» فعال کنید.",
|
||||
"prizes": {
|
||||
@@ -1459,7 +1460,9 @@
|
||||
"emoji": "ایموجی",
|
||||
"color": "رنگ",
|
||||
"active": "فعال",
|
||||
"worth": "ارزش"
|
||||
"worth": "ارزش",
|
||||
"probability": "احتمال دستی (۰–۱)",
|
||||
"probabilityHint": "خالی = خودکار بر اساس RTP"
|
||||
},
|
||||
"promo": {
|
||||
"title": "تنظیمات کد تخفیف",
|
||||
@@ -1476,7 +1479,9 @@
|
||||
"prizeDistribution": "توزیع جوایز",
|
||||
"times": "بار",
|
||||
"times_other": "{{count}} بار",
|
||||
"topWins": "برترین برندهها"
|
||||
"topWins": "برترین برندهها",
|
||||
"loadError": "بارگذاری آمار ناموفق بود",
|
||||
"empty": "هنوز چرخشی انجام نشده"
|
||||
}
|
||||
},
|
||||
"broadcasts": {
|
||||
|
||||
@@ -1782,7 +1782,8 @@
|
||||
"dailyLimit": "Дневной лимит вращений (0 = безлимит)",
|
||||
"minSubDays": "Мин. дней подписки для оплаты днями",
|
||||
"promocodes": "Промокоды",
|
||||
"promoPrefix": "Префикс промокодов"
|
||||
"promoPrefix": "Префикс промокодов",
|
||||
"promoValidityDays": "Срок действия промокода (дней)"
|
||||
},
|
||||
"starsNotEnabledGlobally": "Оплата звёздами не включена в платёжных методах. Включите метод «Telegram Stars» в разделе «Платёжные методы».",
|
||||
"prizes": {
|
||||
@@ -1809,7 +1810,9 @@
|
||||
"emoji": "Эмодзи",
|
||||
"color": "Цвет",
|
||||
"active": "Активен",
|
||||
"worth": "Стоимость"
|
||||
"worth": "Стоимость",
|
||||
"probability": "Ручная вероятность (0–1)",
|
||||
"probabilityHint": "Пусто — авто по RTP"
|
||||
},
|
||||
"promo": {
|
||||
"title": "Настройки промокода",
|
||||
@@ -1828,7 +1831,9 @@
|
||||
"times_one": "{{count}} раз",
|
||||
"times_few": "{{count}} раза",
|
||||
"times_many": "{{count}} раз",
|
||||
"topWins": "Топ выигрышей"
|
||||
"topWins": "Топ выигрышей",
|
||||
"loadError": "Не удалось загрузить статистику",
|
||||
"empty": "Пока нет вращений"
|
||||
}
|
||||
},
|
||||
"broadcasts": {
|
||||
|
||||
@@ -1509,7 +1509,8 @@
|
||||
"promoPrefix": "优惠码前缀",
|
||||
"spinCost": "旋转费用",
|
||||
"limitsAndRtp": "限制和RTP",
|
||||
"promocodes": "促销码"
|
||||
"promocodes": "促销码",
|
||||
"promoValidityDays": "促销码有效期(天)"
|
||||
},
|
||||
"starsNotEnabledGlobally": "星星支付未在支付方式中启用。请在「支付方式」中启用「Telegram Stars」。",
|
||||
"prizes": {
|
||||
@@ -1536,7 +1537,9 @@
|
||||
"emoji": "表情",
|
||||
"color": "颜色",
|
||||
"active": "启用",
|
||||
"worth": "价值"
|
||||
"worth": "价值",
|
||||
"probability": "手动概率 (0–1)",
|
||||
"probabilityHint": "留空 = 按 RTP 自动"
|
||||
},
|
||||
"promo": {
|
||||
"title": "优惠码设置",
|
||||
@@ -1553,7 +1556,9 @@
|
||||
"prizeDistribution": "奖品分布",
|
||||
"times": "次",
|
||||
"times_other": "{{count}} 次",
|
||||
"topWins": "最高奖品"
|
||||
"topWins": "最高奖品",
|
||||
"loadError": "无法加载统计数据",
|
||||
"empty": "暂无抽奖记录"
|
||||
}
|
||||
},
|
||||
"broadcasts": {
|
||||
|
||||
Reference in New Issue
Block a user