mivita/app/Http/Middleware/Subdomain.php
2019-11-23 15:02:41 +01:00

53 lines
1.7 KiB
PHP
Executable file

<?php
namespace App\Http\Middleware;
use App\Models\UserShop;
use App\Services\Util;
use Closure;
use Auth;
use Config;
use phpDocumentor\Reflection\DocBlock\Tags\Uses;
class Subdomain
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$tld = config('app.tld_care');
if(!empty($request->route('subdomain'))){
$user_shop = UserShop::where('slug', $request->route('subdomain'))->where('active', 1)->first();
$request->route()->forgetParameter('subdomain');
Util::setPostRoute('user/');
if($user_shop){
\Session::put('user_shop', $user_shop);
\Session::put('user_shop_domain', config('app.protocol').$user_shop->slug.".".config('app.domain').config('app.tld_care'));
Config::set('app.url', $user_shop->slug.".".config('app.domain').config('app.tld_care'));
return $next($request);
}
}else{
$tld = config('app.tld_shop');
$user_shop = UserShop::where('slug', 'aloevera')->where('active', 1)->first();
//$request->route()->forgetParameter('subdomain');
Util::setPostRoute('user/');
if($user_shop){
\Session::put('user_shop', $user_shop);
\Session::put('user_shop_domain', config('app.protocol').config('app.domain').config('app.tld_shop'));
Config::set('app.url', config('app.domain').config('app.tld_shop'));
return $next($request);
}
}
return redirect(config('app.url'). $tld);
}
}