From 68484b83230b8ffc4c457cf2589cfc942fd84508 Mon Sep 17 00:00:00 2001 From: morgane Date: Wed, 17 Jun 2026 21:22:21 +0000 Subject: [PATCH] Actualiser api/index.php --- api/index.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/api/index.php b/api/index.php index 43e69b5..93dd68b 100644 --- a/api/index.php +++ b/api/index.php @@ -2702,7 +2702,16 @@ function saveProduct(PDO $db): void { $shoppingName = array_key_exists('shopping_name', $input) && $input['shopping_name'] !== null && $input['shopping_name'] !== '' ? $input['shopping_name'] : computeShoppingName($input['name'], $input['category'] ?? '', $input['brand'] ?? ''); - + // Sous-catégorie : toujours optionnelle, sauf obligatoire pour les boissons + $category = $input['category'] ?? ''; + $subcategory = trim($input['subcategory'] ?? ''); + $validSubcategories = ['vin', 'biere', 'spiritueux', 'soda', 'jus', 'eau', 'autre']; + if ($category === 'bevande' && ($subcategory === '' || !in_array($subcategory, $validSubcategories, true))) { + http_response_code(400); + echo json_encode(['error' => 'subcategory_required', 'message' => 'Sous-catégorie requise pour les boissons']); + return; + } + if ($subcategory === '') $subcategory = null; // Sous-catégorie obligatoire uniquement pour les boissons $category = $input['category'] ?? ''; $subcategory = trim($input['subcategory'] ?? '');