feat: ajout documentation PHPDoc et maj slides bloc 3
This commit is contained in:
Binary file not shown.
@@ -12,6 +12,15 @@ use Tymon\JWTAuth\Facades\JWTAuth;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
/**
|
||||
* Inscription d'un nouvel utilisateur.
|
||||
*
|
||||
* Assigne automatiquement le rôle "membre", enregistre le consentement RGPD,
|
||||
* crée un tracker par défaut et génère le token JWT.
|
||||
*
|
||||
* @param RegisterRequest $request
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function register(RegisterRequest $request): JsonResponse
|
||||
{
|
||||
$role = Role::where('nom', 'membre')->first();
|
||||
@@ -40,6 +49,15 @@ class AuthController extends Controller
|
||||
], 201);
|
||||
}
|
||||
|
||||
/**
|
||||
* Authentification d'un utilisateur existant.
|
||||
*
|
||||
* Vérifie les identifiants, le statut actif du compte et génère un token JWT.
|
||||
* Renvoie une erreur 403 si le compte est désactivé/anonymisé.
|
||||
*
|
||||
* @param LoginRequest $request
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function login(LoginRequest $request): JsonResponse
|
||||
{
|
||||
$credentials = $request->only('email', 'password');
|
||||
|
||||
@@ -59,7 +59,12 @@ class ProfilController extends Controller
|
||||
]);
|
||||
}
|
||||
|
||||
// RGPD — Article 20 : droit à la portabilité des données
|
||||
/**
|
||||
* RGPD — Article 20 : droit à la portabilité des données.
|
||||
* Exporte toutes les données liées à l'utilisateur au format JSON.
|
||||
*
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function export(): JsonResponse
|
||||
{
|
||||
$utilisateur = auth()->user();
|
||||
@@ -93,7 +98,13 @@ class ProfilController extends Controller
|
||||
->header('Content-Disposition', 'attachment; filename="cesizen-export-'.$utilisateur->id.'.json"');
|
||||
}
|
||||
|
||||
// RGPD — Article 17 : alternative à la suppression définitive — anonymisation
|
||||
/**
|
||||
* RGPD — Article 17 : droit à l'effacement.
|
||||
* Alternative à la suppression définitive : anonymise le compte pour conserver
|
||||
* les statistiques globales sans conserver d'informations personnellement identifiables.
|
||||
*
|
||||
* @return JsonResponse
|
||||
*/
|
||||
public function anonymiser(): JsonResponse
|
||||
{
|
||||
$utilisateur = auth()->user();
|
||||
|
||||
Reference in New Issue
Block a user