Телеграм: @camouf_ru Почта: mihail@bazarow.ru

pavelmbx@gmail.com (Все сообщения пользователя)

Внимание! все сообщения проходят премодерацию. Ваше сообщение появится после проверки
Выбрать дату в календареВыбрать дату в календаре

Доброго дня! Помогите, не могу разобраться с работой события, Значение свойства элемента записывается со второго раза
 
Разобрался.

$bxRecRatingVal = $ar_props['VALUE'];
Изменено: pavelmbx@gmail.com - 08.11.2019 01:27:30
Доброго дня! Помогите, не могу разобраться с работой события, Значение свойства элемента записывается со второго раза
 
Что я делаю не так? В коде ниже в переменную $bxrecRatingVal значение "прилетает" только со второго раза. Т.е. я открываю редактирование элемента, заполняю значение свойства, нажимаю сохранить - в переменной пусто. Захожу снова в редактирование элемента и ничего не меняя жму "Сохранить" ещё раз и тогда в переменную попадает заданное мной значение.





Код
<?php


    AddEventHandler("iblock", "OnAfterIBlockElementUpdate", Array("StartRatingUpdate", "Update"));

    class StartRatingUpdate
    {
        function Update(&$arFields)
        {
            if ($arFields['IBLOCK_ID'] == BOXER_IBLOCK_ID) {

                $db_props = CIBlockElement::GetProperty(
                    $arFields['IBLOCK_ID'],
                    $arFields['ID'],
                    ['sort' => 'asc'],
                    ['CODE' => 'ATT_BXREC_RT']
                );

                if ($ar_props = $db_props->Fetch()) {

                    $bxrecRatingVal = $arFields['PROPERTY_VALUES'][$ar_props["ID"]][$ar_props["PROPERTY_VALUE_ID"]]['VALUE'];


                    if (!empty($bxrecRatingVal)) {
                        $startRatingCalc = number_format(1000 + 50 * log($bxrecRatingVal), 2, ',', ' ');
                    
                            CIBlockElement::SetPropertyValueCode($arFields['ID'], "ATT_RBX_RT", $startRatingCalc);

                    }
                }
            }
        }
    }
    ?>
Заметки разработчика

Примерно с 2013-го года пишу, короткие и не очень, заметки по разработке сайтов на Битрикс. Возможно, будут полезны кому-то еще. Во всех заметках есть возможность комментирования и обсуждения. Вы можете задавать уточняющие вопросы прямо там- отвечаю или дополняю заметки по возможности.

Заказaть разработку attention