Team Role Middleware For Laravel Spark
Makes it simple to use Spark's role feature on routes
Route::group(['middleware'=>'role:owner'], function(){
// owners only
});
Route::group(['middleware'=>'role:member'], function(){
// members only
});
Run php artisan make:middleware RoleMiddleware
Copy the following to the newly created file
Open Http\kernel.php
Find $routeMiddleware
Add 'role' => \App\Http\Middleware\RoleMiddleware::class,
<?php
namespace App\Http\Middleware;
use Closure;
class RoleMiddleware
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @param string $role
* @return mixed
*/
public function handle($request, Closure $next, $role)
{
if ($request->user()->roleOn($request->user()->currentTeam) != $role)
{
return redirect('/home');
}
return $next($request);
}
}
Made by: @dillinghamio Find More Awesome Spark Stuff Here
Hey there! So after my experiences modifying the
@role
directive, I decided that'd be cool to have the possibility to pass multiple roles to check with this middleware also! ;-)So, to be able to use:
I modified the handle() method of the RoleMiddleware as such:
What do you tihnk?