Всем привет! У меня вот такой вопрос: умеет ли битриксовская библиотека BX отслеживать события класса CIBlockElement ?
Есть вот такая задача:
Есть инфоблок "Цвет". У элементов этого инфоблока есть свойство "COLOR" - текстовая строка, в которую в формате #FFFFFF можно задавать цвет.
Нужно, чтобы скрипт без перезагрузки страницы отслеживал момент, когда новый элемент только что был добавлен, и вытаскивал бы из самого "свежего" элемента этого инфоблока свойство COLOR.
Просто как получить самый новый элемент из инфоблока, и вытащить оттуда свойство - это я сделал. Не понятно как это сделать БЕЗ перезагрузки страницы.
Этот код вытаскивает последний добавленный элемент инфоблока с ID=4 и выводит его цвет - в данном случае как фон у прямоугольника.
Подскажите пожалуйста, как сделать, чтобы если пользователь уже находится на этой странице, и в этот момент добавляется новый элемент инфоблока с другим цветом, чтобы и на странице без перезагрузки цвет также обновлялся бы??
Ну это понятно что аяксом. Но аякс же как то должен отслеживать событие "Добавление элемента инфоблока" ( OnAfterIBlockElementAdd ) . Вот я и хочу понять, каким образом это можно реализовать, хотя бы пример хоть какой-нибудь, где ajax с битриксовыми событиями работает.
Я вижу два варианта: * Вебсокеты - сложно * Отвечать на аякс запрос - менее сложно
Предположим, что мы идем вторым путем. Если мы не хотим строить апиху, то обращаться аяксом придется к той же странице где всё это происходит. Значит там вы должны в php скрипте проверить тип пзапроса и если аякс отдавать ему что -то. Либо false либо новый элемент. Это уже вопрос реализации.