diff --git a/app/Livewire/Admin/Index.php b/app/Livewire/Admin/Index.php index 60bd6f5ea..b72bc8e35 100644 --- a/app/Livewire/Admin/Index.php +++ b/app/Livewire/Admin/Index.php @@ -8,7 +8,31 @@ use Livewire\Component; class Index extends Component { - public $users = []; + public $active_subscribers = []; + public $inactive_subscribers = []; + public $search = ''; + public function submitSearch() { + if ($this->search !== "") { + $this->inactive_subscribers = User::whereDoesntHave('teams', function ($query) { + $query->whereRelation('subscription', 'stripe_subscription_id', '!=', null); + })->where(function ($query) { + $query->where('name', 'like', "%{$this->search}%") + ->orWhere('email', 'like', "%{$this->search}%"); + })->get()->filter(function ($user) { + return $user->id !== 0; + }); + $this->active_subscribers = User::whereHas('teams', function ($query) { + $query->whereRelation('subscription', 'stripe_subscription_id', '!=', null); + })->where(function ($query) { + $query->where('name', 'like', "%{$this->search}%") + ->orWhere('email', 'like', "%{$this->search}%"); + })->get()->filter(function ($user) { + return $user->id !== 0; + }); + } else { + $this->getSubscribers(); + } + } public function mount() { if (!isCloud()) { @@ -17,7 +41,15 @@ class Index extends Component if (auth()->user()->id !== 0) { return redirect()->route('dashboard'); } - $this->users = User::whereHas('teams', function ($query) { + $this->getSubscribers(); + } + public function getSubscribers() { + $this->inactive_subscribers = User::whereDoesntHave('teams', function ($query) { + $query->whereRelation('subscription', 'stripe_subscription_id', '!=', null); + })->get()->filter(function ($user) { + return $user->id !== 0; + }); + $this->active_subscribers = User::whereHas('teams', function ($query) { $query->whereRelation('subscription', 'stripe_subscription_id', '!=', null); })->get()->filter(function ($user) { return $user->id !== 0; diff --git a/resources/views/livewire/admin/index.blade.php b/resources/views/livewire/admin/index.blade.php index 5964097c6..99abdf0e5 100644 --- a/resources/views/livewire/admin/index.blade.php +++ b/resources/views/livewire/admin/index.blade.php @@ -1,17 +1,31 @@
{{ $user->name }}
{{ $user->email }}
No active subscribers
+ @endforelse +{{ $user->name }}
+{{ $user->email }}
+No inactive subscribers
+ @endforelse