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

Андрей
23 ноября 2021, 07:56
0
И на гитхаб было написано, и вызовы формы стандартные из документации, и форма стандартная… В принципе не заморачиваюсь этим, так как решил проблемы без использования компонента. Просто увидел тему и тоже написал, подтверждая что проблема носит массовый характер. Вы постепенно увидите, что сайты на которых есть связка этих компонентов будут бомбардироваться спамом все больше и больше.
Андрей
22 ноября 2021, 22:56
0
на парочке сайтов при включенном компоненте вообще формы не отпарпвляются, пишет ошибку в форме, при этом сам гугл пишет «Мы обнаружили, что ваш сайт не проверяет токены reCAPTCHA. Подробную информацию вы найдете на нашем сайте для разработчиков.»
Возможно, за достаточно долгое время использования, я никогда не сталкивался с проблемами как с первым, так и со вторым компонентом. Обычно проблемы обнаруживаются в коде форм, вызовах сниппета, в html коде страницы.

Что касается спама, да, это не панацея, но позволяет существенно сократить поток, по крайней мере на моих проектах так.

Связывался с разработчиком — помощи никакой не дождался, резюме такое — у меня все ОК, разбирайтесь сами…
А какой помощи нужно ожидать? Компонент бесплатный, автор возможно делал решение для себя, потом упаковал в пакет и выложил для всех, у него работает, у большинства пользователей тоже.

Если есть какие то проблемы — пишем issue на github, с подробным описанием ошибки, как воспроизвести и т.д. И ждём когда у автора будет время это проверить. Либо можно обратиться за платной помощью к специалистам, чтобы разобраться в проблеме.
Артур Шевченко
22 ноября 2021, 21:37
0
Я не знаю, что за поле «Прежняя цена», но вот плагин для автоматического заполнения поля старая цена если новая цена меньше, той что была
<?php
if($resource->get('class_key') == 'msProduct'){
    $res = $modx->getObject('msProduct', $resource->get('id'));
    if($res->get('price') > $_POST['price']){
        $resource->set('old_price',$res->get('price'));
    }
}
Андрей
22 ноября 2021, 20:39
0
У меня на нескольких сайтах стоит reCaptchaV3 — спам летит за сдрасти…
на парочке сайтов при включенном компоненте вообще формы не отпарпвляются, пишет ошибку в форме, при этом сам гугл пишет «Мы обнаружили, что ваш сайт не проверяет токены reCAPTCHA. Подробную информацию вы найдете на нашем сайте для разработчиков.»
Связывался с разработчиком — помощи никакой не дождался, резюме такое — у меня все ОК, разбирайтесь сами…
Андрей
22 ноября 2021, 12:49
+1
В общем сейчас у меня установлена ReCaptchaV2 3.2.2-pl, которая поддерживает RecaptchaV3. Может я что то пропустил?
Так рекапча и не работает, установлен один компонент — ReCaptchaV2, а подключение используется от другого — reCaptchaV3.

Либо установите нужный компонент, либо используйте правильную инструкцию — https://github.com/sepiariver/recaptchav2/blob/master/README.md
Николай Савин
21 ноября 2021, 20:59
1
+2
Вам нужно выполнить вот этот код для решения вопроса
$modx->removeExtensionPackage('amocrm');
Его можно выполнить в консоли MODX (есть такой популярный компонент)
либо создав сниппет и вызвав его где-то на произвольной странице
Валерий
21 ноября 2021, 20:20
1
0
Проблему решил. Добавил в вызов фильтра:
&leftJoin=`{"Remains":{"class":"msprRemains","on":"msProduct.id = Remains.product_id AND Remains.remains > 0"}}`
&loadModels=`msproductremains`
&groupby=`msProduct.id`
&select=`{"msProduct":"*","Remains":"SUM(Remains.remains) as remains"}`
Дмитрий
21 ноября 2021, 14:05
0
Скажите, пожалуйста, поддерживает ли данный модуль интеграцию с онлайн кассой при работе по агентским договорам? то есть отдельное выделение агентской комиссии (с одним налоговым режимом) и непосредственно продаваемой услуги (возможно с другим налоговым режимом)?
Николай Савин
20 ноября 2021, 18:45
0
@Илья Уткин обрати внимание пожалуйста
Дмитрий
20 ноября 2021, 18:35
+1
Итак. 3 дня мучений дали всё-таки результат.
всё вышенаписанное — действительно так.
Основной вопрос который меня мучил — почему сертификаты всех сайтов, кроме mod*.pro проверяются нормально, а сайты, mod*.pro — выдают ошибку. Очень хотелось бы верить что проблема где-то у меня в настройках сервака, но реальность оказалась иной.
Проблема кроется в том, что сервер modhost.pro использует старый протокол TLS1.0.
Многие клиенты этот протокол просто «забыли». Они оперируют TLS1.2 и выше.
подробности здесь:
question-it.com/questions/2469932/nevozmozhno-ustanovit-ssl-soedinenie-pri-wget-v-ubuntu-1404-lts
Обходное решение здесь:
stackoverflow.com/a/61568390
Сейчас пакеты качаются без ошибки.
Николай Савин
20 ноября 2021, 18:33
+1
modxPro и modStore — Это разные организации. С подобными пожеланиями вам на info@modstore.pro
TITAN-UZ
20 ноября 2021, 15:56
0
Пожалуйста добавте тест платных плагинов на локальном тестовом домене (localhost или demo.ru) если это возможно
Николай Савин
20 ноября 2021, 15:31
0
Можно просто очистить валидацию этого поля и спокойно работать.
Оставьте какую нибудь простенькую санитизацию и все.
Валерий
20 ноября 2021, 15:14
0
В одной из веток комментариев уже задавал вопрос, но лучше опишу проблему полнее, так, как ее вижу сейчас:

1. Для вывода товара на сайте используется компонент msFilter2.
2. Для отслеживания остатков компонент msProductRemains
2. В карточках товара важно указывать возможность «Купить» или статус «Нет в наличии». Для чего используется конструкция:
Вызов сниппета, в каждой карточке (в чанке msProducts.row):
[[!getRemains:toPlaceholder=`remains`? &id=`[[+id]]`]]
И условие:
[[!+remains:lt=`1`:then=`<div class="no-remains">Нет в наличии</div>`:else=`<span><button class="btn btn-primary list-prod__submit" type="submit" name="ms2_action" value="cart/add">Купить</button></span>`]]
Условие срабатывает прекрасно, если просто зайти на страницу каталога.
Однако, на странице выдается 20 товаров из множества, таким образом есть еще и пагинация. Если переключаться через пагинацию, то условие выше не работает, потому что в каждую карточку загружается значение первой карточки. Если обновить страничку, то все считается корректно.

Я так понимаю, что здесь мешает сам фильтр. Может быть кто-то встречался с такой проблемой и решил ее?
Валерий
20 ноября 2021, 14:57
0
Есть уточнение. Проблема в кнопках пагинации. Т.е, если перейти просто на ссылку на странице, то все значения подгружаются верно, а если переходить по кнопкам page.nav, то без обновления страницы значение одно на все карточки.
Александр Мельник
20 ноября 2021, 12:16
0
Кстати, а почему вы используете компонент recaptcha2, есть помоему специально для третьей версии отдельный компонент.
Александр Мельник
20 ноября 2021, 12:10
0
Пропускает конечно, этот (как и любой другой) инструмент не дает 100% гарантии. У меня тоже на более чем 20 сайтах установлена recaptcha3 и на каждом из этих сайтов есть спам. Ну вернее на 4 сайтах спама нет, но это не заслуга captcha а просто эти сайты забыты и Богом и спамерскими программами.
Совместно с captcha мудрю и другие способы защиты (скрытые поля, которые якобы спам бот должен все равно заполнить, варианты через js которые предложил Артур и прочее), но все это если и помогает то на пару недель, после чего спам продолжает идти как и раньше.
Опытным путем нашел «лучший для себя способ», однако применяю его там, где пишу сайт с нуля, а не на CMSках. Не использую тег form вообще для создания форм, верстаю все формы так, чтобы они не были заключены в
<form>
. Да это лишает нас события submit, но поскольку я все равно все свои формы обрабатываю собственными js обработчиками, то для меня это не проблема. Спам бот не определяет такие формы и не атакует их (возможно что на днях они научаться делать и это).
Артур Шевченко
20 ноября 2021, 11:14
+1
Есть предложение выкинуть капчу и сделать так. Создаешь скрытое поле с именем например secret. В вызове в параметре validate пишешь secret:contains=^Bdsvgfdbr^ и пишешь js который при загрузке страницы или при попадании любого поля формы в фокус будет заполнять secret значением Bdsvgfdbr (любой набор символов).