Actualiser test2.html
CI / PHP Syntax Check (push) Has been cancelled
CI / JavaScript Lint (push) Has been cancelled
CI / Docker Build Test (push) Has been cancelled
CI / Validate Translation Files (push) Has been cancelled
CI / Auto-merge develop → main (push) Has been cancelled
CI / Create GitHub Release (push) Has been cancelled
CI / PHP Syntax Check (push) Has been cancelled
CI / JavaScript Lint (push) Has been cancelled
CI / Docker Build Test (push) Has been cancelled
CI / Validate Translation Files (push) Has been cancelled
CI / Auto-merge develop → main (push) Has been cancelled
CI / Create GitHub Release (push) Has been cancelled
This commit is contained in:
+9
-39
@@ -2,13 +2,12 @@
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>⚡ Sandbox - Test Réconciliation Catégories</title>
|
||||
<title>⚡ Sandbox - Fixe</title>
|
||||
<style>
|
||||
body { font-family: sans-serif; background: #333; padding: 50px; }
|
||||
.modal { background: white; padding: 20px; border-radius: 12px; width: 400px; margin: 0 auto; box-shadow: 0 4px 15px rgba(0,0,0,0.3); }
|
||||
.btn { padding: 10px 20px; border-radius: 8px; border: none; cursor: pointer; margin: 5px; font-weight: bold; }
|
||||
.btn-blue { background: #1976d2; color: white; }
|
||||
.btn-cancel { background: #666; color: white; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
@@ -20,57 +19,28 @@
|
||||
</div>
|
||||
|
||||
<script>
|
||||
// 1. Fonction pour récupérer les VRAIES catégories d'EverShelf
|
||||
// Elle scanne l'objet 'app' ou les variables globales de l'application
|
||||
function getRealCategories() {
|
||||
// On vérifie si la variable globale existe
|
||||
if (typeof CATEGORY_LABELS !== 'undefined') {
|
||||
// Object.values extrait juste les noms (ex: "Produits laitiers", "Viande")
|
||||
// de l'objet {latticini: "Produits laitiers", carne: "Viande"}
|
||||
return Object.values(CATEGORY_LABELS);
|
||||
}
|
||||
// Liste de secours si la variable n'est pas encore chargée
|
||||
return ["Fruits", "Légumes", "Boissons", "Épicerie"];
|
||||
}
|
||||
// On force les données ici pour ne plus dépendre de l'onglet EverShelf
|
||||
const VRAIES_CATEGORIES = [
|
||||
"Produits laitiers", "Viande", "Poisson", "Fruits",
|
||||
"Légumes", "Boissons", "Épicerie", "Surgelés"
|
||||
];
|
||||
|
||||
// 2. Fonction d'affichage du formulaire
|
||||
function editCategory() {
|
||||
const container = document.getElementById('app-container');
|
||||
|
||||
// 1. On vérifie si la variable existe vraiment
|
||||
const rawData = typeof CATEGORY_LABELS !== 'undefined' ? CATEGORY_LABELS : {};
|
||||
|
||||
// 2. On transforme les valeurs en tableau
|
||||
const categories = Object.values(rawData);
|
||||
|
||||
// 3. Sécurité : si toujours vide, on alerte
|
||||
if (categories.length === 0) {
|
||||
alert("Erreur : CATEGORY_LABELS est vide ou non chargé.");
|
||||
return;
|
||||
}
|
||||
|
||||
container.innerHTML = `
|
||||
<h3>Changer la catégorie</h3>
|
||||
<select id="cat-select" style="width:100%; padding:10px; margin: 10px 0;">
|
||||
${categories.map(c => `<option value="${c}">${c}</option>`).join('')}
|
||||
${VRAIES_CATEGORIES.map(c => `<option value="${c}">${c}</option>`).join('')}
|
||||
</select>
|
||||
<br>
|
||||
<button class="btn btn-blue" onclick="save()">Enregistrer</button>
|
||||
<button class="btn btn-cancel" onclick="location.reload()">Annuler</button>
|
||||
<button class="btn" onclick="location.reload()">Annuler</button>
|
||||
`;
|
||||
}
|
||||
|
||||
// 3. Fonction de sauvegarde
|
||||
function save() {
|
||||
const selected = document.getElementById('cat-select').value;
|
||||
|
||||
// Ici, on appelle la vraie fonction de mise à jour d'EverShelf
|
||||
if (typeof app !== 'undefined' && typeof app.updateProductCategory === 'function') {
|
||||
app.updateProductCategory(selected);
|
||||
alert("Donnée envoyée à EverShelf : " + selected);
|
||||
} else {
|
||||
alert("Simulation : Catégorie " + selected + " retenue.");
|
||||
}
|
||||
alert("Simulation : Appel de la fonction réelle d'EverShelf avec la valeur : " + selected);
|
||||
location.reload();
|
||||
}
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user