Всего 123 799 комментариев

vectorserver
27 декабря 2023, 06:36
0
Попробуй напрямую закинуть запрос через метод $modx->query

$sql = "SELECT * FROM ваша_таблица WHERE (width + length) <= 1000 AND (length - width) >= 500";
$result = $modx->query($sql);
$rows = $result->fetchAll(PDO::FETCH_ASSOC);
Александр Туниеков
27 декабря 2023, 01:17
0
Спасибо за донат. Хотел в заметке спросить надо ли дальше и подробнее описывать :-) но уже запарился. Теперь буду знать. Надо расписывать. Только блоками работы поменьше, чтоб не запариваться и чтоб понятнее было. А стартовый блок работы получился большим. Я насчитал 60 часов работы О_О.
Александр Туниеков
27 декабря 2023, 01:12
+1
Да правильно. Сложновато написал. Хорошо еще что сейчас начал описывать. Потом вообще бы тяжко было все хитро сплетения прописывать.
В таблице указываешь точку монтирования — это куда слать запрос. Указываешь класс контроллера и путь к нему — то есть это где искать код код обработчика.
Но фишка то в том чтоб по возможности код обработчика вообще не писать. Класс контроллера остовляешь пустым и указываешь нужную таблицу и GRUD API уже есть. Думаю это съэкономит время.
Артур Шевченко
26 декабря 2023, 22:49
0
Написать сниппет, который соберёт все контексты из БД и выведет их списком ссылок
Артур Шевченко
26 декабря 2023, 22:37
+1
Я правильно понимаю, в таблице можно указать куда слать запрос, где искать код обработчика и можно работать с сайтом через API?
Артур Шевченко
26 декабря 2023, 20:07
0
При правильной настройке ошибок типа «Повторная отправка формы через ** секунд» быть не должно

Css от SendIt изменяет css сайта, первое, что бросилось в глаза размер .container увеличился
Это решается удаление пути к файлам стилей из системной настройки. Но скорре всего в SendIt 1.1.1 удалю значение.
Олег Захаров
26 декабря 2023, 19:44
0
Как-то сложновато пока, хорошо бы документацию потом подробную разработать с примерами.
Чувствуется серьезный подход.
Народ давай поддержим Александра, хорошее дело делает.
А то как-то печально что как-то маловато выкладывают примеров работы MODx с Vue.js и сторонними библиотеками.
Константин Ильин
26 декабря 2023, 19:04
+1
Чуть и я напишу
Попробовал установить, так скажем быстрый старт вроде норм, сам компонент запустился, но не фильтровал, оно понятно не было SendIt.

Пошел устанавливать SendIt, открываю страницу, а там начинается ад из сообщений «Повторная отправка формы через ** секунд»
disk.yandex.ru/i/89ZDlaiewiKMUA

Css от SendIt изменяет css сайта, первое, что бросилось в глаза размер .container увеличился
В журнале ошибки disk.yandex.ru/i/4sV0-QJWMNpByA

— сам вызов и настройка вроде хорошо-просто
— страница открывается быстро

К чему я это все, эта зависимость от SendIt удручает. На готовых сайтах могут проблемы от обязанности использовать SendIt. Наврно должен быть свой JS
Артур Шевченко
26 декабря 2023, 14:49
0
Похоже ты там был, когда я как раз кое-что дорабатывал. Посмотри теперь.
brioni
26 декабря 2023, 14:27
0
Алексей, будет супер, если поиск по полю метка тоже будет работать
Евгений Webinmd
26 декабря 2023, 12:14
0
1) Количество товара в корзине не обновляется без перезагрузки
2) если сменить в сайдбаре опцию, то количество уже изменить нельзя
Артур Шевченко
25 декабря 2023, 20:27
0
if($msOrder->get('delivery_cost') === 0){
   $modx->event->output('Error');
}
newbmod
25 декабря 2023, 18:30
0
Спасибо за дополнение altHelper!
Заметил такую ошибку при выставлении уровня althelper_alt_from_title.
Если в содержании вставляется не путь к изображению а изображение из ms2gallery, к примеру
<img class="img-responsive" src="[[+ms2g.0.url]]" alt="" />
то тег alt заполняется, а вот само изображение пропадает. Видимо что-то с рендером страницы при наличии MODX-овских выражений
Dan
Dan
25 декабря 2023, 17:32
0
И ещё один вопрос, как отловить событие из плагина на js, чтобы вывести предупреждение на фронте?
Не нужно никаких js.
Расширяете msOrderHandler переопределив метод submit. В нем проверяете
if ($delivery_cost == 0) {
    return $this->error('Стоимость доставки не может быть равна нулю.'); //тут свое сообщение. Можно использовать ключи записей словаря
}
Dan
Dan
25 декабря 2023, 17:26
0
Интересное решение с использованием ZoomX!
Ну, как я и писал, мое решение не претендует на топ. Если будет критика и правки, я только за — поправлю на сайтах своих)
deleted
25 декабря 2023, 17:16
+1
Делал вот такое. Если что, там критика ниже, поправить статью пока руки не дошли.
modx.pro/howto/23874
Наумов Алексей
25 декабря 2023, 16:59
0
плагин на системное событие msOnBeforeCreateOrder, но похоже, что в него не поступают данные о стоимости доставки
Похоже, что должны поступать, судя по коду из msorderhandler.class.php:

// Раз
$delivery_cost = $this->getCost(false, true);
$cart_cost = $this->getCost(true, true) - $delivery_cost;
$num = $this->getNewOrderNum();

/** @var msOrder $msOrder */
// Два
$msOrder = $this->storageHandler->getForSubmit(
    compact('user_id', 'num', 'cart_cost', 'cart_status', 'delivery_cost')
);
// Три
$response = $this->ms2->invokeEvent('msOnBeforeCreateOrder', [
    'msOrder' => $msOrder,
    'order' => $this,
]);