Меню

Серия 13: Свой компонент: список объявлений пользователя. Получение информации из инфоблока с помощью ORM

RSS
Серия 13: Свой компонент: список объявлений пользователя. Получение информации из инфоблока с помощью ORM
 

Серия 13: Свой компонент: список объявлений пользователя. Получение информации из инфоблока с помощью ORM

Чеклист:


Делаем компонет со списком объявлений пользователя
Реализуем событие на обновление элемента
Изменено: Михаил Базаров - 16.11.2024 14:20:38
 
Черновой обработчкик на менеджере событий:
Код
use Bitrix\Main\EventManager;
use Bitrix\Main\Loader;
use CIBlockElement;

EventManager::getInstance()->addEventHandler(
    'iblock',
    'OnAfterIBlockElementUpdate',
    ['UpdateBulletinsElements', 'OnAfterIBlockElementUpdateHandler']
);

class UpdateBulletinsElements
{
    // Создаем обработчик события "OnAfterIBlockElementUpdate"
    public static function OnAfterIBlockElementUpdateHandler($arFields)
    {
        if ($arFields['ACTIVE'] === 'Y' && Loader::includeModule('iblock')) {
            $currentDate = new \Bitrix\Main\Type\DateTime();
            $dateActiveFrom = $currentDate->format('d.m.Y H:i:s');
            $dateActiveTo = $currentDate->add('14D')->format('d.m.Y H:i:s');

            $el = new CIBlockElement();
            $result = $el->Update($arFields['ID'], [
                'ACTIVE_FROM' => $dateActiveFrom,
                'ACTIVE_TO' => $dateActiveTo,
            ]);

            if (!$result) {
                // Логирование ошибок
                \Bitrix\Main\Diag\Debug::writeToFile(
                    $el->LAST_ERROR,
                    '',
                    '/log/update_error.log'
                );
            }
        }
    }
}
Изменено: Михаил Базаров - 08.12.2024 12:00:17
Читают тему
Форма ответов
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
 

Блог-note: заметки разработчика

Cordova, ввод в input под диктовку. Голосовой поиск в мобильном приложении.

Итак, задачка: реализовать голосовой поиск в мобильном приложении на Cordova. По сути, нам нужно захватить речь с микроф...

Вывести производителей на сайте с отбором его товаров из каталога

Достаточно частая задачка для каталога или интернет-магазина: вывести список производителей с подробными описаниями, а т...

Добавить все свойства инфоблока в умный фильтр одним разом

Если у вас достаточно много свойств, в инфоблоке с товарами, например: больше 1000-чи, после интеграции с 1С или импорта...

Получение списка Highload блоков с помощью API Битрикс

1С-Битрикс предоставляет мощный инструментарий для обеспечения эффективной работы ваших проектов. Одним из способов упра...

Данные о заказе текущего пользователя

Иногда нужно получить данные о заказе текущего пользователя. Не через компонент, а непосредственно через API Битрикс. Ва...

E-mail вместо логина при регистрации и оформлении заказа в 1C-Битрикс

Задача: при регистрации нового пользователя и оформлении заказа нужно убрать поле Логин и использовать электронную почту...

Постраничная навигация в списке разделов Битрикс- catalog.section.list

Если в магазине очень много разделов и хочется вывести их с постраничной навигацией: можно воспользоваться методами CDBR...

Сортировать товары по названию, цене и дате поступления в каталоге Битрикс

Достаточно часто заказчик просит вывести сортировку по цене, новым поступлениям и названию в каталоге товаров работающег...

Подключение SSL на Битрикс виртуальная машина

С первого января 2017 года, наличие безопасного соединения HTTPS становится практически обязательным. Ваши сайты будут з...