From 6d12e629b88f25acd516c04ea75a6ac92a82935f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20=C5=A0tancl?= Date: Fri, 27 Sep 2019 21:01:31 +0200 Subject: [PATCH] Add unsetTenantConfig --- src/Features/TenantConfig.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/Features/TenantConfig.php b/src/Features/TenantConfig.php index 0829a1e4..1c69ffc1 100644 --- a/src/Features/TenantConfig.php +++ b/src/Features/TenantConfig.php @@ -14,9 +14,16 @@ class TenantConfig implements Feature /** @var Application */ protected $app; + /** @var array */ + public $originalConfig = []; + public function __construct(Application $app) { $this->app = $app; + + foreach ($this->getStorageToConfigMap() as $configKey) { + $this->originalConfig[$configKey] = $this->app['config'][$configKey]; + } } public function bootstrap(TenantManager $tenantManager): void @@ -32,11 +39,18 @@ class TenantConfig implements Feature public function setTenantConfig(Tenant $tenant): void { - foreach($this->getStorageToConfigMap() as $storageKey => $configKey) { + foreach ($this->getStorageToConfigMap() as $storageKey => $configKey) { $this->app['config'][$configKey] = $tenant->get($storageKey); } } + public function unsetTenantConfig(): void + { + foreach ($this->getStorageToConfigMap() as $configKey) { + $this->app['config'][$configKey] = $this->originalConfig[$configKey]; + } + } + public function getStorageToConfigMap(): array { return $this->app['config']['tenancy.storage_to_config_map'] ?? [];