32 lines
776 B
PHP

<?php declare(strict_types=1);
namespace App\Enums\Site;
use App\Models\Project;
use App\Models\ProjectLanguage;
enum ProjectSection
{
case Home;
public function url(Project $project, ?ProjectLanguage $language = null): string
{
$parameters = [];
$prefixProject = '';
if ($project->http_host === null) {
$prefixProject = 'project.';
$parameters['project'] = $project->code;
}
$prefixLanguage = '';
if ($language?->is_default === false) {
$parameters['language'] = $language->code;
$prefixLanguage = '-language';
}
return match ($this) {
self::Home => \route($prefixProject . 'home' . $prefixLanguage, $parameters),
};
}
}