Вопросы
msOnAddToCart срабатывает только при первом добавление товара, как исправить?
Нужно чтобы при добавлении товара если больше опред суммы, то снижал цену товара, и стоимость корзины.
Код который тестил
Код который тестил
<?php
switch ($modx->event->name) {
case 'msOnAddToCart':
$res = $modx->getObject('modResource', 1);
$defaultOptPrice = (int)$res->getTVValue('opt_price__default');
$crt = $cart->get();
$modx->log(modX::LOG_LEVEL_ERROR, '
=:>' . print_r($crt));
foreach($crt as $crtItem ){
$currentGoods = $modx->getObject('modResource', (int)$crtItem['id']);
$currentGoodsOptPrice = (int)$currentGoods->getTVValue('opt_price');
if(((int)$crtItem['price'] * (int)$crtItem['count']) >= $defaultOptPrice){
$crtItem['price'] = $currentGoodsOptPrice;
}
}
$cart->set($crt);
break;
}Кстати код выше так же не меняет результат корзины. Изменение цены в зависимости от типа валюты (в tv-параметре)
<?php
switch($modx->event->name) {
case 'msOnGetProductFields':
$returned_values = & $modx->event->returnedValues;
$values = $modx->event->params['data'];
$product = $modx->getObject('msProduct', $product->id);
$currency_type = $product->getTVValue('valuta'); //Тип валюты
$currency = $modx->getOption('currency_'.strtoupper($currency_type)); //Значение курса
if (isset($currency)) {
$returned_values['price'] = round($values['price'] * $currency); // Округление цены;
}
$modx->log(1,'returned_price - ' . $returned_values['price'] );
$modx->log(1,'current_type - ' . $currency_type );
$modx->log(1,'currency - ' . $currency );
break;
}Почему-то логи пишет корректно, но цена не меняется.Если убрать эти строки
$product = $modx->getObject('msProduct', $product->id);
$currency_type = $product->getTVValue('valuta'); //Тип валюты
$currency = $modx->getOption('currency_'.strtoupper($currency_type)); //Значение курса, работает. С ними все ломается… Где объявлены все xtype в Modx?
Здравствуйте!
Хочу зарегистрировать свой xtype формата datetime.
В каком файле объявлены все xtype Modx?
Хочу зарегистрировать свой xtype формата datetime.
В каком файле объявлены все xtype Modx?
Пропадает звездный рейтинг при отработке фильтра товаров, почему?
Приветствую, кто подскажет как решить проблему: при отработке фильтра слева e-clothes.ru/shop/ пропадает звездный рейтинг в товарах prnt.sc/19ffnh1, рейтинг выведен с помощью снипета, они как бы затираются после ajax, как решить, куда копать?
shopkeeper3 getProducts MODX revo - Вывод товаров
Приветствую всех. Сайт на MODX Revo. Возникли проблемы при выводе товаров на страницу shopkepeer3.
Вывожу на товары на страницу данным образом
[[!getProducts?
&elementClass=`modSnippet`
&element=`getProducts`
&parents=`319`
&tpl=`product`
&includeTVs=`1`
&includeTVList=`price,image,opisanie`
&limit=`20`
]]
При данном выводе появляются товары на странице, но они не добавляются в корзину. В документацие прочитал что нужен добавить &where=`{«template»:9}` Что указывает на шаблон карточки товара. В моем случае карточка товара имеет ID 9. Но когда я добавляю &where=`{«template»:9}` Страница с товарами становится полностью белая и на ней нет товаров.
Если меня удастся кому то понять и подсказать буду благодарен. Или же может кинуть ссылку на какие нить видосы по настройке shopkepeera 3. Спасибо. Всем добра.
Вывожу на товары на страницу данным образом
[[!getProducts?
&elementClass=`modSnippet`
&element=`getProducts`
&parents=`319`
&tpl=`product`
&includeTVs=`1`
&includeTVList=`price,image,opisanie`
&limit=`20`
]]
При данном выводе появляются товары на странице, но они не добавляются в корзину. В документацие прочитал что нужен добавить &where=`{«template»:9}` Что указывает на шаблон карточки товара. В моем случае карточка товара имеет ID 9. Но когда я добавляю &where=`{«template»:9}` Страница с товарами становится полностью белая и на ней нет товаров.
Если меня удастся кому то понять и подсказать буду благодарен. Или же может кинуть ссылку на какие нить видосы по настройке shopkepeera 3. Спасибо. Всем добра.
Как сделать фильтр вывода результатов из базы данных MIGX с помощью сниппета migxLoopCollection?
Здравствуйте друзья!
Делаю проект, в котором на одной из страниц выводится карта произошедших землетрясений на основе OpenLayers. База данных событий создана с помощью MIGX отдельной таблицей по статье Создание таблиц через MIGX. События из базы данных выводятся на карту с помощью сниппета migxLoopCollection. Это предыстория, а теперь задача))
Необходимо сделать блок фильтров для выборки землетрясений из базы по дате и магнитуде. Из собственных поисков на просторах интернета нашел только то, что копать нужно в сторону изменения параметра &where= сниппета migxLoopCollection, исходя из параметров введенных пользователем в форму. Подскажите пожалуйста варианты создания такого фильтра, или статьи с вариантами реализации. Заранее благодарю.
Делаю проект, в котором на одной из страниц выводится карта произошедших землетрясений на основе OpenLayers. База данных событий создана с помощью MIGX отдельной таблицей по статье Создание таблиц через MIGX. События из базы данных выводятся на карту с помощью сниппета migxLoopCollection. Это предыстория, а теперь задача))
Необходимо сделать блок фильтров для выборки землетрясений из базы по дате и магнитуде. Из собственных поисков на просторах интернета нашел только то, что копать нужно в сторону изменения параметра &where= сниппета migxLoopCollection, исходя из параметров введенных пользователем в форму. Подскажите пожалуйста варианты создания такого фильтра, или статьи с вариантами реализации. Заранее благодарю.
[pdoMenu] Выпадающее меню только в 1 пункте.
Есть стандартное меню, допустим главная, о компании, услуги, отзывы, контакты
Каждый из этих пунктов-ресурсов имеет дочерние ресурсы, возможно ли с помощью pdoMenu сделать выпадающим меню только в 1 пункте?
Приходит в голову пока только с помощью классов и css ?(display:none) например.
Прошу помочь.
Каждый из этих пунктов-ресурсов имеет дочерние ресурсы, возможно ли с помощью pdoMenu сделать выпадающим меню только в 1 пункте?
Приходит в голову пока только с помощью классов и css ?(display:none) например.
Прошу помочь.
Как высчитать дату с учётом выходных?
Не знаю с какой стороны подступиться. Задача такая: высчитать дату через n (14, например) дней от сегодняшней, но с учётом выходных/не рабочих дней, то есть прибавлять, если выходные в этот период есть. Плюс надо учесть, что конечная дата тоже может попасть на выходной и, соответственно, тоже сдвинуть надо. Выходные могут быть в любые дни и будут устанавливаться через тв чекбоксами вида: дд.мм. Вывод тоже в дд.мм.
Как удалить пункт в верхнем меню "Пакеты"
Деинсталляция не помогает(хотя у других пакетов раньше помогала).
minishop2 не сохраняет товары
На сайте 1000+ товаров. Скоро идем в релиз. И проблема в том что сайт перестал редактировать и обновлять существующие товары. Грешили на seopro — убрали не помогло. Кеш скидывали урлы перегенерировали. Но заметили забавное решение (кастыль) чтобы изменить товары берем подкатегорию и драг -дропом переносим в корень сайта и все товары начинают сохранятся. Ошибку в консоли браузера прилагаю
Uncaught TypeError: Cannot read property 'hidden' of undefined
at miniShop2.panel.UpdateProduct.failureSubmit (modx.panel.resource.js?v=2.5.0-pl:251)
at h.Event.fire (ext-all.js:21)
at miniShop2.panel.UpdateProduct.fireEvent (ext-all.js:21)
at MODx.toolbar.ActionButtons.handleClick (modx.jsgrps-min.js:1)
at S.onClick (ext-all.js:21)
at HTMLSpanElement.I (ext-all.js:21)
Uncaught TypeError: Cannot read property 'hidden' of undefined
at miniShop2.panel.UpdateProduct.failureSubmit (modx.panel.resource.js?v=2.5.0-pl:251)
at h.Event.fire (ext-all.js:21)
at miniShop2.panel.UpdateProduct.fireEvent (ext-all.js:21)
at MODx.toolbar.ActionButtons.handleClick (modx.jsgrps-min.js:1)
at S.onClick (ext-all.js:21)
at HTMLSpanElement.I (ext-all.js:21)