[Tickets] Версия 1.4.0-rc4 Работа с избранным

Уже много раз вы просили добавить работу с избранным в Tickets, и где-то в дальних планах у меня это было записано. А вот третьего дня Илья Уткин взял и прислал pull-request с этим функционалом, и теперь уже не отвертеться. Принял, доработал и новая версия готова.

Логика работы

Избранное сохраняется в таблицу TicketStar, где пишется имя класса (Ticket или TicketComment), id объекта, id его автора и дата.

Для включения функционала нужно обновить чанки - tpl.Tickets.list.row

  • tpl.Tickets.meta

Добавление\удаление избранного работает через процессоры, которые требуют новых прав: ticket_star и comment_star. Можно отключать работу с избранным у нехороших пользователей.

Добавлять в избранное можно и обычные ресурсы - через сниппет TicketMeta. Понятное дело, что этот функционал работает только для авторизованных пользователей.

2 новых сниппета

Итак, у нас есть таблица с избраннымы тикетами и комментариями - теперь их нужно вывести.

С тикетами нет проблем, а вот для комментариев пришлось написать новый сниппет getComments. Обычный Comments для этой задачи не подходит - он строит дерево, а нам нужно вывести список.

В getComments вы можете выбирать комментарии по разделам ресурсов, самим ресурсам, веткам и даже указывать id вручную. Параметры соответственно &parents, &resources, &threads и &comments.

Этой возможность пользуется второй новый сниппет getStars. Ему нужно указать &class (Ticket или TicketComment), он выберит их id из избранного и передаст в getTickets или getComments. Если не указан параметр &user, то будет показано избранное текущего пользователя.

Заключение

Новая версия уже в репозитории, можно обновляться.

bezumkin.ru я пока трогать не буду, обновлю после запуска http://modx.pro, где будем обкатывать новый Tickets уже совсем скоро.

← Предыдущая заметка
SocialTools - Социальный функционал MODX
Следующая заметка →
[Tickets] Версия 1.4.0-rc7 Публикация тикетов
Комментарии (12)
Andrei D.
01.04.2014 13:49

Эпично

Wassi Wassinen
01.04.2014 14:09

Катарсис!

Wassi Wassinen
01.04.2014 14:43

Василий, а здесь планируешь запустить избранное? Очень бы помогло.

bezumkinВасилий Наумкин
01.04.2014 16:10

Я ж написал в конце заметки, что - да, но позже.

Wassi Wassinen
01.04.2014 17:03

Это тот самый случай, когда нихрена не прочитал, но спросить обязан. :)) Пардон и ждем-с.

vsemee2Андрей
02.04.2014 03:05

Что-то сниппет getTicketsSections после обновления перестал работать..

[[getTicketsSections? &parents=`48` &limit=`0`]]
bezumkinВасилий Наумкин
02.04.2014 03:14

Попробуй обновить pdoTools.

vsemee2Андрей
02.04.2014 03:46

Спасибо, заработало..

vsemee2Андрей
02.04.2014 14:21

Чего-то после обновления pdoTools перестал работать вот такой вызов pdoField

[[pdoField? &id=`[[*id]]` &field=`pagetitle` &top=`1`]]
bezumkinВасилий Наумкин
02.04.2014 14:23

Не перестал.

Стал работать точно как в UltimateParent - в changelog это указано.

bezumkinВасилий Наумкин
02.04.2014 14:48

Немного переделал.

Теперь &topLevel работает как в UltimateParent, а если указать &top без него - то вернется родитель сверху, как раньше.

Обновляйся и проверяй.

vsemee2Андрей
02.04.2014 15:13

Проверил, спасибо, работает!

bezumkin
Василий Наумкин
30.06.2022 03:58
Есть ли возможность формировать "friendly URL aliases", используя аналог translit MODx? ...
bezumkin
Василий Наумкин
27.06.2022 03:32
Спасибо за исправления, очень выручаешь =) Но учитывая количество не описаных в заметке дополнительн...
bezumkin
Василий Наумкин
27.06.2022 03:10
что будет использоваться для вывода многоуровневого меню Посмотри как работают комментарии на этом ...
bezumkin
Василий Наумкин
25.06.2022 11:56
Поправил, спасибо!
bezumkin
Василий Наумкин
22.06.2022 10:08
Я обычно не пользуюсь RTE редакторами, потому что они пишут всякое непонятное что в HTML. Но можно в...
bezumkin
Василий Наумкин
21.06.2022 01:58
onLoad(data) { this.total = data.total }, и onLoad({total}) { this.total = total }, В нашем случ...
bezumkin
Василий Наумкин
20.06.2022 14:01
Прекрасно тебя понимаю, я когда сам в этом разбирался - голова дымилась. Но зато теперь прямо-таки п...
bezumkin
Василий Наумкин
20.06.2022 09:30
Не надо, оно по умолчанию так - я просто чуть более подробно написал.
bezumkin
Василий Наумкин
19.06.2022 13:42
А можно же из 1 файла сделать 2 экспорта. По-умолчанию, и отдельно для футера: export const Footer =...
bezumkin
Василий Наумкин
19.06.2022 09:44
Тебе спасибо, что поддерживаешь рублём мои начинания!