J1: Admin/Styles/Edit #65:

- Création de StyleEditViewModel
- Création de la vue edit
- Integration du edit dans le controller
This commit is contained in:
b.nodon
2026-03-06 13:21:34 +01:00
parent 9002836da0
commit 58de77a532
4 changed files with 144 additions and 19 deletions

View File

@@ -94,6 +94,7 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers
}
// GET: Administration/Styles/Delete/5
public ActionResult Delete(int id)
{
@@ -130,5 +131,55 @@ namespace Webzine.WebApplication.Areas.Administration.Controllers
return View(model);
}
}
// GET: Administration/Styles/Edit/5
[HttpGet]
public ActionResult Edit(int id)
{
// Recherche du style (simulation avec la liste _styles)
var style = _styles.FirstOrDefault(s => s.IdStyle == id);
if (style == null)
{
return NotFound();
}
// Mapping vers le ViewModel
var model = new StyleEditViewModel
{
IdStyle = style.IdStyle,
Libelle = style.Libelle
};
return View(model);
}
// POST: Administration/Styles/Edit/5
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit(int id, StyleEditViewModel model)
{
if (!ModelState.IsValid)
{
return View(model);
}
try
{
// TODO : Mettre à jour en base de données ici
// var styleDb = _context.Styles.Find(id);
// styleDb.Libelle = model.Libelle;
// _context.SaveChanges();
_logger.LogInformation("Style {Id} mis à jour : {Libelle}", id, model.Libelle);
return RedirectToAction(nameof(Index));
}
catch (Exception e)
{
_logger.LogError(e, "Erreur lors de la modification du style {Id}", id);
ModelState.AddModelError("", "Une erreur est survenue lors de la modification.");
return View(model);
}
}
}
}
}