Список событий: Бренд
Внимание! Мы рекомендуем вам прочитать разделы Архитектура, Класс ElementItem, Класс ElementCollection для полного понимания архитектуры проекта.
model.afterImport
Событие позволяет обрабатывать данные импорта после сохранения объекта модели.
$obEvent->listen(ImportBrandModelFromCSV::EVENT_AFTER_IMPORT, function ($obModel, $arImportData) {
if (!$obModel instanceof Brand::class) {
return;
}
//to do something
}, 900);
model.beforeImport
Событие позволяет изменить данные импорта перед сохранением объекта модели.
$obEvent->listen(ImportBrandModelFromCSV::EVENT_BEFORE_IMPORT, function ($sModelClass, $arImportData) {
if ($sModelClass != Brand::class) {
return null;
}
$arImportData['my_field'] = array_get($arImportData, 'my_field') == 'yes' ? true : false;
return $arImportData;
}, 900);
shopaholic.brand.extend_xml_import_data
Событие позволяет расширить обработку узла XML и изменить данные импорта.
Event::listen(ImportBrandModelFromXML::EXTEND_IMPORT_DATA, function($arImportData, $obParseNode) {
//Get custom field from node
$sValue = $obParseNode->...;
//Process custom field value
$arImportData['my_field'] = $sValue == 'yes' ? true : false;
return $arImportData;
});
shopaholic.brand.extend_xml_import_fields
Событие позволяет расширить список полей, доступных для настройки импорта из XML.
Event::listen(ImportBrandModelFromXML::EXTEND_FIELD_LIST, function($arFieldList) {
$arFieldList['my_field'] = 'My field label';
return $arFieldList;
});
shopaholic.brand.open
Событие срабатывает при открытии страницы бренда. Событие вызвано использованием компонента BrandPage.
Event::listen(ImportBrandModelFromXML::EXTEND_IMPORT_DATA, function($arImportData, $obParseNode) {
//Get custom field from node
$sValue = $obParseNode->...;
//Process custom field value
$arImportData['my_field'] = $sValue == 'yes' ? true : false;
return $arImportData;
});