Для разработчиков

Почему AjaxForm использует сессии?

Всем привет, давно не виделись!

Переодически почитываю новости на сайте и вот увидел ветку комментариев про хранение данных в сессии.

Казалось бы, совершенно заслуженный камень в мой огород, как автора дополнения. Зачем использовать сессии для ajax сниппетов, ведь сама по себе эта технология сессий не требует? Так-то оно так, но в мире MODX всё несколько сложнее.
Василий Наумкин
04 августа 2021, 10:03
modx.pro
1
3 083
+20

Поиск источника ошибки Instantiated a derived class

Всем привет!

На одном из сайтов стала появляться ошибка следующего содержания:
Instantiated a derived class CollectionContainer that is not a subclass of the requested class ArticlesContainer

которая забивала Журнал ошибок за 2-а дня на 60 мб.

Поиск источника по БД, через сниппеты, через Batcher и другие способы не принесли результата.

Иван Бочкарев
23 мая 2021, 22:39
modx.pro
4
1 594
+17

Как я написал YandexMarket2 на Vue.js

Привет, сообщество!

Вчера опубликовал большое обновление компонента YandexMarket2 и, наконец, могу рассказать о технических подробностях, которые анонсировал ещё здесь.
Серии уроков не будет — уж слишком долго пишу тексты.

Так вышло, что я уже больше двух лет активно не разрабатывал сайты на MODX, позабыл Ext JS, быстро привык к Vue.js на фронте, к PHP 7+ с автозагрузкой классов и захотел привнести это в нашу систему. Изначально планировал сделать компонент со слабой связанностью с MODX, чтобы можно было легко портировать на MODX3, а то и на другие системы. Скажу сразу: внедрить всё не удалось, а то бы до сих дорабатывал первую версию.

Заметкой хочу показать процесс и удобство разработки компонента, а может и подтолкнуть кого-то ещё написать компонент с интерфейсом на Vue.js, а то и полноценную админку для MODX4 (шутка. или нет :)
Евгений Шеронов
23 мая 2021, 22:13
modx.pro
5 518
+27

[ИНТЕРЕСНО] Server-Sent Events - Уведомления с сервера в браузер в реальном времени

Всем привет! Искал простой способ отправлять уведомления о смене статуса заказа в браузер пользователя. Из вариантов были websocket и сторонние сервисы push-уведомлений. С websocket я разобраться не смог, пробовал запустить workerman на shared-хостинге, но не вышло. Сторонние сервисы вроде sendpulse или comet-сервера не устраивают, потому что они сторонние, их оставлю на крайний случай.

И совершенно случайно я наткнулся на Server-Sent Events. Всё с ними хорошо, кроме одного, опытным путём я понял, что он должен быть запущен всегда, т.е. нельзя запустить его из другого скрипта и передать параметры. Или можно, если кто-то знает как, напишите в комментариях.

Так или иначе я его для своих задач приспособил. Вопрос такой: насколько это будет нагружать сервер и, если никто не знает, то подскажите как можно провести тест под нагрузкой? Предполагается от 1 до 5 тысяч клиентов одновременно.
Артур Шевченко
17 мая 2021, 20:14
modx.pro
1
1 184
+1

Альфа релиз альтернативной админки для MODX

Всем привет!

В продолжение недавней дискуссии публикую то, что удалось сделать за два дня (точнее за 23 часа).



Fi1osof
11 апреля 2021, 14:11
modx.pro
4
2 354
+17

Помогите протестировать PR для ускорения выпуска Revolution 3.0

MODX 3 приближается к замораживанию функции перед бета-циклом и последующим релизом. Так как нам нужна максимально возможная помощь в тестировании и проверке ключевых проблем и Pull Requests («PRs»), мы создали это учебное пособие по подходу для тех, кто не привык жить в командной строке и работать с git'ом каждый день.

В настоящее время существует более двух десятков PR, которые должны быть объединены перед окончательным альфа-релизом.

Во время альфа версии, вещи, которые нарушают обратную совместимость, являются кандидатами для включения в релиз MODX 3.0. Однако, во время предстоящей бета-версии, больше никаких изменений, нарушающих совместимость, приниматься не будут. Бета-версия предназначена для шлифовки вещей и работы над тем, чтобы как можно больше дополнений работали без рефакторинга. Многие уже работают.

Иван Бочкарев
21 февраля 2021, 23:11
modx.pro
2
1 965
+21

[СДЕЛАЙ САМ] Поиск на сайте по-быстрому

ВАЖНО!!!

Данное решение не является учебным и рекомендуется к использованию только на собственных проектах, с целью освоения работы с api modx. Для изучения лучших практик, анализируйте код дополнений с сайта https://modstore.pro/

Я знаю, что есть два отличных компонента для организации поиска по сайту это SimpleSearch, который по-моему не работает с чанками на fenom, и mSearch2, который платный и большой. В связи с этим я решил написать свой вариант поиска — максимально простой и понятный, да неуниверсальный, но позволяющий по нескольким ключевым словам найти нужный ресурс. По сути это форма. которая через ajax отправляется на сервер, где формируется sql-запрос в БД и результат возвращается на фронт. Итак перейдём к коду.
Артур Шевченко
22 января 2021, 21:08
modx.pro
5
3 230
+10

msPromoCode, date.strftime is not a function

После обновлений пакетов перестал отображаться список промокодов в компоненте msPromoCode.
Ошибка в консоли:

ms2.utils.js:9 Uncaught TypeError: date.strftime is not a function
    at constructor.miniShop2.utils.formatDate [as renderer] (ms2.utils.js:9)
.....
Установлены modx 2.8.1, minishop2 2.7.0, msPromoCode 1.4.4-pl

Судя по всему это отголоски следующей проблемы:

modx.pro/help/11562
github.com/bezumkin/Tickets/pull/169
github.com/Ibochkarev/miniShop2/issues/474
github.com/Ibochkarev/miniShop2/commit/f3b36a308d76b979982cc9fdc47fb420fb035bb4

Возможное решение — обновить файл core/components/mspromocode/controllers/home.class.php следующей строкой в конце тела функции loadCustomCssJs():

$this->addLastJavascript($this->miniShop2->config['jsUrl'] . 'mgr/misc/strftime-min-1.3.js');
@Павел Гвоздь вам на заметку.
Антон Тарасов
05 января 2021, 16:12
modx.pro
1 323
+4

Чего не хватает в miniShop2?



Всем привет!

Ребята, ответьте на пару вопросов в комментариях касаемо minishop2.

Что не хватает в minishop2, чтобы вы хотели улучшить, что нужно исправить.

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

Заранее спасибо за обратную связь!!

Отправить информацию об ошибке/улучшению можно тут
Отправить PR можно тут

UPDATE:
Всем спасибо, за ответы. В ближайшее время выйдет 2.6.0, а далее будем работать с хотелками и исправлениями.
Иван Бочкарев
23 октября 2020, 11:47
modx.pro
3 968
+15

Покупка на ultron.pro! Не забудьте обновить ядро и компонент Gallery

Пару месяцев назад была куплена сборка на сайте ultron.pro для знакомого который открыл кафе.
Все было хорошо, пока сегодня не зашел на сайт и не обнаружил что он взломан.

Ядро было обновлено сразу до версии 2.7.3-pl. Но компоненты не стал обновлять.

Дак вот если собираетесь покупать не забудьте сразу обновить компонент Gallery, так как там стоит 1.7.0-pl который был взломан в 2018 году.
Почему то разработчик не позаботился проверить свои сборки на присутствие этого компонента, хотя прошло уже 2 года.

Собственно ответ тех поддержки был: сам дурак) А то что сборка с дырками по умолчанию продается, это нормально.

Да фиг с ним с моим сайтом. Но ожидать того что сборка по умолчанию пробита, как то даже в мысли не приходило. Советуешь еще потом зайти на этот сайт подобрать какой то шаблон себе. В итоге получаешь старую сборку, которая в принципе может не работать после обновления всех компонентов.

Вообще чтобы долго не замарачиваться проще скачать сайт целиком к себе на хостинг через команду:
wget -r -k -l 7 -p -E -nc http://site.com/
и посадить его на свою сборку.
Андрей Степаненко
05 октября 2020, 18:27
modx.pro
2
3 028
+4