Перейти к контенту

[1.x.x]Продвинутая корзина


theIggs

Рекомендуемые сообщения

Название: Продвинутая корзина

Добавил: theIggs

Добавлен: 09 Авг 2004

Обновлен: 03 Мар 2005

Категория: IP.Board 1.x.x

 

Продвинутая мусорка для вашего форума.

Основано на Trash Can от Andy Langland (http://mods.invisionize.com/).

 

По сравнению с версиями от Andy и Matrix (русский перевод в нашем Архиве) исправлены существующие глюки, добавлены функции автоматического восстановления удалённых тем и сообщений.

 

Суть модификации: все удаляемые темы и сообщения не удаляются физически, но сначала переносятся в особый форум для удалённых сообщений (корзину). При удалении из корзины темы и сообщения удаляются физически.

Из корзины удалённые темы и сообщения можно автоматически восстановить туда, где они до этого находились.

 

Заметка: права на форум-корзину рекомендуется выставлять только для чтения. Если вы разрешаете новые посты в корзине, пеняйте на себя - это не тестировалось, работа не гарантируется.

 

Нажмите здесь, чтобы скачать файл

Ссылка на комментарий
Поделиться на других сайтах

Я в свое время тоже думал о возможности добавления в корзину функции восстановления.

Потом плюнул на это дело и сделала проще. Создал некоторого пользователя TrashMaster от имени которого при удалении топика или поста в топик, находящийся в корзине, добалялась информация вида:

кто удалил и когда

из какого форума

из какой темы (если это удален пост был)

 

Да без автоматики, но всегда имхо можно было восстановить.

Ссылка на комментарий
Поделиться на других сайтах

Fatal error: Call to a member function on a non-object in /home/eforump/public_html/sources/Topics.php on line 1980  

Вот такую бадягу пишет, ставил вроде всё верно, незнаю в чём проблем... :D

Ссылка на комментарий
Поделиться на других сайтах

Похоже, замечание в тему...

Попробуй в Topics.php найти:

 function moderation_panel() {
 global $ibforums, $std;

Заменить на:

 function moderation_panel() {
 global $ibforums, $std, $DB;

В инструкции могут быть неточности, т.к. писалась в быстром темпе...

Ссылка на комментарий
Поделиться на других сайтах

theIggs , спасибо, помагло, только вот когда хочу востановить тему, пишит такое:

 

Fatal error: Call to undefined function: recover_topic() in /home/eforump/public_html/sources/Moderate.php on line 270  

Ссылка на комментарий
Поделиться на других сайтах

спасибо, помагло

ОК, спасибо за тестирование, обновим ридми. :D

Fatal error: Call to undefined function: recover_topic()

Это уже твоя ошибка: пропустил шаг, где написано "Добавить новые функции". Как добавлять новые функции - написано в верху ридми.

Ссылка на комментарий
Поделиться на других сайтах

theIggs

Такой вопрос. В архиве с инструкцией есть дополнение для совместимости с модом "Перемещение и удаление отдельных сообщений". То есть если у меня стоит этот мод и я поставлю это дополнение, то я смогу удалять и восстанавливать отдельные сообщения?

Ссылка на комментарий
Поделиться на других сайтах

То есть если у меня стоит этот мод и я поставлю это дополнение, то я смогу удалять и восстанавливать отдельные сообщения?

Удалять и восстанавливать отдельные сообщения можно и сейчас.

Если поставить оба мода и интегрировать их при помощи дополнения, то можно будет удалять сообщения кучкой (по 4-5-6-итд. за раз).

Ссылка на комментарий
Поделиться на других сайтах

1.После нажатия на кнопку удалить (при удалении опроса) возникла ошибка

Parse error: parse error, unexpected ';', expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in z:\home\forum.bnd.ru\www\sources\lib\modfunctions.php on line 973

 

Fatal error: Cannot instantiate non-existent class: modfunctions in z:\home\forum.bnd.ru\www\sources\Moderate.php on line 169

исправилось после добавления в конец файла modfunctions.php символа "}" (перед "?>")

 

2.при удалении сообщений появляется следующая ошибка

Fatal error: Call to undefined function: add_moderate_log() in z:\home\forum.bnd.ru\www\sources\Moderate.php on line 2194

причем сообщения удаляются при этом. т.е появляются в форуме-корзине

такая же ошибка появляется и при восстановлении сообщений.

функцию moderate_log() я не трогал..

 

как быть?

Ссылка на комментарий
Поделиться на других сайтах

D-Mark

функцию moderate_log() я не трогал..

Я тоже не трогал. :D

В моём моде нет упоминания такой функции, так что это косяк из какого-то другого места.

Ссылка на комментарий
Поделиться на других сайтах

Сорри, нашел ошибку....:D

Оказывается, при правке файла modfunctions.php я случайно ""{" в одном месте стер... еще раз извиняюсь....

теперь все ок...отличный хак.

Изменено пользователем D-Mark
Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

А нельзя добавить такую фич...

Чтоб при написание поста она возвращалас обратно в тему(откуда она была удаленна)??

Зы: А так хороший мод!!Только фичи этой не хватаеть :D;):):)

Ссылка на комментарий
Поделиться на других сайтах

Чтоб при написание поста она возвращалас обратно в тему(откуда она была удаленна)??

Она - это кто? Фича? ;) Типа - её удаляешь, а она завтра утром опять на форуме... :D

Ссылка на комментарий
Поделиться на других сайтах

  • 5 месяцев спустя...

Я уже замучался, целий вечер просидел над одной проблемой и решить сам так і не смог. ну рагуается на ленг-файле и все тут:

Parse error: parse error, unexpected T_DOUBLE_ARROW in /home/tartakc/public_html/forum/lang/3/lang_mod.php on line 3

 

Єто про удалении топика.

А при просмотре подобное:

Parse error: parse error, unexpected T_DOUBLE_ARROW in /home/tartakc/public_html/forum/lang/3/lang_topic.php on line 4

 

Если оставить ленг-файл без изменений. то все работает на нормально, я пока глюков не заметил... но я не знаю, означет ли єто что их нема? :D

Ссылка на комментарий
Поделиться на других сайтах

та там фишка просто в том что у меня ленг-файли не немного не такие как у всех. они у меня имеют вид:

$lang['track_topic']  = "Підписка на тему";
$lang['js_del_1']  = "Ви дійсно хочете видалити це повідомлення?";
$lang['please_log_in']  = "Ви не авторизовані у цьому форумі.";
$lang['js_del_2']  = "Не хочте, як хочте :)";
$lang['start_new_topic']  = "Створення нової теми";
$lang['moderation_ops']  = "Опції модератора";

 

и каждій раз возникают эти трабли и бывает дописавыеш точно такуэ же строчку и все работает без проблем а бывает не хочет...

тогда приходится в этот код добавлять новые константи и их дефиниции другим способом:

$lang = array (

'RESTORE_TOPIC' => "Відновити тему",

);

 

но осоновная фишка в тому, что если последний способ вставить ПОСЛЕ первого, то все переменные выше в топике не отображаются, вмето них пустые места... НО ВОТ ЕСЛИ вот этот

$lang = array (

 

'RESTORE_TOPIC' => "Відновити тему",

 

);

вставить в начало кода файла, то все пашет ОК :D собственно так я нашел выход из проблемы ;))
Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя...

А вот вы знаете, что есть баг, который не в те темы удаленные посты скидывает?

 

Например, есть у нас тема (с id=12345) и соответствующая ей в корзине (куда скидываются оттуда удаленные посты). По идее если удалить пост из темы с id=123, то должна была создаться новая тема в корзине для скидывания удаляемых постов с темы 123. Но оно их перемещает в тему в корзине которой соответствует id=12345

 

(дело наверно в запросе-поиске LIKE)

Легче отобразить этот баг удаляя посты с темы №1 (тестовая вначале создается) и должны быть темы удаленными постами тем начинающихся с 1...

Я вот пофиксил такой баг.

 

Просто надо другой формат поста в корзине делать

#POST# t={$this->topic['tid']}[b];[/b]

 

И запрос:

LIKE '#POST# t={$this->topic['tid']}[b];[/b]%'

[1113237846:1113591276](точка с запятой добавляется после id_топика)

Ссылка на комментарий
Поделиться на других сайтах

  • 3 месяца спустя...
  • 6 месяцев спустя...

Появилась недавно 1 проблема.

Посты, которые находятся в треше все пустые :D Иногда бывают с текстом, а иногда прсото пусто. Как быть?

Ссылка на комментарий
Поделиться на других сайтах

Я имею в виду мод заново переписать, чтобы инфа о том откуда сообщение хранилась не так "#POST# t=12953" :D
Ссылка на комментарий
Поделиться на других сайтах

Кого нагрузка на базу данных заставит :). Я уже себе переписал как мне надо :D , чтобы не юзался LIKE по таблице постов при удалении ;)
Ссылка на комментарий
Поделиться на других сайтах

  • 2 месяца спустя...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.