Session handling with custom domains

This commit is contained in:
David Bomba 2022-01-15 15:58:33 +11:00
parent 3af749bdb0
commit 693d84b243
3 changed files with 43 additions and 0 deletions

View File

@ -28,6 +28,7 @@ use App\Http\Middleware\PasswordProtection;
use App\Http\Middleware\PhantomSecret;
use App\Http\Middleware\QueryLogging;
use App\Http\Middleware\RedirectIfAuthenticated;
use App\Http\Middleware\SessionDomains;
use App\Http\Middleware\SetDb;
use App\Http\Middleware\SetDbByCompanyKey;
use App\Http\Middleware\SetDocumentDb;
@ -103,6 +104,7 @@ class Kernel extends HttpKernel
'query_logging',
],
'client' => [
SessionDomains::class,
EncryptCookies::class,
AddQueuedCookiesToResponse::class,
StartSession::class,
@ -165,6 +167,7 @@ class Kernel extends HttpKernel
protected $middlewarePriority = [
SessionDomains::class,
Cors::class,
SetDomainNameDb::class,
SetDb::class,

View File

@ -0,0 +1,38 @@
<?php
/**
* Invoice Ninja (https://invoiceninja.com).
*
* @link https://github.com/invoiceninja/invoiceninja source repository
*
* @copyright Copyright (c) 2021. Invoice Ninja LLC (https://invoiceninja.com)
*
* @license https://www.elastic.co/licensing/elastic-license
*/
namespace App\Http\Middleware;
use App\Utils\Ninja;
use Closure;
use Illuminate\Http\Request;
class SessionDomains
{
/**
* Handle an incoming request.
*
* @param Request $request
* @param Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if(Ninja::isSelfHost())
return $next($request);
config(['session.domain' => '.' . $request->getHost()]);
return $next($request);
}
}

View File

@ -49,6 +49,8 @@ class ImportCompleted extends Mailable
{
App::forgetInstance('translator');
App::setLocale($this->company->getLocale());
$t = app('translator');
$t->replace(Ninja::transformTranslations($this->company->settings));