Как поставить минимальную цену на корзину
Еще раз добрый день. Поискал но что то готовых решений не нашел. В общем суть проста, минимальный заказ в магазине 6000 рублей. В целом при добавлении в корзину это указано но было бы неплохо если бы не пропускало менее 6000 или выдавало сообщение что то типа «дозакажите» или минимальный заказ 6000 рублей, продолжите покупки.
С меня пиво
С меня пиво
Комментарии: 8
ну ты можешь или плагин написать который проверяет входную цену и отдавать сообщение, либо джаваскриптом проверяй есть ли в корзине 6к и вставляй кнопку заказать в дом
плагин я вряд ли напишу, а вот по поводу js если можно поподробней плиз
Ну допустим, у тебя цена в #ms2_order_cost. Тебе нужно сделать функцию, которая срабатывает для каждого события, которое может изменить цену( изменение количества товара, удаление и т.д). Функция должна проверить какая там внутри сума ($('#ms2_order_cost').value > 6000) и вывести не обходимую инфу для допуска/запрещения клика( Это может быть атрибут disabled ну или можешь скрывать через display:none). Но ты должен понимать, что это js, и любой юзер может это обойти. Можешь еще в довесок отправлять ajax при нажатии на кнопку «Заказать» на проверки сумы заказа(он в сессии) и возвращать true/false. Но лучше плагин.
У меня есть решение, но я смогу предоставить его через часа 4-5. Сейчас нет доступа к этому проекту.
Там смысл в плагине на событие msOnSubmitOrder и в проверке стоимости корзины.
Там смысл в плагине на событие msOnSubmitOrder и в проверке стоимости корзины.
было бы супер если бы это решалось все плагином, с js согласен, но чувствую с аяксом придется повозится
if ($modx->event->name == 'msOnSubmitOrder'){
if($cart = $order->ms2->cart->status()) {
if($cart['total_cost'] < 1000) {
$modx->event->output('Сумма вашего заказа должна превышать 1000 руб!');
}
}
}
Источник
Это к Shop_Cart?
Не в обиду конечно, но не понимаю, как человек собирается писать плагины или скрипты, если даже на элементарную кнопку «ответить» или «Предпросмотр» не нажимает.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.