Если в category_id подсунуть недопустимое (несуществующее) значение, то в логах веб-сервера две ошибки:
Undefined index: default_view in app/functions/fn.products.php on line 2766
Undefined index: selected_views in app/functions/fn.products.php on line 2767
$_layout = db_get_row(“SELECT default_view, selected_views FROM ?:categories WHERE category_id = ?i”, $params[‘category_id’]);
$category_default_view = $_layout[‘default_view’];
$category_views = unserialize($_layout[‘selected_views’]);
После запроса к базе нет проверки на содержимое ответа.
Я спалил за этим занятием поискового бота от хуавея )) Он по какой-то китайской логике перебирал цифры и плодил тем самым нотисы в логах. Да и вообще, есть у меня дурацкая привычка стремления к перфекционизму. По моему скромному мнению, никакое событие не должно приводить к ошибкам. При разборе url вопрошающему нужно отдать либо подходящую страницу, либо послать его на… 404 ))
Пока разработчики заняты чем-то очень важным (например, изучают мнение форумчан о характеристиках, фильтрах и статусах) позволю себе предложить своё скромное решение бага, описанного мной 24 ночи назад.
Решение неофициальное:
файл /app/controllers/frontend/companies.php
строка 343
Добрый день! Благодарю вас за обращение и приношу извинения за задержку.
Я сформировал репорт для наших разработчиков на изучение наличия данной проблемы. В случае ее подтверждения - будет взято в работу для разработки фикса.
Наш разработчик ответил, что предоставленной информации недостаточно для точного воспроизведения данного бага. Пришлите пожалуйста подробно и поэтапно какие шаги вы предприняли в воспроизведении. Скриншоты приветствуются. Заранее спасибо!
Здравствуйте, @Alexander.M!
Спасибо за подробное описание, оно помогло быстро решить проблему. Исправление войдет в следующий релиз Multi-Vendor.
Для исправления проблемы собственными силами можно использовать патч: