Merge pull request #7507 from CirkaN/Cirkovic/INA-7

INA-7 | Add Vendor guard
This commit is contained in:
David Bomba 2022-06-12 17:13:26 +10:00 committed by GitHub
commit 7658c66953
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 63 additions and 20 deletions

View File

@ -20,32 +20,38 @@ class RedirectIfAuthenticated
/** /**
* Handle an incoming request. * Handle an incoming request.
* *
* @param Request $request * @param Request $request
* @param Closure $next * @param Closure $next
* @param string|null $guard * @param string|null $guard
* @return mixed * @return mixed
*/ */
public function handle($request, Closure $next, $guard = null) public function handle($request, Closure $next, $guard = null)
{ {
switch ($guard) { switch ($guard) {
case 'contact': case 'contact':
if (Auth::guard($guard)->check()) { if (Auth::guard($guard)->check()) {
return redirect()->route('client.dashboard'); return redirect()->route('client.dashboard');
} }
break; break;
case 'user': case 'user':
Auth::logout(); Auth::logout();
// if (Auth::guard($guard)->check()) { // if (Auth::guard($guard)->check()) {
// return redirect()->route('dashboard.index'); // return redirect()->route('dashboard.index');
// } // }
break; break;
default: case 'vendor':
Auth::logout(); if (Auth::guard($guard)->check()) {
// if (Auth::guard($guard)->check()) { //TODO create routes for vendor
// return redirect('/'); // return redirect()->route('vendor.dashboard');
// } }
break; break;
} default:
Auth::logout();
// if (Auth::guard($guard)->check()) {
// return redirect('/');
// }
break;
}
return $next($request); return $next($request);
} }

View File

@ -121,4 +121,12 @@ class RouteServiceProvider extends ServiceProvider
->namespace($this->namespace) ->namespace($this->namespace)
->group(base_path('routes/shop.php')); ->group(base_path('routes/shop.php'));
} }
protected function mapVendorsApiRoutes()
{
Route::prefix('')
->middleware('vendor')
->namespace($this->namespace)
->group(base_path('routes/vendor.php'));
}
} }

View File

@ -56,6 +56,10 @@ return [
'driver' => 'session', 'driver' => 'session',
'provider' => 'contacts', 'provider' => 'contacts',
], ],
'vendor' => [
'driver' => 'session',
'provider' => 'vendors',
],
], ],
/* /*
@ -85,6 +89,11 @@ return [
'driver' => 'eloquent', 'driver' => 'eloquent',
'model' => App\Models\ClientContact::class, 'model' => App\Models\ClientContact::class,
], ],
'vendors' => [
'driver' => 'eloquent',
'model' => App\Models\VendorContact::class,
],
// 'users' => [ // 'users' => [
// 'driver' => 'database', // 'driver' => 'database',
@ -120,6 +129,11 @@ return [
'table' => 'password_resets', 'table' => 'password_resets',
'expire' => 60, 'expire' => 60,
], ],
'vendors' => [
'provider' => 'vendors',
'table' => 'password_resets',
'expire' => 60,
],
], ],
/* /*

15
routes/vendor.php Normal file
View File

@ -0,0 +1,15 @@
<?php
/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/