2018-10-15 12:02:16 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace App\Http\Middleware;
|
|
|
|
|
2022-03-19 13:54:32 +00:00
|
|
|
use App\User;
|
2018-10-15 12:02:16 +00:00
|
|
|
use Closure;
|
|
|
|
use Illuminate\Support\Facades\Auth;
|
|
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
use Session;
|
|
|
|
|
|
|
|
class CheckAllowed
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* Handle an incoming request.
|
|
|
|
*
|
|
|
|
* @param \Illuminate\Http\Request $request
|
|
|
|
* @param \Closure $next
|
|
|
|
* @return mixed
|
|
|
|
*/
|
|
|
|
public function handle($request, Closure $next)
|
|
|
|
{
|
|
|
|
$route = Route::currentRouteName();
|
|
|
|
$current_user = User::currentUser();
|
|
|
|
|
2022-03-19 13:54:32 +00:00
|
|
|
if (str_is('users*', $route)) {
|
2022-11-14 12:21:47 +00:00
|
|
|
if ($current_user->getId() !== 1) {
|
2018-10-15 12:02:16 +00:00
|
|
|
return redirect()->route('dash');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-03-19 13:54:32 +00:00
|
|
|
if ($route == 'dash') {
|
2018-10-15 13:35:14 +00:00
|
|
|
//print_r(User::all());
|
|
|
|
//die("here".var_dump($current_user->password));
|
2022-03-19 13:54:32 +00:00
|
|
|
if ((bool) $current_user->public_front === true) {
|
|
|
|
return $next($request);
|
|
|
|
}
|
2018-10-15 12:02:16 +00:00
|
|
|
}
|
|
|
|
|
2022-03-19 13:54:32 +00:00
|
|
|
if (empty($current_user->password)) {
|
|
|
|
return $next($request);
|
|
|
|
}
|
2018-10-15 12:02:16 +00:00
|
|
|
|
|
|
|
// Check if user is logged in as $current_user
|
|
|
|
if (Auth::check()) {
|
|
|
|
$loggedin_user = Auth::user();
|
2022-11-14 12:21:47 +00:00
|
|
|
if ($loggedin_user->id === $current_user->getId()) {
|
2022-03-19 13:54:32 +00:00
|
|
|
return $next($request);
|
|
|
|
}
|
2018-10-15 12:02:16 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
return Auth::authenticate();
|
|
|
|
}
|
|
|
|
}
|