Проблема с ShopModxBox

Столкнулся с непонятным багом, день убил — не могу решить. Может, сталкивался кто:

При редактировании товара и последующем его сохранении происходит зависание, вечное окно «Пожалуйста, подождите… Сохранение». При перезагрузке видно, что ничего не сохраняется.

В то же время, если создать новый товар, заполнить данные и сохранить, то все сохраняется нормально. Другие ресурсы редактируются нормально. Проблема возникает только при редактировании товаров.

Comments

Я думаю, что тут надо смотреть в сторону сторонних дополнений. Мне помогло отключить плагин autoRedirector'a. При этом у меня еще и ошибка в консоли была.

Зайдите в настройки и попробуйте отключить confirm_navigation.

Вот кусок из плагина autoRedirector'a. Объект $resource не существует из-за того, что class_key другой. Соответственно и объект по другому называется.

case "OnBeforeDocFormSave":
        $resources = array(
                $resource,
                $modx->getObject('modResource',$resource->get('parent'))
            );
        if($child_ids = $modx->getChildIds($resource->id,50,array('context' => $resource->context_key))){
            $resources = array_merge($resources, $modx->getCollection('modResource',array("id:IN" => $child_ids)));
        }

Саш, добавь в core/config/config.inc.php вывод ошибок ini_set('display_errors', 1); И отлавливай ошибки в запросах. Да, 99% какой-нить плагин мешает, не исключено что наш modRedirector. Связано это вот с этой багой: github.com/modxcms/revolution/pull/12243 Бага проявляется и в нашем modRedirector, и в versionX. У нас багфикс в пакет уже добавлен, но новая версия пока не собрана, руки не дошли.

из-за того, что class_key другой. Соответственно и объект по другому называется.

Дело не в objectType, а objectType. Это бага MODX-а.

Да, действительно в autoRedirect дело было. Отключил события OnBeforeDocFormSave и OnDocFormSave — все заработало. Спасибо всем, кто откликнулся.

Спасибо. Поставил. Работает. Товары сохраняются. Редирект отрабатывает как положено. Кстати, Илья я столкнулся с этой проблемой 2-3 месяца назад, и оставлял комментарий у тебя на сайте в теме про это компонент.

Я, видимо, не придал этому значения тогда)) А тут у Николая уже и решение есть, так что я нагло скопировал его код. Сейчас пойду обновлять в репозитории пакет.

Не так уж и нагло :) Мне вообще-то следовало пуллреквест отправить, но что-то я вчера опять весь занят был… Вообще мне совсем не понятно с какой целью в какой-то момент разрабы MODX-а удалили переменную 'object'. Никакого практического смысла не вижу в этом. Только головняков добавили.