user(); /** @var Member|null $member */ $member = Member::query()->whereBelongsTo($organization, 'organization')->whereBelongsTo($user, 'user')->first(); if ($member === null) { Log::error('This function should only be called in authenticated context after checking the user is a member of the organization', [ 'user' => $user->getKey(), 'organization' => $organization->getKey(), ]); throw new AuthorizationException; } return $member; } /** * @throws AuthorizationException */ protected function currentOrganization(): Organization { $user = $this->user(); $organization = $user->currentTeam; if ($organization === null) { $organization = $user->organizations()->first(); } return $organization; } }