HelloCSE/app/Http/Middleware/CheckDaUser.php
2024-04-10 13:56:22 +02:00

52 lignes
1,4 Kio
PHP

<?php
namespace App\Http\Middleware;
use Closure;
// use Illuminate\Http\Response;
use Illuminate\Support\Facades\DB;
use App\Http\Controllers\Core\Users;
use App\Http\Utility\debug;
class CheckDaUser {
public function __construct(){}
// gestion de la requête
public function handle($request, Closure $next){
$user=false;
// Si l'utilisateur tente de se connecter
if ($request->header('PHP_AUTH_USER', null) && $request->header('PHP_AUTH_PW', null)){
$login = $request->header('PHP_AUTH_USER');
$password = $request->header('PHP_AUTH_PW');
$user=Users::checkForUserExists($login,$password);
}
// retour pour utilisateur qui essaye de se connecter avec des mauvais/inexistant accès
if($request->header('PHP_AUTH_USER', null) && $request->header('PHP_AUTH_PW', null) && $user===false){
return response()->json([
'status' => 0,
'msg' => 'Utilisateur inexistant'
]);
}
$userId=0; // utilisateur non connecté
$isAdmin=false;
$isAuth=false;
if($user){
$userId=$user['id'];
$isAdmin=intval($user['isadmin'])?true:false;
$isAuth=true;
}
session()->put('user', [
'id'=>$userId,
'isAdmin'=>$isAdmin,
'isAuth'=>$isAuth,
]);
return $next($request);
}
}