Название: Комментарий удален
Автор: Неизвестно
CMS: 9.x-10.x
Описание:
Хак, который после удаления комментария пользователя, не удаляет комментарий физически, а удаляет текст комментария и вместо его пишет текст «Комментарий удален». Это очень полезно для сохранения последовательности комментирования новости в процессе дискуссии.
А если вы хотите удалить полностью комментарий, тогда вы можете сделать это из админ панели.
Установка:
1. Открыть файл \engine\ajax\deletecomments.php и найти:
$db->query( "DELETE FROM " . PREFIX . "_{$allowed_areas[$area]['comments_table']} WHERE id = '$id'" );
// обновление количества комментариев у юзера
if( $is_reg ) {
$author = $db->safesql($author);
$db->query( "UPDATE " . USERPREFIX . "_users set comm_num=comm_num-1 where name ='$author'" );
}
// обновление количества комментариев в новостях
$db->query( "UPDATE " . PREFIX . "_{$allowed_areas[$area]['counter_table']} SET comm_num=comm_num-1 where id='$post_id'" );
Заменить на:
$lang_text = '***комментарий удалён***';
$db->query("UPDATE " . PREFIX . "_{$allowed_areas[$area]['comments_table']} SET text='$lang_text' WHERE id='$id'");
2. Открыть файл \engine\modules\comments.php и найти:
$db->query( "DELETE FROM " . PREFIX . "_{$allowed_areas[$area]['comments_table']} WHERE id = '$id'" );
Заменить на:
$lang_text = '***комментарий удалён***';
$db->query("UPDATE " . PREFIX . "_{$allowed_areas[$area]['comments_table']} SET text='$lang_text' WHERE id='$id'");
Найти еще ниже:
$db->query( "DELETE FROM " . PREFIX . "_{$allowed_areas[$area]['comments_table']} WHERE id = '$id'" );
Заменить на:
$lang_text = '***комментарий удалён***';
$db->query("UPDATE " . PREFIX . "_{$allowed_areas[$area]['comments_table']} SET text='$lang_text' WHERE id='$id'");
Готово!