mirror of
https://github.com/chillpadclub/bedolaga-cabinet.git
synced 2026-07-28 17:43:47 +00:00
fix: complete is_limited status handling across all views
- SubscriptionListCard: show traffic progress bar for limited subs in multi-tariff list (was hidden because isActive excluded limited) - SubscriptionListCard: amber border/background for limited status cards (was using default neutral style, inconsistent with rest of UI) - Subscription page: hide delete button for limited subs in multi-tariff mode (limited subs still have valid days remaining) - SubscriptionPurchase: allow tariff switch for limited subs (was blocked by is_active-only gate in canSwitch formula) - AdminUserDetail: include limited status in "already purchased" tariff filter to prevent duplicate subscription creation
This commit is contained in:
@@ -82,7 +82,10 @@ export default function SubscriptionListCard({
|
||||
};
|
||||
|
||||
const isTrial = subscription.is_trial;
|
||||
const isActive = subscription.status === 'active' || subscription.status === 'trial';
|
||||
const isActive =
|
||||
subscription.status === 'active' ||
|
||||
subscription.status === 'trial' ||
|
||||
subscription.status === 'limited';
|
||||
const isExpired = subscription.status === 'expired' || subscription.status === 'disabled';
|
||||
const trafficLimit = subscription.traffic_limit_gb;
|
||||
const trafficUsed = subscription.traffic_used_gb;
|
||||
@@ -95,21 +98,25 @@ export default function SubscriptionListCard({
|
||||
const trafficColor =
|
||||
trafficPercent >= 90 ? 'bg-red-400' : trafficPercent >= 70 ? 'bg-amber-400' : 'bg-emerald-400';
|
||||
|
||||
const borderColor = isTrial
|
||||
? 'rgba(251,191,36,0.2)'
|
||||
: isExpired
|
||||
? 'rgba(255,59,92,0.15)'
|
||||
: g.cardBorder;
|
||||
const isLimitedStatus = subscription.status === 'limited';
|
||||
|
||||
const bgColor = isTrial
|
||||
? isDark
|
||||
? 'rgba(251,191,36,0.04)'
|
||||
: 'rgba(251,191,36,0.03)'
|
||||
: isExpired
|
||||
const borderColor =
|
||||
isTrial || isLimitedStatus
|
||||
? 'rgba(251,191,36,0.2)'
|
||||
: isExpired
|
||||
? 'rgba(255,59,92,0.15)'
|
||||
: g.cardBorder;
|
||||
|
||||
const bgColor =
|
||||
isTrial || isLimitedStatus
|
||||
? isDark
|
||||
? 'rgba(255,59,92,0.04)'
|
||||
: 'rgba(255,59,92,0.03)'
|
||||
: g.cardBg;
|
||||
? 'rgba(251,191,36,0.04)'
|
||||
: 'rgba(251,191,36,0.03)'
|
||||
: isExpired
|
||||
? isDark
|
||||
? 'rgba(255,59,92,0.04)'
|
||||
: 'rgba(255,59,92,0.03)'
|
||||
: g.cardBg;
|
||||
|
||||
return (
|
||||
<button
|
||||
|
||||
Reference in New Issue
Block a user