Нужно сделать вывод ответов на коментари

12.02.2015

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

-->
Узнавай о новых статьях сайта - первым. Просто подпишись на рассылку.

Комментарии (4)

Profile picture for user pantey
pantey
13.02.2015

готовых решений не встречал, а так писать самому. В таблице "comment" - есть вся необходимая информация для этого, а именно:

  • CID - уникальный ID комментария
  • PID - ID комментария на который был оставлен комментарий
  • NID - ID ноды, на которую были оставлены комментарии

и дальше пишите логику, как вам необходимо вывести. Здесь вопрос в другом, как вы собираетесь отмечать просмотренные пользователем комментарии??? Скорее всего вам необходимо будет создать дополнительную таблицу со статусами для пользователей, где будут заноситься

  • ID комментария
  • ID пользователя
  • Статус, например (0 -не просмотрено, 1 - просмотрено)

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

Profile picture for user Алексей
Ace
17.02.2015

Простите но я начинающий друпалист и незнаю как писать самому модули. Помогите пожалуса. Подскажыте с чего начять хотябы....

Profile picture for user pantey
pantey
17.02.2015

тогда, думаю вам рано еще такими вещами заниматься...начинаете с создания модуля, далее API Database, далее знакомитесь с системой хуков, в частности для вашего модуля, а именно для создания блока с сообщениями пригодятся hook_block_info() и hook_block_view(), это с учетом того, что вы уже знаете PHP и можете составить простой запрос в БД.

Profile picture for user Алексей
Ace
18.02.2015

Я нашол решение на Друпал 5 или 6 незнаю. Возможно ли переделпть ето на Друпал 7

Новые ответы на мои комментарии

function c_replies($cid) { $comments = array(); $c = db_query("SELECT * FROM {comments} WHERE pid=%d",$cid); while ($comment = db_fetch_object($c)) { if (node_mark($comment->nid,$comment->timestamp) != MARK_READ) { $comments[] = $comment; if (comment_num_replies($comment->cid) > 0) { array_push($comments,c_replies($comment->cid)); } } } return $comments; } $any = FALSE; $r = db_query("SELECT * FROM {comments} WHERE uid=%d",$user->uid); while ($my=db_fetch_object($r)) { $comments = c_replies($my->cid); if (count($comments) > 0) { print("

Re: {$my->subject}

\n"); foreach ($comments as $comment) { if ($comment->timestamp) { print(theme('comment',$comment)); $any = TRUE; } } } } if (!$any) { ?>

Новых ответов нет.

}?>