Николай Савин

Николай Савин

С нами с 06 июня 2015; Место в рейтинге пользователей: #5
Николай Савин
30 января 2022, 10:14
+2
У вас некорректная логика. Такую ошибку нужно выводить при попытке положить товар в корзину и не давать это сделать изначально.
Здесь этот вопрос обсуждался неоднократно. Воспользуйтесь поиском.
Вот например modx.pro/help/9381

Функционал ошибок есть. Основан на плагинах. На каждое действие (почти) есть свое событие.
Список событий найдете в документации. Создаете плагин на нужное событие. Выполняете проверку — возвращаете нужный ответ
Николай Савин
30 января 2022, 09:45
+1
Куда вернуть ошибку? Клиенту вывести на экран в момент добавления товара в корзину? Тогда товар нужно удалять не из заказа, а из корзины.
Или же удалить из уже созданного заказа? Тогда совсем не понятно куда вернуть ошибку.
Это разные сущности, и реализация разная будет.
Николай Савин
30 января 2022, 09:42
+1
Изучать исходный код компонентов. Читать схожие вопросы и инструкции здесь на форуме.
Николай Савин
29 января 2022, 18:47
0
это полноценный маркетплейс дополнений для CMS (тут просится MODX, но на самом деле не обязательно), со всеми сопутствующими сервисами вокруг него: управление пакетами, управлением ключами и лицензиями, техническая поддержка, арбитраж спорных вопросов, биллинг и многое другое, что обычно бывает скрыто под капотом
Николай Савин
27 января 2022, 19:37
0
В MODX3 уже есть. По плану обещают релиз стабильной версии через два дня.
Николай Савин
27 января 2022, 19:36
0
Добрый день. Да доработку можно заказать, напишите в телеграм мне. Обсудим.
Здесь главная забота — отсутствие площадки для тестов. Нужен клиент для подключения.
Николай Савин
25 января 2022, 19:16
0
А чем принципиально отличается разработка админки под slim от разработки простой админки под MODX?
Николай Савин
25 января 2022, 18:06
0
Лучше собрать чужой опыт в одном удобном руководстве, чем не размещать свое вообще нигде.
Мы все учимся на чужом. Я до сих пор подсматриваю какие то технические решения в чужом коде. И использую удачные решения. Плюсь правда все чаще с каждым годом, но это уже другая история.
Николай Савин
25 января 2022, 11:37
+1
Я бы зашел со стороны токена.
При авторизации юзера куку сохраняю как токен в базе. При выходе — затираю.
Соотвественно если нода имеет доступ к этой куке — достаточно простым запросом проверить есть ли юзер с таким токеном. Если есть — он залогинен. Если нет — значит не залогинен и куку можно зачистить.
Николай Савин
25 января 2022, 10:47
0
Докер под виндой никогда нормально не работал. Это нормально такая скорость. Он просто не предназначен для винды.
Николай Савин
25 января 2022, 10:27
0
Под виндой небось работаете?
Николай Савин
24 января 2022, 20:52
0
Олег вы комментируете сообщение 5-летней давности. Шанс что вам ответят — невелик.
Николай Савин
20 января 2022, 13:44
0
Речь идет только о фронте. В админке пока ничего не меняется, ждет своей очереди.
В части ORM тоже. Хотя есть конечно фантазии переключиться на Eloquent
На VESP только один Василий пишет. Из нашей команды — никто не пользуется этим.
Николай Савин
20 января 2022, 12:22
0
В этом году весь JS будет полностью переписан на современный стиль. Без jQuery зависимости, возможно в модульном решении, при котором нужные модули подключаются по мере необходимости. Выбросим галерею, которой все равно никто не пользуется. Появится JS API. Будут, думаю, нативные события, а не колбэки. Ну и так далее. Не вижу смысла переписывать или как то модифицировать то, что есть сейчас. Там все целиком пора выбрасывать.
Николай Савин
20 января 2022, 00:18
0
Вы без проблем можете использовать свою логику внутри собственного доработанного файл скриптов. Он подключается через соответствующую системную настройку.
Николай Савин
19 января 2022, 13:27
+4
Набросал небольшой рефакторинг этого кода
Упростил код плагина, перенес содержимое в компонент
github.com/biz87/iiko

Код по-прежнему хромает, но первый шаг к оптимизации сделан.
Николай Савин
19 января 2022, 10:49
0
Жень, нельзя делать плагины с таким количеством кода и тем более с функциями.
Нужно переносить в классы. Бить на методы. Это прям антипаттерн. Нужен серьезный рефакторинг.
Николай Савин
16 января 2022, 16:10
-1
Это не мой код, это Ваш код.
Я лишь подсказал как его на феном переписать. Мелкие нюансы
Николай Савин
16 января 2022, 15:21
+1
Вы здесь наткнулись сразу на две проблемы

В этой строке не нужны фигурные скобки, запускающие феном, так как вы и так внутри феном конструкции
'where' => ['news-type:LIKE' => '%{$.get.news-type}%'],

Но если убрать фигурные скобки — то тоже ничего хорошего не получится
'where' => ['news-type:LIKE' => '%$.get.news-type%'],

Здесь уже другая проблема — нельзя писать феном конструкции внутри кавычек.
Здесь нужно соединить строки с % и get конструкцию через конкатенацию
Вот так
'where' => ['news-type:LIKE' => '%' ~ $.get.news-type ~ '%'],
И тут еще третья проблема, связанная с правилами именования переменных. Проблема с дефисом. В PHP нельзя использовать дефис в именах переменных. А вот в массиве ($.get это ведь массив) можно.
Пожалуй вот такая конструкция должна отработать корректно

'where' => ['news-type:LIKE' => '%' ~ $.get['news-type'] ~ '%'],