Всем привет! Сегодня в @prisma-cms/cooperation был добавлен еще один полезный функционал: реакции в задачах. В настоящий момент пока что только отметки "Нравится" можно поставить, но в дальнейшем можно будет ввести и другие реакции. Зачем это нужно? Это позволяет в общем массиве задач отметить те, которые планируешь выполнить в первую очередь. К примеру, вот задачи, которые я отметил для себя: https://modxclub.ru/tasks?filters=%7B%22Reactions_some%22%3A%7B%22CreatedBy%22%3A%7B%22username%22%3A%22Fi1osof%22%7D%7D%7D А вообще идея родилась только вчера в ходе обсуждения парочки совместных проектов. Задач довольно много, не поставить их нельзя (так как будет ощущение, что их нет), но надо иметь возможность выделить более важные на ближайшее время. А так как участников в обсуждении трое, то надо учитывать мнение каждого. И вот мне показалась интересной идея дать возможность каждому делать отметки какие задачи для кого интересны. Таким образом в первую очередь будут выполняться задачи с тремя отметками, потом с двумя и потом уже все остальные. По-моему удобно. P.S. свои отметки можно ставить даже на задачи в проектах, в которых вы не состоите. К примеру, вы можете посмотреть все открытые задачи по компонентам @prisma-cms или по MODX-Клуб, и поставить отметки по тем задачам, которые вас интересуют,. Я конечно же буду учитывать эти отметки, а вы сможете отслеживать свои задачи.
Супер) Надо все добавить)))
Ну, оно у тебя тут не маленькое уже :)
Прикольные фильтры получаются:) До портфолио теперь можно докопаться:)
Всем привет! Совсем недавно я писал про то, что на сайте Клуба появились новый фильтры на базе компонента @prisma-cms/filters. Как и обещал, добавил их и в других разделах, в частности в проектах, задачах, таймерах и пользователях. Теперь можно, к примеру, найти все проекты, в которых есть выполняемые задачи: https://modxclub.ru/projects?filters=%7B%22Tasks_some%22%3A%7B%22status%22%3A%22Progress%22%7D%7D или все новые задачи по проектам, содержащим в названии @prisma-cms: https://modxclub.ru/tasks?filters=%7B%22Project%22%3A%7B%22name_contains%22%3A%22%40prisma-cms%22%7D%2C%22status%22%3A%22New%22%7D или пользователей, участвующих в каких-либо проектах: https://modxclub.ru/people?filters=%7B%22Projects_some%22%3A%7B%7D%7D или пользователей, которые выполняли какие-либо задачи: https://modxclub.ru/people?filters=%7B%22Timers_some%22%3A%7B%7D%7D В общем, фильтром можно наделать много-много всяких разных. Кстати, тут вдруг выяснилось, что некоторые думают, будто я эти фильтры под каждую задачу как-то генерирую вручную, то есть под проекты сгенерировал, потом пошел и под пользователей сгенерировал, а вот под другие сущности (ресурсы и т.п.), если не сгенерировал, то их и не будет. Это совсем не так. Вот как фильтры подключаются на любой странице: То есть все, что мне надо, это подключить компонент Filters и передать в него название запроса, для которого надо сформировать фильтры (в данном случае users). Это все, что необходимо для того, чтобы фильтры появились на странице и позволяли делать сложные вложенные условия. Параметр filters - это не набор всех доступных фильтров, а объект с текущими условиями, к примеру, filters={{username: "Fi1osof"}} setFilters - это функция обновления фильтров в состоянии, то есть вызывается компонентом, когда фильтры были изменены, чтобы можно было их переписать у себя в текущем состоянии. Простейший вариант здесь - это просто обновить стейт Но у меня функция более сложная написана и используется, потому что состояния фильтров пишутся в УРЛ и читаются оттуда. Пример: https://github.com/MODX-Club/modxclub.ru/blob/2c826870d3a4b321c0cd9666428ac066651d6862/src/components/pages/UsersPage/index.js#L37-L135 P.S. Чуть-чуть доработал страницу списка пользователей, теперь на ней видно кто в каких проектах участвует. В свое время была поставлена на это задача.