From 6d9bf5bc778061cf5df55f50b09b4cc946c3f2b3 Mon Sep 17 00:00:00 2001 From: Repellent Date: Sat, 22 Nov 2025 16:51:16 +0500 Subject: [PATCH] =?UTF-8?q?fix=20=D0=BF=D0=BE=D0=BB=D0=B5=D0=B9=20=D0=98?= =?UTF-8?q?=D0=B7=D0=BE=D0=B1=D1=80=D0=B0=D0=B6=D0=B5=D0=BD=D0=B8=D0=B5=20?= =?UTF-8?q?=D0=BA=D0=B0=D1=81=D0=BA=D0=B0=D0=B4=20=D0=B8=20=D0=94=D0=BE?= =?UTF-8?q?=D0=BA=D1=83=D0=BC=D0=B5=D0=BD=D1=82=20=D0=B8=D0=B7=20=D1=80?= =?UTF-8?q?=D1=83=D0=B1=D1=80=D0=B8=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- fields/doc_from_rub/field.php | 8 ++++++-- fields/image_multi/field.php | 7 ++++++- fields/image_multi/tpl/field.tpl | 2 +- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/fields/doc_from_rub/field.php b/fields/doc_from_rub/field.php index 0f17a42..8239e53 100644 --- a/fields/doc_from_rub/field.php +++ b/fields/doc_from_rub/field.php @@ -29,9 +29,11 @@ switch ($action) { - case 'edit': - if (isset($default)) +case 'edit': + // !!! ИСПРАВЛЕНИЕ: Проверяем, что $default НЕ ПУСТ (isset и !empty) + if (!empty($default)) { + // SQL-запрос 1: Получение минимального родителя $parent = $AVE_DB->Query(" SELECT MIN(document_parent) AS min @@ -41,6 +43,7 @@ rubric_id IN (" . $default . ") ")->GetCell(); + // SQL-запрос 2: Получение списка документов $sql = $AVE_DB->Query(" SELECT Id, document_parent, document_title @@ -66,6 +69,7 @@ } else { + // Если $default пуст, мы выводим ошибку, как и в оригинальном коде $AVE_Template->assign('error', $AVE_Template->get_config_vars('error')); } diff --git a/fields/image_multi/field.php b/fields/image_multi/field.php index 888da31..b799d16 100644 --- a/fields/image_multi/field.php +++ b/fields/image_multi/field.php @@ -73,9 +73,14 @@ $show_upload = true; + // Строка 76: разделяем строку на массив $default = explode('|', $default); - list($path, $watermark, $position, $transparency) = $default; + // Строка 78: используем оператор объединения с null (??) для безопасного извлечения значений + $path = $default[0] ?? ''; + $watermark = $default[1] ?? ''; + $position = $default[2] ?? ''; + $transparency = $default[3] ?? ''; if(preg_match("/%id/i", $path)) { diff --git a/fields/image_multi/tpl/field.tpl b/fields/image_multi/tpl/field.tpl index 1fb91d6..894bce6 100644 --- a/fields/image_multi/tpl/field.tpl +++ b/fields/image_multi/tpl/field.tpl @@ -1,6 +1,6 @@ {if $cascad_new != 'load'} {assign var=cascad_new value='' scope="global"} - {if $smarty.request.outside} + {if isset($smarty.request.outside) && $smarty.request.outside} {else}