From: marina Date: Mon, 31 Mar 2025 06:32:58 +0000 (+0300) Subject: ERP-358 Сверстать интерфейс автопм X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=f4dff7cb6bf52b41f0b3b70a845745c861076835;p=erp24_rep%2Fyii-erp24%2F.git ERP-358 Сверстать интерфейс автопм --- diff --git a/erp24/views/shipment/auto-planogramma.php b/erp24/views/shipment/auto-planogramma.php index 481fae8a..e54ac8f9 100644 --- a/erp24/views/shipment/auto-planogramma.php +++ b/erp24/views/shipment/auto-planogramma.php @@ -153,15 +153,15 @@ $tooltipText = "Оффлайн: 50 Флаумак (off-line): 20 Фла 'btn btn-success btn-save', 'style' => 'width:100%']); ?> -
-
- -
+
+
+
+
@@ -180,9 +180,9 @@ $tooltipText = "Оффлайн: 50 Флаумак (off-line): 20 Фла


-
- 'btn btn-success ml-auto']) ?> - 'btn btn-success ml-auto']) ?> +
+ 'btn btn-success ms-1']) ?> + 'btn btn-success ms-1']) ?>
@@ -311,16 +311,16 @@ $tooltipText = "Оффлайн: 50 Флаумак (off-line): 20 Фла // Обработчик кликов для категорий document.querySelectorAll(".category").forEach(category => { category.addEventListener("click", function () { - let isVisible = this.parentElement.nextElementSibling?.style.display === "table-row"; let nextRow = this.parentElement.nextElementSibling; + let isVisible = nextRow?.style.display === "table-row"; - // Закрываем все вложенные элементы (subcategory + items) + // Закрываем все элементы внутри категории while (nextRow && !nextRow.querySelector(".category")) { nextRow.style.display = "none"; nextRow = nextRow.nextElementSibling; } - // Если категория закрывалась, то открываем только подкатегории + // Если категория была закрыта — открываем подкатегории if (!isVisible) { nextRow = this.parentElement.nextElementSibling; while (nextRow && !nextRow.querySelector(".category")) { @@ -333,32 +333,18 @@ $tooltipText = "Оффлайн: 50 Флаумак (off-line): 20 Фла }); }); - let activeSubcategory = null; // Текущая открытая подкатегория - // Обработчик кликов для подкатегорий document.querySelectorAll(".subcategory").forEach(subcategory => { - subcategory.addEventListener("click", function () { - let isOpening = activeSubcategory !== this; + subcategory.addEventListener("click", function (event) { + event.stopPropagation(); // Чтобы клик по подкатегории не закрывал категорию - // Закрываем текущую открытую подкатегорию и её items - if (activeSubcategory) { - let prevRow = activeSubcategory.parentElement.nextElementSibling; - while (prevRow && !prevRow.querySelector(".subcategory") && !prevRow.querySelector(".category")) { - prevRow.style.display = "none"; - prevRow = prevRow.nextElementSibling; - } - } + let nextRow = this.parentElement.nextElementSibling; + let isVisible = nextRow?.style.display === "table-row"; - // Если открываем новую, показываем её items - if (isOpening) { - let nextRow = this.parentElement.nextElementSibling; - while (nextRow && !nextRow.querySelector(".subcategory") && !nextRow.querySelector(".category")) { - nextRow.style.display = "table-row"; - nextRow = nextRow.nextElementSibling; - } - activeSubcategory = this; - } else { - activeSubcategory = null; + // Переключаем видимость только айтемов внутри этой подкатегории + while (nextRow && !nextRow.querySelector(".subcategory") && !nextRow.querySelector(".category")) { + nextRow.style.display = isVisible ? "none" : "table-row"; + nextRow = nextRow.nextElementSibling; } }); });