ajout fichier prestation, fusion des 3 pages

This commit is contained in:
ben
2025-12-08 16:06:21 +01:00
parent 7f580261e0
commit ec6c64b2a9
6 changed files with 132 additions and 4 deletions

View File

@@ -74,7 +74,7 @@
</div> </div>
<div class="d-flex gap-3 mt-4"> <div class="d-flex gap-3 mt-4">
<a href="liste_prestations.html" class="btn btn-secondary w-50">Annuler</a> <a href="../../prestations/liste_prestation/liste_prestation.html" class="btn btn-secondary w-50">Annuler</a>
<button type="submit" class="btn btn-primary w-50">Ajouter</button> <button type="submit" class="btn btn-primary w-50">Ajouter</button>
</div> </div>
</form> </form>

View File

@@ -48,5 +48,8 @@ form.addEventListener("submit", function (e) {
existingPrestations.push(titre); existingPrestations.push(titre);
setTimeout(() => {
window.location.href = "../liste_prestation/liste_prestation.html";
}, 1500);
}); });

View File

@@ -0,0 +1,59 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Liste des prestations</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css">
<style>
body {
background: #f4f6f9;
padding: 30px;
}
.container {
margin-top: 100px;
}
.action-btns button,
.action-btns a {
margin-right: 100px;
}
</style>
</head>
<body>
<div class="container">
<h2 class="mb-5 text-center">Liste des prestations</h2>
<!--Message succès-->
<div id="succesDeleteMsg" class="alert alert-success d-none">Prestation supprimée avec succès !</div>
<div class="d-flex justify-content-end mb-4">
<a href="../ajouter_prestation/ajouter_prestation.html" class="btn btn-primary">Ajouter une prestation</a>
</div>
<table class="table table-striped table-hover align-middle">
<thead class="table-dark">
<tr>
<th>Titre</th>
<th>Type</th>
<th>Description</th>
<th>Tarif</th>
<th class="text-center">Actions</th>
</tr>
</thead>
<tbody id="prestationTableBody">
<!--Rempli en JS-->
</tbody>
</table>
</div>
<script src="../../prestations/liste_prestation/liste_prestation.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>

View File

@@ -0,0 +1,61 @@
// Exemple BDD
const prestations = [
{
id: 1,
titre: "Toilettage complet",
type: "Chien",
description: "• Bain complet \n• Séchage \n• Coupe aux ciseaux\n• Nettoyage des oreilles",
prixMin: 35,
prixMax: 60
},
{
id: 2,
titre: "Toilettage express",
type: "Chat",
description: "• Bain rapide\n• Séchage\n• Brossage",
prixMin: 20,
prixMax: 35
}
];
// Sélection des éléments
const tableBody = document.getElementById('prestationTableBody');
const successDeleteMsg = document.getElementById('successDeleteMsg');
// Fonction pour extrait description
function extrait(desc, limite = 60) {
return desc.length > limite ? desc.substring(0, limite) + '...' : desc;
}
// Affichage du tableau
function afficherPrestations() {
tableBody.innerHTML = '';
prestations.forEach((p, index) => {
const row = `
<tr>
<td>${p.titre}</td>
<td>${p.type}</td>
<td>${extrait(p.description.replace(/\n/g, " "))}</td>
<td>${p.prixMin}€ - ${p.prixMax}€</td>
<td class="text-center action-btns">
<a href="consulter_prestation.html?id=${p.id}" class="btn btn-info btn-sm">Voir</a>
<a href="../../prestations/modifier_prestation/modifier_prestation.html?id=${p.id}" class="btn btn-warning btn-sm">Modifier</a>
<button class="btn btn-danger btn-sm" onclick="supprimerPrestation(${index})">Supprimer</button>
</td>
</tr>
`;
tableBody.innerHTML += row;
});
}
afficherPrestations();
// Suppression
function supprimerPrestation(index) {
prestations.splice(index, 1);
afficherPrestations();
successDeleteMsg.classList.remove("d-none");
}

View File

@@ -69,7 +69,7 @@
<!-- Boutons --> <!-- Boutons -->
<div class="d-flex gap-3 mt-4"> <div class="d-flex gap-3 mt-4">
<a href="liste_prestations.html" class="btn btn-secondary w-50">Annuler</a> <a href="../../prestations/liste_prestation/liste_prestation.html" class="btn btn-secondary w-50">Annuler</a>
<button type="submit" class="btn btn-primary w-50">Enregistrer les modifications</button> <button type="submit" class="btn btn-primary w-50">Enregistrer les modifications</button>
</div> </div>

View File

@@ -1,6 +1,6 @@
const form = document.getElementById('editPrestationForm'); const form = document.getElementById('editPrestationForm');
const titleField = document.getElementById('prestationTtile'); const titleField = document.getElementById('prestationTitle');
const descriptionField = document.getElementById('prestationDescription'); const descriptionField = document.getElementById('prestationDescription');
const typeField = document.getElementById('prestationType'); const typeField = document.getElementById('prestationType');
const priceMinField = document.getElementById('priceMin'); const priceMinField = document.getElementById('priceMin');
@@ -40,8 +40,13 @@ form.addEventListener('submit', function (e) {
console.log("Nouvelles données :", { console.log("Nouvelles données :", {
titre: title, titre: title,
type: typeField.value, type: typeField.value,
description: descField.value, description: descriptionField.value,
prixMin: priceMinField.value, prixMin: priceMinField.value,
prixMax: priceMaxField.value prixMax: priceMaxField.value
}); });
// Redirection après un court délai
setTimeout(() => {
window.location.href = "../liste_prestation/liste_prestation.html";
}, 1500);
}); });