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

Николай Савин
01 сентября 2023, 16:36
0
Здравствуйте. Определить подходящее время и день недели поможет такое условие
$showWA = true;
if ( date('w') > 5 || (date('w') == 5 && date('H') >= 16) ||  (date('w') < 5 && date('H') >= 17)) {   
    $showWA = false;
}
return $showWA;
Панда
01 сентября 2023, 11:15
0
Добрый день, столкнулись с таким багом. Сделали промокод со скидкой на 3 т.р., который появляется при добавлении в корзину товаров на 10 т.р. Как я понимаю стандартное применение данного компонента.

В итоге пользователь может добавить товаров на 10 т.р., появится промокод, добавляет его в корзину, после чего уменьшить сумму покупок на ~7 т.р.

В итоге у пользователя товары в корзину на ~3 т.р. и промокод на ту же сумму. После можно без проблем оплатить 10-100 рублей и ждать свой заказ на 3 т.р.

Как-то можно пофиксить этот баг? Или мы просто некорректно установили компонент?
biper
01 сентября 2023, 09:49
0
модалка содержит форму ajax, при отправке формы после заполнения (правильного, неправильного — все едино… или при обновлении страницы) окно закрывается вместе с сообщениями об отправке/ошибке, которые в модальном окне отображаются в это время… А нужно, чтобы событие обрабатывалось полностью в модалке — т.е. открытая модалка закрывалась бы ТОЛЬКО принудительно, с кнопки «закрыть окно». Вопрос: как сие реализовать ?!
Zulya
31 августа 2023, 21:57
0
Изменила context на load, list, view. Почистила кэш, перезагрузила права, завершила все сеансы.
По новому авторизовалась как обычный пользователь и попробовала снова оценить тикет и чужие комментарии. Ситуация не изменилась. Пишет permission_denied_processor.
Но вот комментировать может. Комментарии сохраняются.
Артур Шевченко
31 августа 2023, 21:40
+1
Доступ к контексту web должен быть не context, а load, list, view.
Zulya
31 августа 2023, 21:00
0
Здравствуйте! Да, политика TicketUserPolicy добавлена.
skrinshoter.ru/sLaq6rnydnH?a (скриншот). Для авторизации используется компонент Login.
Проверила в админке пользователей, которые регистрируются на сайте. Проверила, присваивается ли пользователь к группе пользователей или нет. Оказывается, корректно присваивается.
skrinshoter.ru/sLaEBS7X08W?a (скриншот).
Николай Савин
31 августа 2023, 19:59
+1
Согласно документации
Группе пользователей, которые получают права на написание комментариев и т.д. нужно добавить политику TicketUserPolicy. Вы это сделали?
Zulya
31 августа 2023, 19:16
0
Я полностью удалила компонент Tickets и установила. Но проблема, все таки не исчезла.
Когда авторизованный пользователь оценивает комментарий или тикет, выходит ошибка permission_denied_processor.
А когда админ оценивает, пишет, у вас недостаточно прав для этого действия.
Alexey
31 августа 2023, 16:59
0
Искал тоже. Вопрос решился за 5 минут. В ЭДО сбиса был прекрасный шаблон. Адаптивный + более компактно печатается чем выше представленные. Советую. Думаю они есть в любом ЭДО, но в некоторый могут быть более сложно сверстаны и запрятаны стили.
Семён Кудрявцев
31 августа 2023, 16:23
0
К сожалению директива map работает только в контексте http, поэтому её использовать на modhost.pro не получится.
Но можно попробовать другой вариант, правда более медленный, но если получится напишите сюда. Я честно его не пробовал, просто первое, что в голову пришло, но теоретически развить этот вариант можно попробовать
http {
    server {
        listen 80;
        
        location / {
            if ($http_accept ~* "text/html") {
                # Do something if the Accept header contains "text/html"
            }
        }
    }
}
Zulya
31 августа 2023, 16:07
0
Добрый день!
Ошибка permission_denied_processor — это ошибка самого Modx Revo или Tickets?
Сергей
31 августа 2023, 13:37
0
Спасибо, попробую это решение!
Артур Шевченко
31 августа 2023, 13:31
0
Админ загружает файл на сервер, потом в карточке пользователя указывает путь к загруженному файлу, в ЛК ты выводишь это значение в тэг
<a href="#" download></a>
Можно использовать дополнительные поля — extended, или установить ExtraFields и расширить модель пользователя.
max
max
31 августа 2023, 12:21
0
Вот возможно есть способ написать такой скрипт без использования map
Николай Савин
31 августа 2023, 12:19
0
В таком случае конечно проблема где-то еще. Причем вряд ли на сайте.
Алексей Андреев
31 августа 2023, 12:09
0
Ну по логике компонент обращается по такому адресу:
assets/components/mspreceiptaccount/payment/receiptaccount.php?InvId=320
Где 320 — это ID заказа.
Т.е. он смотрит состав заказа и данные получателя, генерирует на этой основе pdf-файл типа счёта на оплату.
320 заказов — это не много на мой взгляд. Но для проверки теории почистил таблицы modx_ms2_orders, modx_ms2_order_addresses, modx_ms2_order_products, оставив там инфу только о последних двух заказах. Но это тоже не помогает…
Николай Савин
31 августа 2023, 12:08
0
Если не ошибаюсь это невозможно в случае modhost. Уж точно не через map
max
max
31 августа 2023, 10:53
0
А есть идеи (подсказка), как этот скрипт использовать на modhost.pro? Конструкцию map нужно запихивать в http {}, а на modhost.pro есть доступ только к редактированию директивы server
Zulya
30 августа 2023, 20:40
0
Даже админ не может голосовать комментарии, добавить в избранное.
Но комментирование работает и для авторизованных пользователей и админов, что и удивляет. Как-то не логично. Если комментировать могут, но почему не могут оценивать комментарии и тикеты?
Когда админ оценивает комментарий, то выходит ошибка У вас недостаточно прав для этого действия.
Я даже переустановила компонент Tickets. Но не помогает.
Николай Савин
30 августа 2023, 18:49
0
Эта ошибка может возникать в случае большого, длительного запроса. Серверу Mysql просто не хватает времени обработать запрос. Что за запрос я в вашем случае не понимаю, но предположу, что объем данных, к которым обращаетесь — становится с годами слишком большим.
Возможно пора отрезать старые данные.