<?php

namespace App\Http\Middleware;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Closure;

/**
 * Enable us to use the role during middleware authorisation
 */
class Role
{
	public function handle(Request $request, Closure $next, string $role)
	{
		if ($role AND ! Auth::user())
			abort(403,'Not Authenticated');

		switch ($role) {
			case 'wholesaler':
				if (Auth::user()->role() == $role)
					return $next($request);

				break;

			case 'reseller':
				if (in_array(Auth::user()->role(),['wholesaler','reseller']))
					return $next($request);

				break;
		}

		abort(404,'User doesnt have role?');
	}
}