Files
Gw0bm/app/Http/Middleware/Theme.php

33 lines
837 B
PHP

<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Contracts\Auth\Guard;
use Illuminate\Contracts\View\Factory;
class Theme
{
protected $auth;
protected $view;
public function __construct(Guard $auth, Factory $view)
{
$this->auth = $auth;
$this->view = $view;
}
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$paths = $this->view->getFinder()->getPaths();
foreach ($paths as &$p) {
$p .= "/layout" . (auth()->check() ? auth()->user()->layout : 1);
}
$this->view->setFinder(new \Illuminate\View\FileViewFinder($this->view->getFinder()->getFilesystem(), $paths));
return $next($request);
}
}