
События и плагины
Плагины
Список плагинов, необходимых для работы и расширения компонента. В будущих версиях может расширяться.
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 | Строка | Имя файла |
