Игорь Терентьев

Игорь Терентьев

Был в сети 17 апреля 2025, 16:31
Заказы не принимаю
@Володя Что-то ни в какую не получается передать customer через плагин на событие msOnBeforeGetOrderCustomer. Оба способа не работают:
$scriptProperties['customer'] = $modx->getObject('modUser', 1);
$modx->event->returnedValues['customer'] = $modx->getObject('modUser', 1);
В плагине объект пользователя точно есть, а в классе минишопа, после вызова события — пусто.

Где-то тут github.com/Ibochkarev/miniShop2/blob/master/core/components/minishop2/model/minishop2/minishop2.class.php#L657 разве не должно быть:
$customer = $response['customer']
Теперь есть событие msOnGetProductFields:
<?php
switch($modx->event->name) { 
    case 'msOnGetProductFields':
        $returned_values = & $modx->event->returnedValues;
        $values =  $modx->event->params['data'];
          
        $returned_values['price'] = $values['price'] * 2;
        $returned_values['old_price'] = $values['price'] * 3;
        $returned_values['article'] = 'custom_article';
        $returned_values['weight'] = 222;
    	break;
}
Не вижу ошибок, но вот точно работающий вызов:

{$_modx->runSnippet('pdoCrumbs', [
                	'tpl' => '@INLINE <span class="help-center-breadcrumbs__item"><a class="help-center-breadcrumbs__link" href="{$link}">{$menutitle}</a></span>',
                	'tplCurrent' => '@INLINE <span class="help-center-breadcrumbs__item"><span class="help-center-breadcrumbs__link">{$menutitle}</span></span>',
                	'tplMax' => '@INLINE <span class="help-center-breadcrumbs__item"><span class="help-center-breadcrumbs__link"> ... </span></span>',
                	'tplWrapper' => '@INLINE <div class="help-center-breadcrumbs">{$output}</div>',
                	'showHome' => 1,
                    'leftJoin' => '{
                		"localizator" : {
                			"class" : "localizatorContent",
                			"alias" : "localizator",
                			"on" : "localizator.resource_id = modResource.id"
                		}
                	}',
                	'select' => '{ "localizator" : "modResource.*, localizator.*, modResource.id" }',
                    'where' => '{ "localizator.key" : "' ~ ('localizator_key' | option) ~ '"}',
                ])}