Андрей Шевяков
С нами с 28 сентября 2016; Место в рейтинге пользователей: #45Соединяем EasyComm и mFilter2
Всем привет, и сразу к делу (кстати пишу первый раз тут, если будут ошибки — исправим).
Довольно таки часто требуется в интернет магазинах или каталогах добавить возможность пользователям писать отзывы о товарах, с этим очень хорошо справляется компонент EasyComm. Но очень часто возникает и смежная задача, слепить EasyComm с mFilter2, а именно сделать сортировку по количеству отзывов или по рейтингу товара. Выкладываю готовое решение.
Добавляем в вызов mFilter2 следующий код:
Довольно таки часто требуется в интернет магазинах или каталогах добавить возможность пользователям писать отзывы о товарах, с этим очень хорошо справляется компонент EasyComm. Но очень часто возникает и смежная задача, слепить EasyComm с mFilter2, а именно сделать сортировку по количеству отзывов или по рейтингу товара. Выкладываю готовое решение.
Добавляем в вызов mFilter2 следующий код:
&loadModels=`easycomm`
&where=`{"class_key":"msProduct"}`
&leftJoin=`{
"ecThread": {
"class": "ecThread",
"on": "msProduct.id = ecThread.resource"
}
}`
&select=`{
"msProduct": "*",
"ecThread": "ecThread.rating_simple AS rating, ecThread.count AS reviews"
}` [msKuponator] Сайт-купонатор на miniShop2
[UserKarma] Версия 1.0.0
Вчера прозвучало очень интересное предложение по поводу компонента, который позволил бы автоматически перебрасывать пользователей по различным группам в зависимости от различных условий.
Не знаю на сколько я правильно понял человека, но надеюсь это будет близко к тому, что он хотел. Сам же я решил это сделать так: пользователям добавляется новое свойство userkarma (классу modUser), в которое записывается числовое значение. В специальном интерфейсе создаются произвольные правила в каких диапазонах кармы пользователь будет добавляться в какие группы или из каких удаляться.

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

Далее все очень просто — на обновление пользователя навешен плагин, который в зависимости от кармы пользователя меняет его группы.
Content Editor Tools
Я решил немного облегчить себе жизнь и сделал 2 плагина (на самом деле 3) для работы с контентом из админки. Этот набор плагинов я назвал Content Editor Tools, чтоб не путать их с похожими имеющимися.
Первое, это Rich Text Editor. Тут на выбор: TinyMCE или CKEditor. Второе: AssetsTV — это для работы с файлами. Пока всё в статусе беты.


Первое, это Rich Text Editor. Тут на выбор: TinyMCE или CKEditor. Второе: AssetsTV — это для работы с файлами. Пока всё в статусе беты.
Расширение любых таблиц MODX
В очередной раз понадобилось изменить таблицу сайта, менять которую не предусмотрено.
Что обычно люди делают в таких случаях? Верно, редактируют ядро или нужный компонент, и больше их не обновляют. Но ведь это неправильно, и можно решить вопрос иначе.
Пишем обычный плагин, выставляем для него событие OnMODXInit и меняем модель для нужных классов системы или дополнений. Например, я добавил id менеджера в заказ miniShop2:
Что обычно люди делают в таких случаях? Верно, редактируют ядро или нужный компонент, и больше их не обновляют. Но ведь это неправильно, и можно решить вопрос иначе.
Пишем обычный плагин, выставляем для него событие OnMODXInit и меняем модель для нужных классов системы или дополнений. Например, я добавил id менеджера в заказ miniShop2:
[Решено] Fenom и вызов полей пользователя
В документации есть пример вызова текущего пользователя через {$_modx->user}
Но как вызвать произвольного пользователя, по id?
Есть ли для этого быстрые феномовские штучки, или прийдётся писать сниппет, и уже его запускать через феном?
Но как вызвать произвольного пользователя, по id?
Есть ли для этого быстрые феномовские штучки, или прийдётся писать сниппет, и уже его запускать через феном?
MIGX, отображение названия вместо id в grid
Всем привет!
Давно интересует вопрос каким образом в MIGX в гриде отображать названия ресурсов вместо id.
Суть такая, есть некий набор данный, где в одном поле список значений tv, а в другом список выбора документов.

В гриде это потом отображается в виде id, что естественно неудобно для пользования.
Поэтому возникает вопрос, как правильно сделать отображение названия вместо id?
Буду признателен за любую наводку.
Давно интересует вопрос каким образом в MIGX в гриде отображать названия ресурсов вместо id.
Суть такая, есть некий набор данный, где в одном поле список значений tv, а в другом список выбора документов.

В гриде это потом отображается в виде id, что естественно неудобно для пользования.
Поэтому возникает вопрос, как правильно сделать отображение названия вместо id?
Буду признателен за любую наводку.
Скрипт автоустановки компонентов в MODX
Появилась нужда в скрипте автоустановки компонентов в MODX, который одинаково корректно можно вызывать и из веба, и из консоли. Так как все свои сервера отныне я настраиваю придерживаясь данной инструкции почти полностью, то за работу данного скрипта, запущенного из консоли сервера, настроенного по иному методу я не отвечаю.
2) Добавляет репозитории, которых не нашёл,
3) Качает и устанавливает/обновляет компоненты, которые указаны в списке.
Естественно и репозитории, и компоненты Вы можете указать свои.
Вот ссылка на скрипт — gist.github.com/gvozdb/84671636d763007bcc78
Что может скрипт:
1) Сверяет репозитории из своего списка со списком в вашем MODX,2) Добавляет репозитории, которых не нашёл,
3) Качает и устанавливает/обновляет компоненты, которые указаны в списке.
Естественно и репозитории, и компоненты Вы можете указать свои.
Вот ссылка на скрипт — gist.github.com/gvozdb/84671636d763007bcc78
Fenom + MobileDetect + NGINX + PHP5-FPM = 502 bad gateway
Здравствуйте.
Столкнулся с такой проблемой. У меня установлен Fenom, MobileDetect. Я разбил в чанке "layout" основную и мобильную версии тегами. Захожу на главную страницу — 502 ошибка. В логах nginx вот такое:
Самое интересное, когда отключаю плагин MobileDetect — всё работает. Помогите, пожалуйста, побороть эту неприятность.
Решение в комментариях.
Столкнулся с такой проблемой. У меня установлен Fenom, MobileDetect. Я разбил в чанке "layout" основную и мобильную версии тегами. Захожу на главную страницу — 502 ошибка. В логах nginx вот такое:
2015/08/24 13:24:23 [error] 9787#0: *216565 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: *2.**.*20.*9, server: kfm.****.kz, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-kfm2.sock:", host: "kfm.****.kz", referrer: "http://kfm.****.kz/manager/?a=element/template/update&id=1"Пояндексил — пишут, что это из-за ошибки в PHP. Nginx как бы сообщает, что PHP не отдал ему ответ.Самое интересное, когда отключаю плагин MobileDetect — всё работает. Помогите, пожалуйста, побороть эту неприятность.
Решение в комментариях.

