From 95a5f99334830bb564f9fb4af1cd0f68a47bcef1 Mon Sep 17 00:00:00 2001
From: mirage <119869686+ClementBobin@users.noreply.github.com>
Date: Thu, 26 Mar 2026 11:10:48 +0100
Subject: [PATCH] refactor: update sidebar component to use ViewComponent and
improve layout structure
---
Webzine.Repository/SeedMockData.cs | 462 ++
.../Components/Sidebar/Default.cs | 21 +
Webzine.WebApplication/Program.cs | 18 +-
.../Views/Accueil/Index.cshtml | 5 +-
.../Views/Artiste/Index.cshtml | 3 +-
.../Views/Recherche/Index.cshtml | 2 +-
.../Views/Shared/_Layout.cshtml | 6 +-
.../Views/Shared/_Sidebar.cshtml | 50 +-
.../Views/Titre/Details.cshtml | 4 +-
.../Views/Titre/Style.cshtml | 2 +-
.../Webzine.WebApplication.csproj | 2 -
Webzine.WebApplication/wwwroot/js/all.min.js | 6 -
Webzine.WebApplication/wwwroot/js/app.js | 0
.../wwwroot/js/bootstrap.bundle.js | 6312 -----------------
.../wwwroot/js/bootstrap.min.js | 7 -
.../wwwroot/js/bootstrap.min.js.map | 1 -
.../wwwroot/webfonts/fa-brands-400.woff2 | Bin 110088 -> 0 bytes
.../wwwroot/webfonts/fa-regular-400.woff2 | Bin 18924 -> 0 bytes
.../wwwroot/webfonts/fa-v4compatibility.woff2 | Bin 4032 -> 0 bytes
19 files changed, 523 insertions(+), 6378 deletions(-)
create mode 100644 Webzine.Repository/SeedMockData.cs
create mode 100644 Webzine.WebApplication/Components/Sidebar/Default.cs
delete mode 100644 Webzine.WebApplication/wwwroot/js/all.min.js
delete mode 100644 Webzine.WebApplication/wwwroot/js/app.js
delete mode 100644 Webzine.WebApplication/wwwroot/js/bootstrap.bundle.js
delete mode 100644 Webzine.WebApplication/wwwroot/js/bootstrap.min.js
delete mode 100644 Webzine.WebApplication/wwwroot/js/bootstrap.min.js.map
delete mode 100644 Webzine.WebApplication/wwwroot/webfonts/fa-brands-400.woff2
delete mode 100644 Webzine.WebApplication/wwwroot/webfonts/fa-regular-400.woff2
delete mode 100644 Webzine.WebApplication/wwwroot/webfonts/fa-v4compatibility.woff2
diff --git a/Webzine.Repository/SeedMockData.cs b/Webzine.Repository/SeedMockData.cs
new file mode 100644
index 0000000..5d1dfc6
--- /dev/null
+++ b/Webzine.Repository/SeedMockData.cs
@@ -0,0 +1,462 @@
+using Webzine.EntitiesContext;
+using Webzine.Entity;
+using Bogus;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace Webzine.Repository
+{
+ ///
+ /// Classe de service pour peupler la base de données avec des données fictives (mock data) à des fins de développement et de test.
+ ///
+ public class SeedMockData
+ {
+ private readonly WebzineDbContext _context;
+ private readonly Random _random;
+
+ ///
+ /// Constructeur pour l'utilisation avec base de données
+ ///
+ public SeedMockData(WebzineDbContext context)
+ {
+ _context = context;
+ _random = new Random();
+ }
+
+ ///
+ /// Constructeur pour l'utilisation en mémoire (sans base de données)
+ ///
+ public SeedMockData()
+ {
+ _random = new Random();
+ }
+
+ ///
+ /// Peuple la base de données avec des données fictives
+ ///
+ public void SeedDB()
+ {
+ // Vérifie si la base contient déjà des données
+ if (_context.Artistes.Any()) return;
+
+ // Génère toutes les données
+ var styles = GenererStyles(18);
+ var artistes = GenererArtistes(100);
+ var titres = GenererTitres(artistes, 500, 550);
+ var commentaires = GenererCommentaires(titres, 0, 5);
+
+ // Associe les styles aux titres
+ AssocierStylesAuxTitres(titres, styles);
+
+ // Sauvegarde dans la base
+ _context.SaveChanges();
+ }
+
+ ///
+ /// Génère des données fictives en mémoire sans base de données
+ ///
+ /// Tuple contenant toutes les données générées
+ public (List