Здравствуйте друзья.
Вопрос в заголовке. Если я создал новый комментарий, когда он перестанет быть новым для другого пользователя:
1) когда пройдет определенное время,
2) когда этот другой пользователь оставит свой комментарий,
3) когда он просмотрит этот комментарий?
Мои эксперименты показывают, что пометка new не убирается пока пользователь не оставит свой комментарий. Можно ли сделать так, чтобы эта пометка убиралась сразу после просмотра, например, при обновлении страницы?
Комментарии
Для определенности, я использую такой код:
<?php if ($new): ?>
<span class="new"><?php print drupal_ucfirst($new) ;?></span>
<?php endif; ?>
$comment->new определяется следующим образом
$comment->new = node_mark($comment->nid, $comment->changed);
ну и далее смотри, что происходит в node_mark()
global $user;
$cache = &drupal_static(__FUNCTION__, array());
if (!$user->uid) {
return MARK_READ;
}
if (!isset($cache[$nid])) {
$cache[$nid] = node_last_viewed($nid);
}
if ($cache[$nid] == 0 && $timestamp > NODE_NEW_LIMIT) {
return MARK_NEW;
}
elseif ($timestamp > $cache[$nid] && $timestamp > NODE_NEW_LIMIT) {
return MARK_UPDATED;
}
return MARK_READ;
}