Александр Мельник

Александр Мельник

С нами с 02 сентября 2016; Место в рейтинге пользователей: #52
01 ноября 2020, 12:30
0
скорее всего будет работать только для первых двух вариантов (классический и статические файлы). Потому как в случае если сниппет создан как файловый элемент, то вызывать его нужно
$snippet = $modx->runSnippet('@FILE snippets/my_snippet.php', array('param' => 'value'));
Вроде бы как можно в аякс вызов передавать не просто название сниппета, а всю строку @FILE snippets/my_snippet.php' но не факт, что такой вызов пройдет проверку, которая основана на системных настройках, я прав?
01 ноября 2020, 10:49
0
Нет разницы как создан сниппет? — сниппет в базе данных, — статичный файл, — файловый элемент fenom (код отсутствует в базе), — через сторонние приложения, например gitModx (код отсутствует в базе)
27 октября 2020, 20:46
0
а каким образом вы выводите опции, отрисовывая товар в списке товаров? Вызываете в чанке сниппет msProductOptions?
Тогда как вариант, сохраните вызов данного сниппета в fenom переменную.
Ниже проверьте условие, если она пуста (опций нет) то выводите кнопку, если не пуста — то отображаете содержимое этой переменной.
27 октября 2020, 20:35
0
я опечатался, а сайт не дает править комментарий если прошло какое-то время.
Но думаю у вас получится, я делал валидацию для файла ранее и именно как хук, а не как валидатор.
По идее если вы хотите работать с валидатором то тоже можно, но вам нужно получать в сниппете upload как простую строку, в которой регулярным выражением находить расширение файла.
25 октября 2020, 12:07
0
Возможно тут нужно понять, в какой момент происходит валидация данных.
Может быть formit проводит все операции с валидацией до отправки формы, по крайней мере так должно быть логично. А если форма не отправлена, то наверное в массиве $_FILES ничего не будет?
Попробую тот же скрипт (ну немного его переделав) вызвать не как валидатор, а как хук, указав его перед email
24 октября 2020, 20:17
0
а вот тут я с вами полностью согласен.
24 октября 2020, 20:12
0
ну вроде как нужно согласиться с вами, ты разработчик, а значит только ты в ответе. Устанавливаешь сторонне ПО будь добр проверь его сам.
Знаете я неделю-две как увлекся теорией docker. Изучаю как устрены образы и соответственно какой образ лежит у самых истоков. Пользователи либо используют готовые образы или строят свои на основе готовых. Так вот выяснилось что в основе 99 процентов всех образов лежит — alpine linux — легковестный дистрибутив основанный на еще более легковесной версии busybox. Так вот оказывается что в alpine linux есть огромная дыра в безопасности и 99% всех образов в докер хабе — небезопасны. Замечу — официальных образов! И тогда возникает вопрос — поскольку сейчас вся разработка ориентируется на упрощение и подход установки пакетов (в php это composer, в nodejs это npm, в python это pip, в докере это docker hub) то как разработчик может своими силами гарантировать неуязвимость всего этого? Ведь это сотни тысяч чужих файлов. Разве дополнения в modx не тоже самое? как физически можно оценить безопасен код или нет…
24 октября 2020, 19:56
0
да, вы правы Евгений. Беда в том, что все наши «хотелки» так или иначе разрушат экосистему магазина.
Может быть хорошим вариантом был бы «ребрендинг»)) если я правильно использую слово.
Совершенно новый магазин, без поддержки и оглядки на minishop. Новые дополнения к нему…
24 октября 2020, 19:09
0
соглашусь, насчет «старая цена». И правда не совсем логичное поле. Наверное более разумен подход как в битриксе — есть базовая цена. И дальше ты можешь ее модифицировать — сделать скидку в процентах от нее, сделать скидку на фиксированную сумму и так далее.
24 октября 2020, 18:44
0
откуда мне знать, мало того что я не спец, так еще и не видел ваш код.
Просто когда-то я имел опыт работы с джумлой и вордпресс и обе эти CMSки сами по себе были достаточно защищены. Но изза обилия сторонних плагинов, их безопасность стремилась к нулю.
Но опять же, я лишь высказал свое опасение, на мой взгляд сам факт авторизации без знания пароля уже звучит небезопасно, это как снятие денег с карточки без пинкода. Но я не специалист, раз модераторы выставили компонент в магазине, значит они его проверили.
24 октября 2020, 18:37
0
я видимо не понимаю о чем вы говорите, простите.
Когда я провожу на сайте авторизацию пользователя, то я объект c пользователем помещаю в $modx->user а также авторизую его в определеленном контексте $modx->user->addSessionContext('web');
мне кажется что факт новой сессии здесь не важен, важно то что, можно авторизоваться без пароля.
Но раз модераторы магазина проверили и сочли безопасным, то молчу)
24 октября 2020, 18:29
0
разве процессоры modx позволяют авторизацию без проверки пароля?
24 октября 2020, 18:26
0
так же всегда интересовал вопрос, компоненты распространяемые через modstore они проходят проверку и анализ на уязвимости? Кто несет (если несет) ответственность, если купленный компонент приведет к взлому сайта или другим печальным последствиям?
24 октября 2020, 18:17
0
Я вот понимаю, что навлеку на себя гнев и осуждения, но признаюсь. Не обновляю никогда modx. У меня под обслуживание около 40 проектов на modx и я уже не раз сталкивался, что обновление вызывает сбои. В 80 процентах случаев.
24 октября 2020, 18:14
0
насколько это безопасно? Не создаст ли это дыру в безопасности modx?
как вы обходите факт хеширования паролей, просто авторизуете по логину, без проверок?
23 октября 2020, 12:39
+6
Добрый день.
1) Возможности ручной сортировки опций (характеристик). Часто сталкиваюсь с требованием от закзчика или менеджера о необходимости отобразить характеристики товара на странице товара в строго определенном порядке, причем иногда даже этот порядок должен быть различный у разных товаров. Сейчас повлиять на очередность крайне сложно, плюс наблюдается отображение характеристик в произволном порядке, обновил страницу — характеристики вывелись в другой очередности.
2) Встроенный механизм задания нескольких цен товару. Некая отдельная вкладка в которой менеджер может визуально построить цепочку условий, при котором цена будет изменятся. К примеру. Если этого товара в корзине более 5 штук и цвет синий, то цена каждого товара равно основная цена минус 5 процентов.
3) Ну понимаю, что это предложение спорное и затрагивает финансовые интересны, но написать напишу. Хорошо бы интегрировать в minishop то что сейчас представлено отдельными компонентами, но необходимо в каждом магазине. — импорт-экспорт товаров и категорий, — промокода (хотя бы самый простой вариант без изысков), массового редактирования товара (хотя бы инструменты по редактированию цен, например массово уменьшить стоимость на 10 процентов у всех товаров этой категории) и так далее. Сразу оговорюсь, что речь идет о доступности этих инструментов для менеджера в админке, а не для программсита, который может в консоли написать скрипт по изменению цены товаров в категории.
22 октября 2020, 17:41
0
отключите отправки при помощи smtp и проверьте, не заработает ли.
Достаточно на той же странице системных настроек у настройки mail_smtp_auth указать НЕТ и очистить кеш.
22 октября 2020, 16:07
0
хорошо бы сначала понять в чем конкретно проблема.
Перейдите в системные настройки, выберите core и почта
Посмотрите какой у вас там указан почтовый ящик, убедитесь, что у вас есть к нему доступ, что вы знаете от него пароль и что в системных настройках указан правильный пароль.
Раз у вас отправка пеерстала работать внезапно, то я склоняюсь к тому, что кто-то просто или сменил пароль или же совсем удалил почтовый ящик.
22 октября 2020, 15:58
0
Конечно, любая почта у вас пеерстала работать, ведь нет доступа к SMTP серверу.
Что то случилось у вас — может быть почту кто-то удалил, через которую шла отправка, может у сервиса почтового изменились параметры подключения, например порт, может просто даже кто-то сменил пароль у того почтового ящика, через который шла отправка.
22 октября 2020, 15:18
0
Первая ошибка как раз и говорит о том, что письма не могут быть доставлены. У вас включена отправка через SMTP. Проверьте в системных настройках — не сбились ли настройки подключения по smtp