Files
vito/app/Actions/Site/UpdateAliases.php
Saeed Vaziry 131b828807 Plugins base (#613)
* wip

* wip

* cleanup

* notification channels

* phpstan

* services

* remove server types

* refactoring

* refactoring
2025-06-14 14:35:18 +02:00

43 lines
862 B
PHP

<?php
namespace App\Actions\Site;
use App\Models\Service;
use App\Models\Site;
use App\Services\Webserver\Webserver;
use App\ValidationRules\DomainRule;
class UpdateAliases
{
/**
* @param array<string, mixed> $input
*/
public function update(Site $site, array $input): void
{
$site->aliases = $input['aliases'] ?? [];
/** @var Service $service */
$service = $site->server->webserver();
/** @var Webserver $webserver */
$webserver = $service->handler();
$webserver->updateVHost($site, regenerate: [
'core',
]);
$site->save();
}
/**
* @return array<string, array<int, mixed>>
*/
public static function rules(): array
{
return [
'aliases.*' => [
new DomainRule,
],
];
}
}