phase 2 dev

This commit is contained in:
Kevin Adametz 2026-04-22 16:01:27 +02:00
parent 5a7478907e
commit ba48745809
59 changed files with 2692 additions and 1994 deletions

View file

@ -11,7 +11,7 @@ class MailDirService
{
private static array $outputDirs = [];
public static function setOutputDir(string $dir, string $subdir): void
public static function setOutputDir(string $dir, ?string $subdir): void
{
self::$outputDirs[$dir][] = $subdir;
}
@ -29,7 +29,7 @@ class MailDirService
return CMSContent::where('identifier', '=', 'customer-mail-dirs')->where('pos', '=', $id)->first();
}
public static function getCustomerMailName(CMSContent $mailDir, int $mailDirId): string
public static function getCustomerMailName(CMSContent $mailDir, ?int $mailDirId): string
{
$model = self::resolveModel($mailDir, $mailDirId);
@ -47,7 +47,7 @@ class MailDirService
/**
* @return array<string>|string
*/
public static function getCustomerMailEmails(CMSContent $mailDir, int $mailDirId): array|string
public static function getCustomerMailEmails(CMSContent $mailDir, ?int $mailDirId): array|string
{
$model = self::resolveModel($mailDir, $mailDirId);
@ -79,8 +79,11 @@ class MailDirService
return $result;
}
private static function resolveModel(CMSContent $mailDir, int $mailDirId): mixed
private static function resolveModel(CMSContent $mailDir, ?int $mailDirId): mixed
{
if ($mailDirId === null) {
return null;
}
return match ($mailDir->getArrayContent('model')) {
'TravelCountry' => \App\Models\Sym\TravelCountry::find($mailDirId),
'Airline' => Airline::find($mailDirId),