Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Ошибка в компоненте bitrix/catalog.section в файле .description.php

00 голосов
2
Добрый день.

У меня Bitrix 8.5.1 Исследовал стандартный компонент bitrix/catalog.section и обнаружил, что в файле .description.php судя по всему строчка 29
Код
$arProperty_LNS = array();

является лишней.

Мне кажется, что по задумке массив $arProperty_LNS уже собран несколькими строчками выше и нет необходимости его очищать, иначе смысл предыдущей сборки данных теряется. Могу ошибаться, возможно уже исправлено в более старших версиях, но на всякий случай хочу обратить внимание.

Вот как выглядит код с 13 по 33 строчки:
Код
$arProperty_LNS = array();
$arProperty_N = array();
$rsProp = CIBlockProperty::GetList(Array("sort"=>"asc", "name"=>"asc"), Array("ACTIVE"=>"Y", "IBLOCK_ID"=>$arCurrentValues["IBLOCK_ID"]));
while ($arr=$rsProp->Fetch())
{
   $arProperty[$arr["CODE"]] = "[".$arr["CODE"]."] ".$arr["NAME"];
   if(in_array($arr["PROPERTY_TYPE"], array("L", "N", "S")))
   {
      $arProperty_LNS[$arr["CODE"]] = "[".$arr["CODE"]."] ".$arr["NAME"];
   }
   if($arr["PROPERTY_TYPE"]=="N")
   {
      $arProperty_N[$arr["CODE"]] = "[".$arr["CODE"]."] ".$arr["NAME"];
   }
}

$arProperty_LNS = array(); // [NOTICE] Эта строчка, если не ошибаюсь, тут не нужна...
$arUserFields = $GLOBALS["USER_FIELD_MANAGER"]->GetUserFields("IBLOCK_".$arCurrentValues["IBLOCK_ID"]."_SECTION");
foreach($arUserFields as $FIELD_NAME=>$arUserField)
   if($arUserField["USER_TYPE"]["BASE_TYPE"]=="string")
      $arProperty_LNS[$FIELD_NAME] = $arUserField["LIST_COLUMN_LABEL"]? $arUserField["LIST_COLUMN_LABEL"]: $FIELD_NAME;
спросил 04 Март, 14 от Sadist (100 баллов)

2 Ответы

00 голосов
Эта ошибка была исправлена в версии 8.5.6 модуля инфоблоков.

PS и файлик не .description.php, а .parameters.php
ответил 14 Авг, 14 от Miso (740 баллов)
00 голосов
Да, действительно, не тот файл упомянул... Спасибо, понял.

PS
Вроде бы неделю назад загружал с сайта архив с Битриксом, а версия старая оказалась. Ну да ладно, обновлюсь.
ответил 19 Дек, 14 от Sadist (100 баллов)

Похожие вопросы

0 голосов
1 ответ
0 голосов
0 ответов
0 голосов
1 ответ
0 голосов
1 ответ
спросил 12 Июнь, 13 от luc (140 баллов)
0 голосов
3 ответов