From b13d5c92092d540b10c98352a877f62d6ac5aeb6 Mon Sep 17 00:00:00 2001 From: "josephine.vetu" Date: Mon, 23 Mar 2026 14:48:23 +0100 Subject: [PATCH 001/116] =?UTF-8?q?Les=20erreurs=20sont=20indiqu=C3=A9es?= =?UTF-8?q?=20en=20TODO.=20A=20corriger=20puis=20supprimer=20les=20comment?= =?UTF-8?q?aires?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/CommentaireController.cs | 15 +++++++++------ .../Administration/Controllers/StyleController.cs | 2 +- .../Administration/Controllers/TitreController.cs | 2 +- .../ViewModels/Artiste/GroupeArtisteViewModel.cs | 2 +- .../Views/Commentaire/Delete.cshtml | 4 ++-- .../Administration/Views/Dashboard/Index.cshtml | 6 +++--- .../Administration/Views/Style/Delete.cshtml | 2 +- .../Controllers/TitreController.cs | 11 +++++++---- .../ViewModels/Artiste/ArtisteModel.cs | 4 ++-- Webzine.WebApplication/Views/Accueil/Index.cshtml | 4 ++-- .../Views/Recherche/Index.cshtml | 2 +- .../Views/Shared/_Layout.cshtml | 8 ++++---- Webzine.WebApplication/Views/Titre/Style.cshtml | 2 +- 13 files changed, 35 insertions(+), 29 deletions(-) diff --git a/Webzine.WebApplication/Areas/Administration/Controllers/CommentaireController.cs b/Webzine.WebApplication/Areas/Administration/Controllers/CommentaireController.cs index f5554fa..8a04740 100644 --- a/Webzine.WebApplication/Areas/Administration/Controllers/CommentaireController.cs +++ b/Webzine.WebApplication/Areas/Administration/Controllers/CommentaireController.cs @@ -22,7 +22,8 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers _logger.LogInformation("Initialisation du contrôleur CommentaireController."); - var factory = new DataFactory(); + var factory = new DataFactory(); // TODO injecter le factory via DI pour éviter de le recréer à chaque fois + // faire une classe statique var _artistes = factory.GenerateArtists(10); var _styles = factory.GenerateStyles(10); @@ -84,13 +85,14 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers /// /// L'identifiant du commentaire à supprimer. /// La vue de confirmation de suppression avec le ViewModel contenant les détails du commentaire à supprimer, ou une réponse NotFound si le commentaire n'existe pas. - public ActionResult Delete(int id) + public ActionResult Delete(int id) // TODO IActionResult { var commentaire = _commentaires .FirstOrDefault(c => c.IdCommentaire == id); if (commentaire == null) - return NotFound(); + return NotFound(); // TODO faire une page d'erreur personnalisée pour les 404, et pas juste un message d'erreur dans la console + // mettre des accolades dans les if pour éviter les erreurs de maintenance, même pour une seule ligne de code var vm = new CommentaireDeleteViewModel { @@ -111,12 +113,13 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers /// Le ViewModel contenant les détails du commentaire à supprimer, utilisé pour afficher les informations en cas d'erreur. /// Redirection vers la liste des commentaires en cas de succès, ou la vue de confirmation avec le message d'erreur en cas d'échec. [HttpPost] - [ValidateAntiForgeryToken] - public ActionResult Delete(int id, CommentaireDeleteViewModel model) + [ValidateAntiForgeryToken] // TODO pas utilisée encore, à virer. tag helper form le fait déjà auto + public ActionResult Delete(int id, CommentaireDeleteViewModel model) //TODO IActionResult { + // TODO ça boucle à l'infini si on supprime pas le commentaire, parce que la vue Delete.cshtml affiche les détails du commentaire à supprimer, et que le commentaire n'est pas supprimé en base de données, donc il réaffiche la même page avec les mêmes données, et ça boucle à l'infini try { - return RedirectToAction(); + return RedirectToAction(); // TODO rediriger vers la liste des commentaires, et pas juste RedirectToAction() qui va faire une erreur } catch (Exception e) { diff --git a/Webzine.WebApplication/Areas/Administration/Controllers/StyleController.cs b/Webzine.WebApplication/Areas/Administration/Controllers/StyleController.cs index 623530e..c5a8a4c 100644 --- a/Webzine.WebApplication/Areas/Administration/Controllers/StyleController.cs +++ b/Webzine.WebApplication/Areas/Administration/Controllers/StyleController.cs @@ -36,7 +36,7 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers public ActionResult Index() { // Création de données "bouchon" (mock) pour tester l'affichage - var listeStyles = new List