Как заставить LS не считать удалённый комментарии?

Много создано топиков с вопросами на эту тему. При удалении комментария, LS продолжает его считать. Я скрыл надпись «Комментарий был удалён», но число комментариев естественно не изменилось.

Как реализовать, что бы при удалении комментария счётчик уменьшался, а при восстановлении снова прибавлялся?

1 комментарий

avatar
Правильный метод — плагин с хуком на «comment_delete_before», простой — редактирование функции «UpdateCommentStatus» в файле "\classes\modules\comment\Comment.class.php".
В любом случае алгоритм обработки один:
1) Считать текущее состояние параметра «удален» для комментария
$oComment->getDelete()

2) Если состояние изменилось — изменить количество комментариев в топике.
Для увеличения это будет так:
if ($oComment->getTargetType()=='topic') {
    $this->Topic_increaseTopicCountComment($oComment->getTargetId());
}

Для уменьшения готового кода нет, нужно делать по аналогии с «Topic_increaseTopicCountComment».
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.