Процессор для массового удаления из избранного. Принимает значения ids - ID товаров.
core/components/custom/processors/web/favorites/remove.class.php
<?php
require_once MODX_CORE_PATH . 'model/modx/modprocessor.class.php';
class RemoveFromFavoritesCustom extends modProcessor
{
public $objectType = 'modResource';
public $classKey = 'modResource';
public function process()
{
$ids = $this->getProperty('ids');
$msFavorites = $this->modx->getService('msfavorites.msFavorites', '', MODX_CORE_PATH . 'components/msfavorites/model/');
if ($msFavorites) {
foreach ($ids as $id) {
$output = $msFavorites->processMethod([
'ctx' => 'web',
'method' => 'remove',
'key' => $id,
'list' => 'default',
'type' => 'resource',
'service' => 'msfavorites',
//'action' => 'favorites/multiple'
]);
}
}
$output = $this->modx->fromJSON($output);
if ($output['success'] == true) {
$output_2 = $output['data'];
}
return $this->success('', [
'remove_ids' => $ids,
'output' => $output_2
]);
}
}
return 'RemoveFromFavoritesCustom';