Запретить добавление в корзину
Как можно запретить добавление в корзину?
miniShop2.Callbacks.add('Cart.add.before', 'restrict_cart', function() {
miniShop2.Message.error('Добавление товаров в корзину запрещено!');
return false;
});
не помогает (( товар все равно проходит, что делать может плагин какой можно на модиксе написать? но желательно все таки через джс Комментарии: 7
плагин на событие msOnBeforeAddToCart.
чтобы отказаться положить что-то в корзину, нужно сделать что-то такое:
чтобы отказаться положить что-то в корзину, нужно сделать что-то такое:
$modx->event->output('Некий текст, который появится в красной всплывашке jGrowl');
Очень полезная штука! но товар все равно добавляется я вставил в самом начале события
и почему в документации к минишопе нет этого ппц печалька ((
и почему в документации к минишопе нет этого ппц печалька ((
версия минишопа должна быть не меньше 2.4
если это так, код плагина покажите
если это так, код плагина покажите
Хотя я придумал, я просто засовываю принудительно сколько мне нужно товаров и если клиент ввел больше вывожу ваше сообщение
$cartArray = $cart->get(); // Массив корзины
$cartStatus = $cart->status(); // Состояние корзины
$totalCount = $cartStatus['total_count']; // Общее количество товаров в корзине
foreach ($cartArray as &$cartProduct) { // Обрабатываем все товары корзины
if ($product = $modx->getObject('msProduct', $cartProduct['id'])) { // Получаем объект товара по его ID в корзине
$quanity = $product->getTVValue('quantity');
$quanity1 = $cartProduct["count"];
if($quanity1 > $quanity){
$cartProduct['count'] = $quanity;
$modx->event->output('Вы пытаетесь положитель больше товаров чем есть в наличии');
}
}
}
$cart->set($cartArray); // Запись нового состояния корзины
Спасибо вам огромное!!!
Здравствуйте.
скажите, пожалуйста, а куда вставлять этот код? с Модкс не так давно начал работать, сейчас тоже задача всплывающее окно сделать, если товара в на личии меньше, чем хотят положить в корзину и не дать положить.
заранее спасибо за любые советы.
скажите, пожалуйста, а куда вставлять этот код? с Модкс не так давно начал работать, сейчас тоже задача всплывающее окно сделать, если товара в на личии меньше, чем хотят положить в корзину и не дать положить.
заранее спасибо за любые советы.
я догадался сделать плагин на системное событие msOnBeforeAddToCart
но почему-то работает через раз. т.е. если после красной всплывашки снова нажать «добавить в корзину» товар добавится и jGrowl уже будет зелёный.
почему такое может быть?
но почему-то работает через раз. т.е. если после красной всплывашки снова нажать «добавить в корзину» товар добавится и jGrowl уже будет зелёный.
почему такое может быть?
Здравствуйте.
не подскажете почему Ваш плагин может работать через раз?
т.е. у меня он даёт положить в корзину два раза по максимальному количеству (поле quantity), а на третий выводит красный jGrowl на четвёртый снова зелёный, на пятый снова красный.
почему такое может быть?
не подскажете почему Ваш плагин может работать через раз?
т.е. у меня он даёт положить в корзину два раза по максимальному количеству (поле quantity), а на третий выводит красный jGrowl на четвёртый снова зелёный, на пятый снова красный.
почему такое может быть?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.