Евгений Лазарев
С нами с 06 августа 2018; Место в рейтинге пользователей: #417TicketComments. Сделать подписанными на ленту комментариев определенных людей
Есть вопрос такой. Сразу говорю это не блог. На modx реализован портал управления заявками. Есть пользователи 2х групп: создатели заявок и исполнители. Создатель создает заявку и назначает из группы исполнителей определенного пользователя. Использую TicketComments. То есть внутри заявки это 2 пользователя могут переписываться. Само собой понятно когда создается заявка то галка «Уведомлять о новых комментариях» стоит у того, кто создал заявку. А как принудительно поставить эту же галку исполнителю. Если захочет он потом ее снимет — но изначально чтобы она у него стояла. А то будут писать — а он не увидит.
Помогите с оптимизацией.
Задача такая. В неком главном ресурсе внутри есть блоки задач а в каждом блоке есть задача (Это все в виде ресурсов и коллекций). То есть 2х уровневая структура. У каждоый задачи есть ответственный (пользователь зарегестрированный в системе принадлежащей определенной группе).
Вывод всего этого дела простой — pdoResources и в нем pdoResources. Получается запросов к БД для вывода будет: количество блоков задач + 1.
Но еще нужно вывести select с пользователями к каждой задаче. Это получается запросов к БД будет еще: количество задач.
Список пользователей всегда одинаковы единственное но нужно в этом списке сделать checked на определенном пользователе указанном в задаче.
Можно ли как нибудь это оптимизировать без такого огромного количества запросов к БД?
Вывод всего этого дела простой — pdoResources и в нем pdoResources. Получается запросов к БД для вывода будет: количество блоков задач + 1.
Но еще нужно вывести select с пользователями к каждой задаче. Это получается запросов к БД будет еще: количество задач.
Список пользователей всегда одинаковы единственное но нужно в этом списке сделать checked на определенном пользователе указанном в задаче.
Можно ли как нибудь это оптимизировать без такого огромного количества запросов к БД?
Помогите с запросом
Добрый день. Помогите пожалуйста с запросом.
[[!pdoUsers?
&groups=`teacher`
&limit=`0`
&tpl=`tplTeachersToSelect`
&innerJoin=`{
"Student":{
"class":"modUserProfile",
"on":"Student.extended LIKE CONCAT('%\"id_teacher\":\"',modUser.id,'\"%')"
},
"UserGroupMember": {
"class": "modUserGroupMember",
"on": "Student.internalKey = UserGroupMember.member"
},
"UserGroup": {
"class": "modUserGroup",
"on": "UserGroupMember.user_group = UserGroup.id"
}
}`
&select=`{
"modUser": "id",
"Student":"COUNT(Student.internalKey) as count"
}`
&where=`{
"UserGroup.name":"student"
}`
&sortby=`{
"count":"ASC"
}`
&showLog=`1`
]]
Суть в чем ищет пользователей группы «6» и для каждого пользователя ищет пользователей «student» для количества. НО! Если для пользователя «6» нет ни одного пользователя «student» то он его просто не выводит. А мне нужно его выводить просто как count указать 0. Помогите с fenom
Не первый раз сталкиваюсь с тем что нужно сделать проверку условия и в зависимости от этого выполнить тот или иной сниппет и при этом при конструкции написанной ниже так не получится — какая то проблема с кавычками видимо.
Но сейчас столкнулся с проблемой (работаю с профилем то есть в шаблоне а не в tpl) что создав тип пользователя в чанке я могу его вывести с помощью [[+type]] но не могу вывести с помощью fenom. Конструкции типа
Ок. Сделал так:
[[+type:is=`student`:then=``:else=``]]
Поэтому понравилась работа в fenom.Но сейчас столкнулся с проблемой (работаю с профилем то есть в шаблоне а не в tpl) что создав тип пользователя в чанке я могу его вывести с помощью [[+type]] но не могу вывести с помощью fenom. Конструкции типа
{$_modx->getPlaceholder('type')}
и {$_pls['type']}
не помогают.Ок. Сделал так:
{var $type = "[[+type]]"}
{$type}
Все ок — выводится. Нужно сделать условие к примеру{if $type in ['school','expert']}
yes
{else}
no
{/if}
Не работает правильно. Выводит нет. Хотя сам тип равен 'school'. Помогите плиз. Помогите с источником файлов в Migx
Уважаемые эксперты. Не пройдите мимо. Помогите с источником файлов.
Есть созданный и проверенный годами источник файлов «images» — images/ в корне. Все с ним супер работает.
Задача: нужно сделать вложенный migx. Делаю из админки в панели приложений. В первом уровне выводятся к примеру заголовки, во втором изображения (Сколько загрузил столько и должны выводиться). Во втором уровне изображения сделаны путем не inputType, а inputTv ссылающийся на дополнительное поле как раз с источником файлов «images»
Но при выводе всего этого хозяйства через getImageList у меня выводятся пути но не подтаскивается источник файлов.
Как быть? Что делать? Подскажите пожалуйста. Всю голову сломал.
Есть созданный и проверенный годами источник файлов «images» — images/ в корне. Все с ним супер работает.
Задача: нужно сделать вложенный migx. Делаю из админки в панели приложений. В первом уровне выводятся к примеру заголовки, во втором изображения (Сколько загрузил столько и должны выводиться). Во втором уровне изображения сделаны путем не inputType, а inputTv ссылающийся на дополнительное поле как раз с источником файлов «images»
Но при выводе всего этого хозяйства через getImageList у меня выводятся пути но не подтаскивается источник файлов.
Как быть? Что делать? Подскажите пожалуйста. Всю голову сломал.
Вопрос по запросу.
Подскажите пожалуйста кто шарит. Суть такая: нужно вывести список учителей (это юзеры с ролью teacher). У выведенного списка учителей нужно в скобочках указать количество учеников, которые им принадлежат (данный признак у учеников лежит в профиле в поле extended в поле id_teacher). Все дело уже реализовано с помощью кода:
[[!pdoUsers?
&groups=`teacher`
&limit=`0`
&tpl=`tplTeachersToSelect`
]]
А в самой tpl:[[!pdoUsers?
&tpl=`@INLINE`
&where=`{"modUserProfile.extended:LIKE":"%\"id_teacher\":\"[[+id]]\"%"}`
&setTotal=`1`
]]
<option value="[[+id]]">[[$fullname]] ([[+total]])</option>
Не работает fenom
Подскажите. Только недавно столкнулся с fenom. Есть код в начале сайте
$user_role = '';
if (!isset($_SESSION['user_role'])){
$roles = ['student','teacher'];
foreach ($roles as $role){
if ($modx->user->isMember($role)){
$_SESSION['user_role'] = $role;
$user_role = $role;
break;
}
}
} else {
$user_role = $_SESSION['user_role'];
}
$modx->setPlaceholder('user_role',$user_role);
А после этого с помощью fenom пытаюсь получить плейсхолдер и ничего не выводит — пустота{$_modx->getPlaceholder('user_role')}
Скажите в чем может быть проблема?