fix(backend): durcissements (throttle register, garde auto-suppression admin, null-check saisie)
- throttle:10,1 sur l'inscription (anti-spam de comptes) - un admin ne peut plus désactiver/supprimer son propre compte (anti lock-out) - update/destroy saisie : abort 404 propre si l'utilisateur n'a pas de tracker Tests 15/15, Pint pass.
This commit is contained in:
@@ -53,7 +53,9 @@ class SaisieTrackerController extends Controller
|
||||
|
||||
public function update(StoreSaisieRequest $request, int $id): JsonResponse
|
||||
{
|
||||
$saisie = auth()->user()->tracker->saisies()->findOrFail($id);
|
||||
$tracker = auth()->user()->tracker;
|
||||
abort_unless($tracker, 404, 'Aucun tracker trouvé.');
|
||||
$saisie = $tracker->saisies()->findOrFail($id);
|
||||
$saisie->update($request->validated());
|
||||
$saisie->load('emotion');
|
||||
|
||||
@@ -65,7 +67,9 @@ class SaisieTrackerController extends Controller
|
||||
|
||||
public function destroy(int $id): JsonResponse
|
||||
{
|
||||
$saisie = auth()->user()->tracker->saisies()->findOrFail($id);
|
||||
$tracker = auth()->user()->tracker;
|
||||
abort_unless($tracker, 404, 'Aucun tracker trouvé.');
|
||||
$saisie = $tracker->saisies()->findOrFail($id);
|
||||
$saisie->delete();
|
||||
|
||||
return response()->json([
|
||||
|
||||
Reference in New Issue
Block a user