addMinutes(30), fn () => WebsitePermission::all()->pluck('min_rank', 'permission')); $this->permissions = Cache::get('website_permissions'); } public function getOrDefault(string $permissionName, bool $default = false): bool { if (! array_key_exists($permissionName, $this->permissions->toArray())) { return $default; } return auth()->check() && auth()->user()->rank >= (int) $this->permissions->get($permissionName); } }