Новый вариант удаления комментариев
После удаления комментария пользователя, на его месте остается сообщение ***Комментарий удален***. Это иногда полезно, когда нужно удалить из дискуссии пользователей комментарии и при этом сохранить последовательность разговора.
Удалить комментарий полностью можно из админпанели. Так же рекомендуется отключить в настройках Dle возможность редактирования собственных комментариев пользователем.
Установка:
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'");
Готово!
Версия DLE: 9.5-9.8
Автор: Sillys Developer
Комментариев 1