Конвертация валюты в старой цене
        Всем привет!
Когда-то Володя помог реализовать автоматическую конвертацию валюты с помощью такого плагина:
Можно ли с помощью данного плагина конвертировать валюту еще и в старой цене?
    
    
                                                                                
            Когда-то Володя помог реализовать автоматическую конвертацию валюты с помощью такого плагина:
<?php
$curs_global = $modx->getOption('eur_uah');
$product = $modx->getObject('msProduct', $product->id);
$curs = $product->get('vendor.phone') ?: $curs_global;
switch($modx->event->name) {
    case 'msOnGetProductPrice':
     
        $returned = $modx->getPlaceholder('_returned_price');
        if (is_array($returned)) {
            $price = $returned['price'];
        }
        $price = $price * $curs;
        
        $values = $modx->Event->returnedValues;
        $values['price'] = $price;
        $modx->event->returnedValues = $values;
        break;
}который вешается на событие msOnGetProductPriceМожно ли с помощью данного плагина конвертировать валюту еще и в старой цене?
Комментарии: 3
                автор решения
Создаем плагин вешаем на событие msOnGetProductFields
                    Создаем плагин вешаем на событие 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['old_price'] * 3;
 
    	break;
}            
                Andre, подскажи, пожалуйста, почему на странице могут не выводится обработанные старая и новая цены?
Создал плагин, навесил событие «msOnGetProductFields», в логи пишет корректно, а на странице исходные цены почему-то…
                    Создал плагин, навесил событие «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['old_price'] * 2;
        
        $modx->log(1,'returned_price - ' . $returned_values['price'] ); //30
        $modx->log(1,'returned_old_price - ' . $returned_values['old_price'] ); //60
        $modx->log(1,'values_price - ' . $values['price'] ); //15
        $modx->log(1,'values_old_price - ' . $values['old_price'] ); //30
 
    	break;
}            
                Та же проблема. Решение не нашли?            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.