Merge branch 'dev' into j3/feat/filter
# Conflicts: # Webzine.WebApplication/Areas/Administration/Controllers/CommentaireController.cs # Webzine.WebApplication/Controllers/ArtisteController.cs # Webzine.WebApplication/Controllers/RechercheController.cs
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
using Webzine.WebApplication.ViewModels.Artiste;
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Contrôleur pour la gestion des artistes dans l'administration du webzine. Ce contrôleur gère les opérations de création, modification, suppression et affichage des artistes dans l'interface d'administration du webzine. Chaque action du contrôleur prépare un ViewModel spécifique pour la vue correspondante, permettant ainsi une séparation claire entre la logique métier et la présentation des données.
|
||||
/// </summary>
|
||||
public class ArtisteController : Controller
|
||||
{
|
||||
@@ -15,11 +15,10 @@
|
||||
private readonly IArtisteRepository artisteRepository;
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="ArtisteController"/> class.
|
||||
/// Initialise une nouvelle instance du <see cref="ArtisteController"/>. avec un service de journalisation injecté.
|
||||
/// </summary>
|
||||
/// <param name="logger">Service de journalisation injecté pour enregistrer les événements et les erreurs.</param>
|
||||
/// <param name="artisteRepository"></param>
|
||||
/// <param name="artisteRepository">Repository pour accéder aux données des artistes, injecté pour permettre les opérations de création, modification, suppression et affichage des artistes.</param>
|
||||
public ArtisteController(
|
||||
ILogger<ArtisteController> logger,
|
||||
IArtisteRepository artisteRepository)
|
||||
@@ -30,7 +29,7 @@
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Prend en paramètre le nom de l'artiste (ex: "fatal-bazooka"), utilise la factory pour trouver l'artiste correspondant, et affiche sa page dédiée.
|
||||
/// Affiche la liste des artistes.
|
||||
/// </summary>
|
||||
/// <param name="nom">Le nom de l'artiste à rechercher, formaté en kebab-case (ex: "fatal-bazooka").</param>
|
||||
/// <returns>La vue de l'artiste avec son ViewModel, ou une redirection vers l'accueil si le nom est vide, ou une erreur 404 si l'artiste n'est pas trouvé.</returns>
|
||||
@@ -44,14 +43,12 @@
|
||||
return this.RedirectToAction("Index", "Accueil");
|
||||
}
|
||||
|
||||
// On transforme "fatal-bazooka" en "Fatal Bazooka" pour la factory
|
||||
// On transforme "fatal-bazooka" en "Fatal Bazooka"
|
||||
string nomPropre = System.Globalization.CultureInfo.CurrentCulture.TextInfo
|
||||
.ToTitleCase(nom.Replace("-", " "));
|
||||
|
||||
// On appelle la factory pour obtenir l'artiste unique
|
||||
var artiste = this.artisteRepository.FindByName(nomPropre);
|
||||
|
||||
// Check if artiste was found
|
||||
if (artiste == null)
|
||||
{
|
||||
this.logger.LogWarning("Artiste non trouvé avec le nom : {NomArtiste}", nomPropre);
|
||||
|
||||
@@ -10,7 +10,7 @@ namespace Webzine.WebApplication.Controllers
|
||||
using Webzine.WebApplication.ViewModels.Recherche;
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Controller de la page de recherche d'artistes et de titres.
|
||||
/// </summary>
|
||||
public class RechercheController : Controller
|
||||
{
|
||||
@@ -19,11 +19,11 @@ namespace Webzine.WebApplication.Controllers
|
||||
private readonly IArtisteRepository artisteRepository;
|
||||
|
||||
/// <summary>
|
||||
/// Initialise une nouvelle instance de la classe <see cref="RechercheController"/>.
|
||||
/// Constructeur du controller de la page de recherche d'artistes et de titres.
|
||||
/// </summary>
|
||||
/// <param name="logger"></param>
|
||||
/// <param name="titreRepository"></param>
|
||||
/// <param name="artisteRepository"></param>
|
||||
/// <param name="logger">Le logger pour enregistrer les événements.</param>
|
||||
/// <param name="titreRepository">Le repository pour gérer les opérations sur les titres.</param>
|
||||
/// <param name="artisteRepository">Le repository pour gérer les opérations sur les artistes.</param>
|
||||
public RechercheController(
|
||||
ILogger<RechercheController> logger,
|
||||
ITitreRepository titreRepository,
|
||||
|
||||
@@ -39,7 +39,6 @@ namespace Webzine.WebApplication.Controllers
|
||||
/// </summary>
|
||||
/// <param name="id">Identifiant du titre.</param>
|
||||
/// <returns>Vue des details ou 404 si introuvable.</returns>
|
||||
|
||||
public IActionResult Index(int id)
|
||||
{
|
||||
this.logger.LogInformation("Demande d'affichage du detail pour le titre ID {Id}.", id);
|
||||
|
||||
Reference in New Issue
Block a user