форум vBSupport.ru > vBulletin > vBulletin 3.8.x > Вопросы по vBulletin 3.8
  • »
VBsupport перешел с домена .ORG на родной .RU Ура! Пожалуйста, обновите свои закладки - VBsupport.ru
 
 
 
 
sanika
Продвинутый
 
sanika's Avatar
Default Перенос темы при модерации
0

Суть следующая - я хочу при удалении сообщений модераторами, чтоб они не удалялись физически, а переносились в скрытый раздел, где я потом могу пересмотреть пост и если надо, восстановить его. Ясное дело, что смотреть надо в moderate.php

За удаление поста из таблицы post Отвечает этот кусок

PHP Code:
else if ($action == -1)
            {
                
// delete
                
if (!isset($hasdelperm["$threadinfo[forumid]"]))
                {
                    
$hasdelperm["$threadinfo[forumid]"] = (can_moderate($threadinfo['forumid'], 'candeleteposts') OR can_moderate($threadinfo['forumid'], 'canremoveposts'));
                }
                if (!
$hasdelperm["$threadinfo[forumid]"])
                {
                    
// doesn't have permission to delete in this forum
                    
continue;
                }

                
$threadman =& datamanager_init('Thread'$vbulletinERRTYPE_SILENT'threadpost');
                
$threadman->set_existing($threadinfo);
                
$threadman->delete($countpostscan_moderate($threadinfo['forumid'], 'canremoveposts'));
                unset(
$threadman);

                
$updateforum["$threadinfo[forumid]"] = 1;
            } 
А именно строка

PHP Code:
$threadman->delete($countpostscan_moderate($threadinfo['forumid'], 'canremoveposts')); 
Кто-то может подсказать как изменить ее чтоб запись не удалялась, а меняла forumid и threadid. Искал материал в сети, но ничего не нашел

sanika добавил 25.05.2015 в 21:10
Чисто теоретически, я дмаю что вместо нее надо сделать
PHP Code:
$threadman->set('threadid'1111111); 
Но хотелось бы услышать еще чье-то мнение

Last edited by sanika : 05-25-2015 at 10:16 PM. Reason: Добавлено сообщение
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
 
 
tays
Эксперт
 
tays's Avatar
Default
1

А зачем такие сложности?
У модераторов убираете права hard-удаления, а мягко удаленные сообщения смотрите в своем кабинете (Модерация -> Удаленные элементы).
Или прямая ссылка: http://Мой-сайт/forum/moderation.php...s&type=deleted
 
 
sanika
Продвинутый
 
sanika's Avatar
Default
1

Мысль, спасибо. Но я думал еще и обезопасить себя от случайного удаления нужного поста. Если выйдет, поделюсь кодом

sanika добавил 26.05.2015 в 18:40
В общем в этом файле moderate.php надо закомментировать строки 870 и 871

PHP Code:
$postman->delete($countposts$postinfo['threadid'], can_moderate($postinfo['forumid'], 'canremoveposts'));

unset(
$postman); 
и под ними добавить

PHP Code:
$postman->set('threadid'00000);
$postman->save(); 
Где 00000 это id вашей скрытой темы. теперь все удаленные модераторами посты попадают в эту тему, и можно просмотреть их и восстановить или удалить окончательно. Может и лишний функционал, но мне его не хватало

Last edited by sanika : 05-26-2015 at 07:41 PM. Reason: Добавлено сообщение
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 05:54 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Loading...