diff --git a/assets/TenancyServiceProvider.stub.php b/assets/TenancyServiceProvider.stub.php index 75784361..7c52e295 100644 --- a/assets/TenancyServiceProvider.stub.php +++ b/assets/TenancyServiceProvider.stub.php @@ -58,6 +58,8 @@ class TenancyServiceProvider extends ServiceProvider return $event->tenant; })->shouldBeQueued(false), // `false` by default, but you probably want to make this `true` for production. ], + Events\TenantMaintenanceModeEnabled::class => [], + Events\TenantMaintenanceModeDisabled::class => [], // Domain events Events\CreatingDomain::class => [], diff --git a/src/Database/Concerns/MaintenanceMode.php b/src/Database/Concerns/MaintenanceMode.php index 87a9303b..383ae4c4 100644 --- a/src/Database/Concerns/MaintenanceMode.php +++ b/src/Database/Concerns/MaintenanceMode.php @@ -5,6 +5,8 @@ declare(strict_types=1); namespace Stancl\Tenancy\Database\Concerns; use Illuminate\Contracts\Container\BindingResolutionException; +use Stancl\Tenancy\Events\TenantMaintenanceModeDisabled; +use Stancl\Tenancy\Events\TenantMaintenanceModeEnabled; use Stancl\Tenancy\Maintenance\TenantMaintenanceModeContract; /** @@ -33,6 +35,8 @@ trait MaintenanceMode public function putDownForMaintenance(array $payload = []): void { $this->maintenanceMode()->activate($payload); + + event(new TenantMaintenanceModeEnabled($this)); } /** @@ -44,6 +48,8 @@ trait MaintenanceMode public function bringUpFromMaintenance(): void { $this->maintenanceMode()->deactivate(); + + event(new TenantMaintenanceModeDisabled($this)); } /** diff --git a/src/Events/TenantMaintenanceModeDisabled.php b/src/Events/TenantMaintenanceModeDisabled.php new file mode 100644 index 00000000..17f39c5d --- /dev/null +++ b/src/Events/TenantMaintenanceModeDisabled.php @@ -0,0 +1,9 @@ +