From fec738df9ff7fd9696ed1e8682e3bf70687c60ae Mon Sep 17 00:00:00 2001 From: Azmog <80716388+AzmogEx@users.noreply.github.com> Date: Thu, 3 Sep 2026 10:07:32 +0200 Subject: [PATCH] feat: ajout documentation PHPDoc et maj slides bloc 3 --- CESIZen_Soutenance_Bloc3.pptx | Bin 367585 -> 367585 bytes .../app/Http/Controllers/AuthController.php | 18 ++++++++++++++++++ .../app/Http/Controllers/ProfilController.php | 15 +++++++++++++-- 3 files changed, 31 insertions(+), 2 deletions(-) diff --git a/CESIZen_Soutenance_Bloc3.pptx b/CESIZen_Soutenance_Bloc3.pptx index ae38a246ec3d15ba2cb24904eb4b3ae4be1c9013..4f550fd0e6b478485150f03890b0a53364cb5a70 100644 GIT binary patch delta 1661 zcmY+CYe*DP6vt<0=ag=_V!4KvMpp3^L5iEloAKTHcJql$|yq_)bqzk0Ma7A27CU1-EV~w;q0U4rby||v1;SQx(4}r{Pl*H8*eVUJ zrd@i{a#hV|uchU$Yv%;ZWPgjlQ{Kh_Hb;s~w)>#2um-EjC8HuF9_HWlBfcEm1^*mZ>;l~c(}OZa1| zmgL!P9<%bfJ^XngY+^4-ug3W2{=e=K`Cd?`*z~yKE;r z%Xw4%7Ly=vF~Q}0g_eq$<757bq05M+0%pkOy)cR0#RfldqPYSRXtCfBD`p;stwE=m z3?2u1jP5Ep%?@Y-GpY7~f!Iy~zK(3EfmakyalmS21j%tgGO9WUq@ud-fR(8D21rA- zz5zC&YHeV?rvVl2WWE9?>+E(yHYR*dC_RL33uK}>6RRc&XOT2DX-8Y70 zxY=@Q+^`vMIpT&jsD|78*H4xp5kL1y8t@5aW&zr9s&Ac!wyo>pny78k*jQab*uH(2jJjX?Hq}>4%ycPNi9oh^KLj&fq zSE+g(+DWN6ZXZ?u!g{EBV9Xt(WTnZbK5X*SG z(w3H^YCd&2Eq_}+Em$Ud>-?Q^S9cpnm-gh5^W_bJi`&Ts_ z)WDJAOZW^*QhIEo<2(Q-L2Tn--UCyq-96}AM638d2~&~Yasgo}7qc}A2Fu2Xu>vKczg<>|O9cCx*M zH&v}S3G#XqT**`DRxxvA$UiZ3A+eOgMA^I>#<08C;1^CbmqG$9<{x0i%!9BY=rohw zV?dA5dK}KM1KPk$PI$mTY-ND2BU{R$pW<;2NL5CVYzHhrRq22fRQDaQ1QlNmX{c6K z!x~ie)y(%Spdy^im+xeq-A>5DgwF|us8U48MkR_+gzA&Xe2FfYL~?6jDT3M>4fqoP z$)`1-{WMGX)PRn3x-{nBE@n=u)qu8I2HtAHsyYTL>okdP0Why#14unfysB5-cM{2P zv*nb#VIAIbzzxe#J#Fw`e}M#v__;^YfSv#t)`Fr2mJl0MiM7~eN+YXnYXn;BY-F$X zJwTP=*-fm~sU{Y?*TiCxgvAO7qe|==VX==|kkQP*p=Lfirst(); @@ -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'); diff --git a/backend/app/Http/Controllers/ProfilController.php b/backend/app/Http/Controllers/ProfilController.php index c88419d..204c7bd 100644 --- a/backend/app/Http/Controllers/ProfilController.php +++ b/backend/app/Http/Controllers/ProfilController.php @@ -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();