$links */ $links = config('projectsend.links'); $resolved = [ 'website' => $this->website(), 'source' => $links['source'] ?? '', 'discord' => $links['discord'] ?? '', ]; // Omitted rather than hidden by the page, so a surface added later // cannot ask a paying customer for a donation by forgetting to // check. if (! $this->managed()) { $resolved['open_collective'] = $links['open_collective'] ?? ''; } return $resolved; } public function website(): string { /** @var array $links */ $links = config('projectsend.links'); return $this->managed() ? ($links['website_cloud'] ?? $links['website']) : $links['website']; } private function managed(): bool { return $this->capabilities->edition() === Edition::Cloud; } }