Privatemsg получить список тем пользователя

Аватар пользователя Ujean Ujean 2 октября 2014 в 12:56

Подскажите как получить список тем из Privatemsg в профиле пользователя: первый столбец имя участника темы, второй столбец ссылка на тему.
Сейчас я получил с помощью sql список тем, беру из pm_index.thread_id идентификатор темы, затем формирую ссылку вида messages/view/%thread_id%, а в результате получается что ссылка /messages/view/2 для разных пользователей показывает разные результаты.

0 Thanks

Комментарии

Аватар пользователя Ujean Ujean 3 октября 2014 в 15:32

Отвечаю сам себе
Один пользователь может удалить сообщение, а другой нет
При попытке показать удаленные сообщение по адресу /messages/view/ показывается случайное другое, не удаленное сообщение. Хотя правильней бы было показать страницу ошибки
Правильный SQL:
SELECT m.subject, m.`timestamp` AS ts, users.`name`, i.thread_id, i.recipient
FROM pm_message AS m
INNER JOIN pm_index AS i ON m.mid=i.mid
INNER JOIN pm_index AS ii ON m.mid=ii.mid
INNER JOIN users ON m.author=users.uid
WHERE i.thread_id=ii.thread_id AND i.recipient<>ii.recipient AND ii.deleted=0 AND ii.recipient=:uid
ORDER BY ts DESC