Перестал работать плагин на событие OnDocFormSave
<?php
$priceusd = $modx->getObject('modTemplateVar', array('name'=>'priceUSD'));
$priceusd = $priceusd->getValue($id);
if ($priceusd > 0) {
$usd = $modx->getOption('usd_course');
$val = $priceusd * $usd;
$val = round($val, -2);
$tv = $modx->getObject('modTemplateVar', array('name'=>'price'));
$tv->setValue($resource->get('id'), $val);
$tv->save();
}
Нажимаю в документе [Сохранить] и жду… очень долго ждал, не дождался. error.log пуст на этот день.Плагин работал… год назад наверное. Что изменилось в MODX 2.5.7 или PHP 7.0.1, что этот плагин перестал работать?
Комментарии: 4
как минимум нет банальной проверки а получен ли объект.
if (!$priceusd) {
return;
}
Спасибо за дельный совет. Действительно, если цены в долларах нет — то должен же сохранить документ без цен.
Проверил — сохраняет без цен. Но с ценой висит…
Проверил — сохраняет без цен. Но с ценой висит…
Забыл написать что плагин смотрит TV с ценой в долларах, умножает на значение системной опции, округляет и записывает в TV с ценой в рублях. Вернее он делал это.
Оказалось, что TV был переименован. Всё работает.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.