Всего 125 933 комментария

Артур Шевченко
21 февраля 2023, 19:28
0
Насколько мне известно, готовых решений для подобной задачи нет. Обычно делают раздел Избранное, а уже из него можно добавить в корзину и оформить заказ.
Alexey
21 февраля 2023, 16:48
1
0
Привет! Можно плагином решить:

<?php
if ($modx->context->key != 'mgr') {
    switch ($modx->event->name) {       
        case 'OnBeforeUserFormSave':
            if ($mode == 'new') {  // Событие перед регистрацией пользователя
                if (empty($_POST['register_agree'])) {
                    $modx->event->output('Вы должны согласиться с политикой конфиденциальности');
                }                
            }            
            break;
    }
}
Сергей Карпович
21 февраля 2023, 10:54
0
Я знаю и Office выглядел выигрышно, но в будущем все начало меняться =)
Артур Шевченко
21 февраля 2023, 10:50
0
несколько лет назад был AjaxForm и Login))) А простого решения я не знаю.
Сергей Карпович
21 февраля 2023, 10:46
0
Office я поставил несколько лет назад =)
Переделывать регистрацию на AjaxFormitLogin думал, но хочется найти простое решение
Артур Шевченко
21 февраля 2023, 10:43
0
Я посмотрел документацию, и ничего про валидацию не нашёл, поэтому думается мне вам надо самому написать проверку. Вообще, моё скромное мнение таково, что Office бессмысленная трата денег. Есть достаточное количество бесплатных способов сделать тоже самое, самый простой это AjaxFormitLogin. Историю заказов он конечно не покажет, но для этого можно использовать msListOrders, который втрое дешевле Office, имеет много вариантов работы с заказами и лёгок в кастомизации, при том что в Office вы получаете таблицу с ExtJs.
m4
m4
20 февраля 2023, 23:34
0
Пробовал. Результат такой же. В итоге просто всё в один файл поместил.

Может еще modx устарел, год не обновлялся.
Артур Шевченко
20 февраля 2023, 23:14
0
Можно, надо проверить есть ли эта опция в таблице ms2_category_options.
Konstantin
20 февраля 2023, 23:07
0
Не обижайте Андрюху, товарищи.
Konstantin
20 февраля 2023, 23:05
0
помогло, спасибо
Тодор
20 февраля 2023, 22:25
0
Если не поможет, то подключи свой сервис cart по етой инструкции, и измени там add() или если тебе надо именно при изменни количества, то меняй change()
Тодор
20 февраля 2023, 22:16
0
Пробуй так:
<?php
$minimal = 5;
switch ($modx->event->name) {
    case 'msOnBeforeChangeInCart':
        $count = &$modx->event->params['count'];
        if ($minimal > 1 && $count < $minimal) {
            $count = $minimal;
        }
        $modx->event->returnedValues['count'] = $count;
        break;
}
Артур Шевченко
20 февраля 2023, 18:04
0
Ну вот у меня всё что возвращает submit() сразу на фронт улетает, а весь код в хуке после submit() почему-то не работает. При этом если поменять echo на return, то всё норм. Может я что-то не так делал, может что-то не так в AjaxFormitLogin, я не знаю. Надо ещё раз проверить.
Николай Савин
20 февраля 2023, 17:39
0
Ну перед die же echo json_encode
Ответ гарантированно должен быть и проверенно работает
Артур Шевченко
20 февраля 2023, 17:32
0
ХЗ, я думал из-за die(). Проверь на досуге где косяк.
Николай Савин
20 февраля 2023, 17:25
0
Почему не выполняется? Должен возвращаться $response, в случае если включен json_response и существует метод оплаты. Я прекрасно реализую ecoomerce методы ПОСЛЕ submit
Артур Шевченко
20 февраля 2023, 17:16
0
Ну не знаю. Факт в том, что в моём варианте с minishop2 >4.0.0 код после $miniShop2->order->submit() не выполняется.
Денис Усачев
20 февраля 2023, 17:02
0
может кому будет полезно: конструкция посредством Fenom

{set $baza_filter = $_modx->resource.baza_filter[0]}
{set $baza_color = $_modx->resource.color_filter[0]}
'optionFilters' => ' { "baza_filter":"'~ $baza_filter ~'" , "color_filter":"'~ $baza_color ~'"  } ' ,