Добрый день, коллеги, может подскажите решение проблемы.
Есть инфоблок (не является торговым каталогом), его элементы редактируют сами пользователи в публичке. Интерфейс реализован на компонентах catalog.*, да, каюсь не совсем верно, надо было делать на news.*, но это было сделано давно, опыта еще было мало и переделать руки не доходили, да и надобности не было, т.к. все работало нормально.
После обновления на 8.2 вылез такой баг, в публичке, после отработки компонента catalog.element появилась ошибка (именно отработки, т.к. HTML код после него корректный).
[TypeError] count(): Argument #1 ($value) must be of type Countable|array, bool given (0)
/var/www/sites/intranet/bitrix/modules/catalog/include.php:449
#0: CatalogViewedProductCallback
/var/www/sites/intranet/bitrix/modules/catalog/general/product_provider.php:839
#1: CCatalogProductProvider::ViewProduct
/var/www/sites/intranet/bitrix/modules/sale/mysql/product.php:369
#2: CSaleViewedProduct::Add
/var/www/sites/intranet/bitrix/components/bitrix/catalog.element/class.php:255
#3: CatalogElementComponent->saveViewedProduct
/var/www/sites/intranet/bitrix/modules/iblock/lib/component/element.php:278
#4: Bitrix\Iblock\Component\Element->initialLoadAction
#5: call_user_func
/var/www/sites/intranet/bitrix/modules/iblock/lib/component/base.php:4795
#6: Bitrix\Iblock\Component\Base->doAction
/var/www/sites/intranet/bitrix/modules/iblock/lib/component/base.php:4813
#7: Bitrix\Iblock\Component\Base->executeComponent
/var/www/sites/intranet/bitrix/modules/main/classes/general/component.php:660
#8: CBitrixComponent->includeComponent
/var/www/sites/intranet/bitrix/modules/main/classes/general/main.php:1062
#9: CAllMain->IncludeComponent
/var/www/sites/intranet/doc/ais-album-form/detail.php:6
Курение 449 строки просветления не принесло. Обновления стоят крайние.
У администратора ошибка не воспроизводится, у пользователя в его разделе ошибка есть, но не на всех элементах, на каких-то нету, в чем разница не пойму. У компонента такие параметры, выставление 'USE_ELEMENT_COUNTER' в N эффекта не дало. Параметр PRICE пустой, прописыванием в нем базовой цены эффекта не дает.
$APPLICATION->IncludeComponent( "bitrix:catalog.element",
"detail_form",
array(
"IBLOCK_TYPE" => "form_document",
"IBLOCK_ID" => "15",
"ELEMENT_ID" => $_REQUEST["ELEMENT_ID"],
"ELEMENT_CODE" => "",
"SECTION_ID" => $_REQUEST["SECTION_ID"],
"SECTION_CODE" => "",
"HIDE_NOT_AVAILABLE" => "N",
"PROPERTY_CODE" => array(
0 => "ais_af_name",
1 => "ais_af_date_work_c",
2 => "ais_af_document_approval",
3 => "ais_af_format_type_c",
4 => "ais_af_storage_life_c",
5 => "ais_url_sto",
6 => "ais_af_file_c",
7 => "",
),
"OFFERS_LIMIT" => "0",
"TEMPLATE_THEME" => "blue",
"ADD_PICT_PROP" => "-",
"LABEL_PROP" => "-",
"DISPLAY_NAME" => "Y",
"DETAIL_PICTURE_MODE" => "IMG",
"ADD_DETAIL_TO_SLIDER" => "N",
"DISPLAY_PREVIEW_TEXT_MODE" => "E",
"PRODUCT_SUBSCRIPTION" => "N",
"SHOW_DISCOUNT_PERCENT" => "N",
"SHOW_OLD_PRICE" => "N",
"SHOW_MAX_QUANTITY" => "N",
"DISPLAY_COMPARE" => "N",
"MESS_BTN_BUY" => "Купить",
"MESS_BTN_ADD_TO_BASKET" => "В корзину",
"MESS_BTN_SUBSCRIBE" => "Подписаться",
"MESS_BTN_COMPARE" => "Сравнение",
"MESS_NOT_AVAILABLE" => "Нет в наличии",
"USE_VOTE_RATING" => "N",
"USE_COMMENTS" => "N",
"SECTION_URL" => "",
"DETAIL_URL" => "",
"SECTION_ID_VARIABLE" => "SECTION_ID",
"CACHE_TYPE" => "A",
"CACHE_TIME" => "36000000",
"CACHE_GROUPS" => "Y",
"META_KEYWORDS" => "-",
"META_DESCRIPTION" => "-",
"BROWSER_TITLE" => "-",
"SET_TITLE" => "Y",
"SET_STATUS_404" => "N",
"ADD_SECTIONS_CHAIN" => "Y",
"ADD_ELEMENT_CHAIN" => "Y",
"USE_ELEMENT_COUNTER" => "N",
"PRICE_CODE" => array(
),
"USE_PRICE_COUNT" => "N",
"SHOW_PRICE_COUNT" => "1",
"PRICE_VAT_INCLUDE" => "Y",
"PRICE_VAT_SHOW_VALUE" => "N",
"CONVERT_CURRENCY" => "N",
"BASKET_URL" => "/personal/basket.php",
"ACTION_VARIABLE" => "action",
"PRODUCT_ID_VARIABLE" => "id",
"USE_PRODUCT_QUANTITY" => "N",
"ADD_PROPERTIES_TO_BASKET" => "Y",
"PRODUCT_PROPS_VARIABLE" => "prop",
"PARTIAL_PRODUCT_PROPERTIES" => "N",
"PRODUCT_PROPERTIES" => array(
),
"LINK_IBLOCK_TYPE" => "",
"LINK_IBLOCK_ID" => "",
"LINK_PROPERTY_SID" => "",
"LINK_ELEMENTS_URL" => "link.php?PARENT_ELEMENT_ID=#ELEMENT_ID#",
"PRODUCT_QUANTITY_VARIABLE" => "quantity",
"SET_BROWSER_TITLE" => "Y",
"SET_META_KEYWORDS" => "Y",
"SET_META_DESCRIPTION" => "Y"
),
false
);