Fix active status not showing immediatly (livewire)

This commit is contained in:
2026-05-05 16:02:00 +02:00
parent de6efb877c
commit 62647be75c
2 changed files with 5 additions and 4 deletions

View File

@@ -2,6 +2,7 @@
namespace App\Livewire; namespace App\Livewire;
use App\Enums\UserRole;
use App\Models\User; use App\Models\User;
use App\Services\SubscriptionService; use App\Services\SubscriptionService;
use Livewire\Component; use Livewire\Component;
@@ -14,6 +15,8 @@ class UserSubscription extends Component
public $subscriptionKey = ''; public $subscriptionKey = '';
public $isActive = false;
protected $rules = [ protected $rules = [
'subscriptionKey' => 'required|string|size:48', 'subscriptionKey' => 'required|string|size:48',
]; ];
@@ -22,6 +25,7 @@ class UserSubscription extends Component
{ {
$this->userId = $user ? $user->id : auth()->user()->id; $this->userId = $user ? $user->id : auth()->user()->id;
$this->subscriptionKey = $user->subscription_key ?? ''; $this->subscriptionKey = $user->subscription_key ?? '';
$this->isActive = $user->hasRole(UserRole::SUPPORTER) ?? false;
} }
public function applyKey(SubscriptionService $subscriptionService) public function applyKey(SubscriptionService $subscriptionService)
@@ -61,6 +65,7 @@ class UserSubscription extends Component
$user->subscription_key = $this->subscriptionKey; $user->subscription_key = $this->subscriptionKey;
$user->save(); $user->save();
$this->isActive = true;
} }
public function render() public function render()

View File

@@ -10,10 +10,6 @@
</p> </p>
</div> </div>
@php
$isActive = auth()->user()->hasRole(\App\Enums\UserRole::SUPPORTER);
@endphp
<span class="inline-flex items-center gap-2 rounded-full px-3 py-1 text-sm font-medium border <span class="inline-flex items-center gap-2 rounded-full px-3 py-1 text-sm font-medium border
{{ $isActive ? 'bg-green-500/10 text-green-300 border-green-500/20' : 'bg-red-500/10 text-red-300 border-red-500/20' }}"> {{ $isActive ? 'bg-green-500/10 text-green-300 border-green-500/20' : 'bg-red-500/10 text-red-300 border-red-500/20' }}">
<span class="h-2 w-2 rounded-full {{ $isActive ? 'bg-green-400' : 'bg-red-400' }}"></span> <span class="h-2 w-2 rounded-full {{ $isActive ? 'bg-green-400' : 'bg-red-400' }}"></span>