miniShop2. Удаление товара из заказа при msOnSubmitOrder
Здравствуйте.
Нужно удалить товар из заказа в плагине. Ковырял исходники файла msorderhandler.class.php, но не нашёл способа, как можно удалить товар из заказа при событии, например msOnSubmitOrder или msOnBeforeCreateOrder. Может быть есть какой-то способ, используя который возможно это сделать, не прибегая к написанию класса, который будет перехватывать работу с заказом?
Нужно удалить товар из заказа в плагине. Ковырял исходники файла msorderhandler.class.php, но не нашёл способа, как можно удалить товар из заказа при событии, например msOnSubmitOrder или msOnBeforeCreateOrder. Может быть есть какой-то способ, используя который возможно это сделать, не прибегая к написанию класса, который будет перехватывать работу с заказом?
- ВКонтакте
- Telegram
- Viber
- РЎРєРѕРїРСвЂВВВВВВВВровать ссылку
2 886
0
Поблагодарить автора
Отправить деньги
Комментарии: 6
18 ноября 2015, 17:20
Или решение есть только при событии msOnCreateOrder? То бишь удалять выбранные мной товары из заказа, когда он уже сохранён и объект создан.
18 ноября 2015, 17:37
А, помоему там в объекте «order» передан класс для работы с корзиной. Спасибо!
18 ноября 2015, 17:58
Очистить то очистил корзину, когда товары приходится все удалить. А вот как дать пользователю понять, что корзина очистилась по причине того, что все товары, которые он выбрал, уже недоступны, да ещё и перезагрузить страницу, чтобы он не бился головой об стену, так сказать, думая, что корзина то у него полная.
Поясню немного иначе. Скрипт, проверяя определённые условия, удаляет товары из корзины перед оформлением заказа. Может получиться так, что товары придётся удалить все. Следовательно пользователю об этом стоит сообщить, что корзина его пуста в связи с неимением уже на складе товара. А вот как потом обновить страницу? У меня получается либо обновить страницу и оставить пользователя в непонимании, что вообще произошло, либо сообщить юзеру сообщение и оставить страницу «как есть», что тоже плохо. Вот так делема. :)
Поясню немного иначе. Скрипт, проверяя определённые условия, удаляет товары из корзины перед оформлением заказа. Может получиться так, что товары придётся удалить все. Следовательно пользователю об этом стоит сообщить, что корзина его пуста в связи с неимением уже на складе товара. А вот как потом обновить страницу? У меня получается либо обновить страницу и оставить пользователя в непонимании, что вообще произошло, либо сообщить юзеру сообщение и оставить страницу «как есть», что тоже плохо. Вот так делема. :)
18 ноября 2015, 19:09
Решение пока придумалось костыльное — при очистке корзины выставлять флаг в сессии, после чего принудительно перезагружать страницу. При формировании страницы корзины всегда проверять этот флаг и выводить сообщение, если он установлен. После вывода сообщения, естественно, флаг сбрасывать.
18 ноября 2015, 17:36
Тогда, если это решается так, то у меня другой вопрос. Вот у меня есть определённая проверка, после которой омжет оказаться так, что в оформленном заказе не останется товаров, следовательно такой заказ юзеру отдавать безсмысленно, как и оставлять его в системе. Я его удаляю. Возвращаю в msorderhandler.class.php сообщение о том, что товары, которые он выбрал уже недоступны для покупки, а как корзину его опустошить из плагина по событию msOnCreateOrder?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Здесь упомянуты:
Компонент | Текущая версия | Закачки |
miniShop2 | 4.4.0-pl от 06.08.2024 | 26 389 |
Вчера в 21:11
Здравствуйте
Есть желание использовать компонент polylang для автоматизации перевода с наименьшими усилиями, но есть пару вопросов, которые хотелось ...
Polylang 143
Вчера в 16:30
Добрый день.
Удалите плагин vpSystem от пакета.
[VirtualPage] - Виртуальные страницы. 183
Вчера в 08:40
Хочестя в тикеты при сохранении комментария добавить кнопку «проверить на ошибки» и при нажатии на нее проверить комментарий на ошибки в нейросети сох...
pbStudio: Создаём сайт с PageBlocks – настройка и главная страница 6
Вчера в 08:36
Нет, через апи идет запрос в ChatGPT, который формирует необходимые данные о блоке, а дальше PageBlocks их разбирает и создает все нужные элементы.
PageBlocks 2.6.0. Настройка меню MODX и гибкое управление страницей пользователя 12
Вчера в 00:03
Не работает парсинг с vk.com, vkvideo.ru
[videoGallery] 1.4.0 Поддержка VK Video и ещё пара фишек 9
17 апреля 2025, 23:01
Можете тоже подсказать как победить данную ошибку?
msGallerySearch - загрузка изображений в галерею minishop2 по ссылке и Google поиск картинок 44
17 апреля 2025, 21:35
Действительно! Самого главного я и не обозначил! Спасибо! Поправлю заголовок.
Речь идет именно о панели менеджера и возможности управления заказами.
...
Вывод перечня заказанных товаров в таблицу с заказами minishop2 (панель менеджера) 8
17 апреля 2025, 17:49
Очевидно ты используешь источник файлов, поэтому в админке путь прописан от источника, хочешь полный путь, откажись от источника файлов.
Не открываются загруженные файлы пишет страница не найдена 2
17 апреля 2025, 15:08
Привет, Henk. Спасибо за ответ! В посте по ссылке меня больше всего заинтересовала фраза «мы интегрировали AI в медиа-менеджер, чтобы значительно упро...
MODX/AI Hackathon Part 2 (27 марта) 4
17 апреля 2025, 13:17
в preg_match проверка проходит, и туда 100% приходит url
Здравствуйте! Первый раз такое вижу, у слеша, не 1 символ в строке, а 9!! Как это делает MODX 2