События и плагины
Плагины
Список плагинов, необходимых для работы и расширения компонента. В будущих версиях может расширяться.
removeUuid
Позволяет удалить привязки свойств товаров при удалении товаров в MODX. Вызывается на событие OnBeforeEmptyTrash.
События
mSyncOnProductImport
Вызывается при обработке каждой категории и каждого товара в файле товаров после создания или обновления товара или категории.
Параметр | Значение | Описание |
---|---|---|
$mode | Строка category для категорий или create для новых товаров или update для обновления товара | Тип объекта, обрабатываемого в данный момент |
$resource | Объект msCategory или msProduct | Объект минишопа, созданный или обновленный в данный момент |
$properties | array | Массив свойств товара, извлеченных из XML, пустой для категории. |
$data | Объект mSyncCategoryData или mSyncProductData | Объект привязки категории или товара 1С к объектам минишопа |
mSyncBeforeProductOffers
Вызывается перед обработкой одного торгового предложения.
Параметр | Значение | Описание |
---|---|---|
$uuid | string | UUID товара в 1С |
$uuid_offer | string | UUID торгового предложения в 1С |
$xml | SimpleXMLElement | Объект XML, содержащий торговое предложение |
mSyncOnProductOffers
Вызывается после обработки одного торгового предложения.
Параметр | Значение | Описание |
---|---|---|
$resource | Объект msProduct | Объект товара минишопа, обновленный данным торговым предложением |
$offer | Объект mSyncOfferData | Объект торгового предложения |
$xml | SimpleXMLElement | Объект XML, содержащий торговое предложение |
mSyncAfterOffers
Вызывается после обработки всех торговых предложений.
Параметр | Значение | Описание |
---|---|---|
$totalOffers | int | Кол-во выгруженных торговых предложений |
mSyncOnCsvExport
Вызывается при добавлении каждого товара в выгрузку в формате CSV. Позволяет настроить ее под свои нужды.
Параметр | Значение | Описание |
---|---|---|
$fields | array | Массив полей товара, где ключ - поле товара (имя столбца CSV), а значение - значение данного поля. |
$product | Объект msProduct | Объект товара минишопа, обрабатываемый в данный момент |
$filename | Строка | Имя файла выгрузки |
$start | Число | Номер первого товара в текущей итерации выгрузки |
$export | Объект mSyncExportPrepareProcessor | Процессор выгрузки |
mSyncOnBeforeImport
Вызывается перед началом обработки файлов товаров и торговых предложений
Параметр | Значение | Описание |
---|---|---|
$mode | Строка "catalog" или "offers" | Указывает начата обработка каталога товаров или списка торговых предложений |
$filename | Строка | Имя файла |
mSyncOnBeforeImportCategory
Вызывается перед сохранением в БД временных данных категории
Параметр | Значение | Описание |
---|---|---|
$xml | SimpleXmlElement | Объект XML с данными Группы (категории) |
$data | array | Массив полей, которые можно менять в плагине: 'name' - имя категории, 'uuid' - идентификатор в 1С, 'parent_uuid' - идентификатор родительской группы в 1С |
$level | Число | Уровень вложенности категории |
mSyncOnBeforeImportProduct
Вызывается перед сохранением в БД временных данных товара
Параметр | Значение | Описание |
---|---|---|
$xml | SimpleXmlElement | Объект XML с данными Товара |
$data | array | Массив полей товара, которые можно менять в плагине: см. var_dump или исходники. |
Значение параметра $data можно менять аналогично плагинам на события miniShop2, пример:
if ($modx->event->name == 'mSyncOnBeforeImportCategory') {
$values = & $modx->event->returnedValues;
$data['name'] .= "-test";
$values['data'] = $data;
}
Данный плагин добавит строку "-test" к имени категории.
mSyncAfterImportCategories
Вызывается после того, как категории выгружены во временную таблицу из XML.
Параметр | Значение | Описание |
---|---|---|
$total | Число | Количество выгруженных категорий |
mSyncAfterImportProducts
Вызывается после выгрузки всех свойств из XML во временную таблицу.
Параметр | Значение | Описание |
---|---|---|
$last | Число | Номер последнего обработанного товара. |
$total | Число | Количество выгруженных товаров. |
mSyncOnPrepareCategory
Вызывается перед созданием или обновлением категории минишопа. Позволяет изменить привязку категорий.
Параметр | Значение | Описание |
---|---|---|
$data | Объект mSyncCategoryData | Объект привязки категории 1С к категории минишопа. Может быть пуст для новой категории. |
$uuid | Строка | Идентификатор категории в 1С. |
$parent | Число | Идентификатор родительской категории в minishop. |
$parentUuid | Строка | Идентификатор родительской категории в 1С. |
mSyncOnPrepareProduct
Вызывается перед созданием или обновлением товара минишопа. Позволяет изменить привязку товаров.
Параметр | Значение | Описание |
---|---|---|
$data | array | Массив временных данных товара. |
$p | Число | Идентификатор родительской категории в minishop. |
$parent | Число | Идентификатор родительской категории в minishop. |
$properties | array | Свойства товара |
mSyncAfterImportProperties
Вызывается после загрузки списка свойств товаров из XML в сессию выгрузки.
Параметр | Значение | Описание |
---|---|---|
$xml | SimpleXmlElement | Объект XML, содержащий свойства товаров. |
$last | Число | Номер последнего обработанного свойства. |
$total | Число | Количество найденных свойств. |
mSyncAfterImport
Вызывается в конце процесса импорта каталога товаров.
Параметр | Значение | Описание |
---|---|---|
$totalProducts | Число | Количество выгруженных товаров. |
$totalCategories | Число | Количество выгруженных категорий. |
$importResources | Ассоциативный массив | Список идентификаторов ресурсов, затронутых в данной выгрузке, разбитый по группам следующим образом: array( 'category' => array('created' => array(), 'updated' => array()), 'product' => array('created' => array(),'updated' => array()) . |
mSyncOnCatalogFileImport
Вызывается перед загрузкой файла каталога. Позволяет изменить имя файла, если оно отличается от названия по умолчанию.
Параметр | Значение | Описание |
---|---|---|
$filename | Строка | Имя файла |
mSyncOnBeforeSalesExport
Вызывается перед экспортом заказа. Позволяет добавлять новые поля в заказ.
Параметр | Значение | Описание |
---|---|---|
$order_ext | Ассоциативный массив | Список свойств товара для выгрузки |
$order | Объект msOrder | Заказ минишопа |
mSyncOnSalesExport
Вызывается перед формированием XML файла с заказами.
Параметр | Значение | Описание |
---|---|---|
$xml | SimpleXMLElement | Объект документа с заказами |
$orders | Массив msOrder | Коллекция заказов |
mSyncOnImportUnknownFile
Вызывается, если на импорт передан файл с неизвестным именем.
Параметр | Значение | Описание |
---|---|---|
$filename | Строка | Имя файла |