Удаление сообщения в форуме Drupal портит нумерацию - PullRequest
0 голосов
/ 25 мая 2011

Я подписан на сайт Drupal 5 с модулем Advanced Forum. Когда пользователь решает удалить свое сообщение, оно исчезает, а следующие сообщения перемещаются вверх.

Так, если # 2 будет удален, существующий # 3 станет # 2 и так далее. Проблема в том, что если люди ссылаются на предыдущие посты, которые теперь неправильно пронумерованы. Следовательно, это может привести к большому замешательству или даже разозлить людей, потому что они считают, что комментарий неуместен - а это не так!

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

Знаете ли вы, существует ли уже патч для этого, или вы можете указать, где мне нужно изменить код?

Я опытный разработчик PHP, но Drupal для меня нов.

1 Ответ

1 голос
/ 25 мая 2011

Возможный обходной путь - установить поле статуса в таблице комментариев на 0 вместо удаления комментария. Таким образом, он не будет отображаться в списке комментариев, а другие cid не будут изменены. Вы можете сделать это в пользовательском модуле с ловушкой, но я не уверен, что ловушка вызывает comment_delete , обычно вы должны переопределить hook_nodeapi но комментарии, если я правильно помню, могут обрабатываться иначе, чем узлы.

Загляните в модуль комментариев в / modules и проверьте, из какого хука вызывается comment_delete, и переопределите его в пользовательском модуле, чтобы вам не пришлось взламывать какой-либо основной код.

Good-Luck

...