From 407eb183b7b53f98429f07647af27498f4617120 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20=C5=A0tancl?= Date: Mon, 14 Oct 2019 20:10:59 +0200 Subject: [PATCH] Fix globalUrl binding --- src/TenancyServiceProvider.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/TenancyServiceProvider.php b/src/TenancyServiceProvider.php index dd796fd8..28f7cec3 100644 --- a/src/TenancyServiceProvider.php +++ b/src/TenancyServiceProvider.php @@ -82,14 +82,24 @@ class TenancyServiceProvider extends ServiceProvider $this->app->make(Kernel::class)->prependMiddleware(Middleware\InitializeTenancy::class); + + /** + * Since tenancy is initialized in the global middleware stack, this + * middleware group acts mostly as a 'flag' for the PreventAccess + * middleware to decide whether the request should be aborted. + */ Route::middlewareGroup('tenancy', [ /* Prevent access from tenant domains to central routes and vice versa. */ Middleware\PreventAccessFromTenantDomains::class, ]); $this->app->singleton('globalUrl', function ($app) { - $instance = clone $app['url']; - $instance->setAssetRoot($app[FilesystemTenancyBootstrapper::class]->originalPaths['asset_url']); + if ($app->bound(FilesystemTenancyBootstrapper::class)) { + $instance = clone $app['url']; + $instance->setAssetRoot($app[FilesystemTenancyBootstrapper::class]->originalPaths['asset_url']); + } else { + $instance = $app['url']; + } return $instance; });