Пропустить

Prime Trash Bin

Поддержка старых модов или модов, созданных авторами не из нашего сообщества, а также любые вопросы, связанные с модами для phpBB 3.0.x, кроме относящихся к форуму Для авторов (phpBB 3.0.x).
Свернуть Развернуть Правила форума Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).

Re: Prime Trash Bin

Сообщение Пчелкин » 09.01.2012 12:04

Это к моду - NV Newspage v1.0.5.1...вверху исправил
Фанат phpBB. В HTML - без проблем, в CSS - так себе, учусь, в php - баран, помогает только дедукция
Аватара пользователя
Пчелкин
phpBB 3.0.7-PL1
 
Сообщения: 4891
Зарегистрирован: 15.01.2010 14:57
Откуда: От Москвы 9 часов на Боинге
Благодарил (а): 288 раз.
Поблагодарили: 552 раз.

Re: Prime Trash Bin

Сообщение ArtTeam » 25.03.2012 7:16

А при просмотре удаленного сообщение должно показывать только текст сообщения или аватар тоже должен отображаться ?

ArtTeam
phpBB 2.0.1
 
Сообщения: 129
Зарегистрирован: 16.05.2010 17:52
Благодарил (а): 3 раз.
Поблагодарили: 4 раз.

Re: Prime Trash Bin

Сообщение Пчелкин » 25.03.2012 7:33

Минипрофиль урезанный , ава если есть - показывается...после восстановление - пожалуйста, будет весь...
В списке тем - ничего...какие бы моды вывода ав и прочего не стояли...
Фанат phpBB. В HTML - без проблем, в CSS - так себе, учусь, в php - баран, помогает только дедукция
Аватара пользователя
Пчелкин
phpBB 3.0.7-PL1
 
Сообщения: 4891
Зарегистрирован: 15.01.2010 14:57
Откуда: От Москвы 9 часов на Боинге
Благодарил (а): 288 раз.
Поблагодарили: 552 раз.

Re: Prime Trash Bin

Сообщение IIyx » 27.04.2012 21:08

Поставил Prime Trash Bin 1.1.6 на board 3.0.10. Темы удаляются в корзину. Здесь все работает. Но обратно из корзины они не восстанавливаются. Путем поисков обнаружено некорректная работа функции are_topics_stifled в prime_trash_bin_b.php
	function are_topics_stifled($topic_ids)
	{
		global $db;

		$topic_ids = !is_array($topic_ids) ? array($topic_ids) : $topic_ids;
		$sql = 'SELECT topic_id'
				. ' FROM ' . TOPICS_TABLE
				. ' WHERE topic_deleted_time > 0'
				. ' AND ' . $db->sql_in_set('topic_id', $topic_ids);
		$result = $db->sql_query($sql);
		$stifled_count = $db->sql_affectedrows();
		$db->sql_freeresult($result);
		return(($stifled_count === count($topic_ids)) ? true : $stifled_count);
	}

$db->sql_affectedrows() возвращает 0; хотя сам запрос срабатывает нормально и возвращает topic_id
База данных - sqlite 2.8.17. Как исправить эту функцию? В коде есть еще несколько подобных функций.

IIyx
phpBB 1.0.0
 
Сообщения: 4
Зарегистрирован: 26.04.2012 11:13
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Prime Trash Bin

Сообщение Пчелкин » 28.04.2012 6:31

У всех нормально восстанавливает, а у вас нет...право восстанавливать дано?
Синхронизацию форумов давно делали?
В СТК есть опция - исправление границ значений ID...как-то помогла на одном форуме...
Фанат phpBB. В HTML - без проблем, в CSS - так себе, учусь, в php - баран, помогает только дедукция
Аватара пользователя
Пчелкин
phpBB 3.0.7-PL1
 
Сообщения: 4891
Зарегистрирован: 15.01.2010 14:57
Откуда: От Москвы 9 часов на Боинге
Благодарил (а): 288 раз.
Поблагодарили: 552 раз.

Re: Prime Trash Bin

Сообщение IIyx » 28.04.2012 9:09

Право восстанавливать дано, синхронизация не помогла. По документации affectedrows() не работает с SELECT

IIyx
phpBB 1.0.0
 
Сообщения: 4
Зарегистрирован: 26.04.2012 11:13
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Prime Trash Bin

Сообщение Pazh » 28.04.2012 11:26

MySQL(i) 5.0.51a-24 + PHP Version 5.2.6-1 строка
$stifled_count = $db->sql_affectedrows();
возвращает правильное значение аналогичное $result->num_rows
Если на Вашей БД не срабатывает то попробуйте заменить на
$stifled_count = ($result !== false) ? $result->num_rows : 0;

или вообще запрос поменять
		$sql = 'SELECT topic_id'
				. ' FROM ' . TOPICS_TABLE
				. ' WHERE topic_deleted_time > 0'
				. ' AND ' . $db->sql_in_set('topic_id', $topic_ids);
		$result = $db->sql_query($sql);
		$stifled_count = $db->sql_affectedrows();

на
		$sql = 'SELECT count(topic_id) kol'
				. ' FROM ' . TOPICS_TABLE
				. ' WHERE topic_deleted_time > 0'
				. ' AND ' . $db->sql_in_set('topic_id', $topic_ids);
		$result = $db->sql_query($sql);
		$stifled_count = $db->sql_fetchfield('kol');
Аватара пользователя
Pazh
Поддержка
Поддержка
 
Сообщения: 262
Зарегистрирован: 09.11.2009 18:46
Благодарил (а): 2 раз.
Поблагодарили: 44 раз.

Re: Prime Trash Bin

Сообщение IIyx » 28.04.2012 13:40

Спасибо! Сделал через num_rows();

IIyx
phpBB 1.0.0
 
Сообщения: 4
Зарегистрирован: 26.04.2012 11:13
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Prime Trash Bin

Сообщение Pazh » 28.04.2012 14:27

IIyx вот так правильней
$stifled_count = ($result !== false) ? $result->num_rows : 0;

т.к. если ничего запрос не вернул, то значение $result будет булево false
Аватара пользователя
Pazh
Поддержка
Поддержка
 
Сообщения: 262
Зарегистрирован: 09.11.2009 18:46
Благодарил (а): 2 раз.
Поблагодарили: 44 раз.

Re: Prime Trash Bin

Сообщение FomenkoAndrey » Вчера 0:01

Парни, как быть?
Вот чистит кто-то свои темы, потом посты "висят" как удаленные, но их можно восстановить.
Одно дело, когда темка маленькая и таких постов можно по пальцам считать.
А если ежедневно редактируются сотни многостраничных тем?
Что можно придумать, чтобы "одним нажатием" очищать всю тему?
Ну или хотя бы sql-скриптик какой сконструировать и запускать его раз в месяц по крону?

FomenkoAndrey
phpBB 2.0.19
 
Сообщения: 616
Зарегистрирован: 25.12.2009 1:27
Благодарил (а): 47 раз.
Поблагодарили: 26 раз.

Re: Prime Trash Bin

Сообщение Pazh » Вчера 13:52

DELETE FROM phpbb_posts WHERE post_deleted_time>0
- удалит все отмеченные удаленными сообщения на форуме

DELETE FROM phpbb_posts WHERE post_deleted_time>0 and topic_id=XXXX
- удалит все отмеченные удаленными сообщения в теме с id=XXX

DELETE FROM phpbb_posts WHERE post_deleted_time>0 and forum_id=XXXX
- удалит все отмеченные удаленными сообщения в форуме с id=XXX
Аватара пользователя
Pazh
Поддержка
Поддержка
 
Сообщения: 262
Зарегистрирован: 09.11.2009 18:46
Благодарил (а): 2 раз.
Поблагодарили: 44 раз.

Re: Prime Trash Bin

Сообщение FomenkoAndrey » Вчера 19:01

Pazh
запрос чистит все посты - все справедливо, поскольку я в своем вопросе более ничего не уточнял :)

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

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

FomenkoAndrey
phpBB 2.0.19
 
Сообщения: 616
Зарегистрирован: 25.12.2009 1:27
Благодарил (а): 47 раз.
Поблагодарили: 26 раз.

Re: Prime Trash Bin

Сообщение misterleks » Вчера 19:14

Все счетчики придется обновлять.
Хобби: охота, рыбалка, машины... и работа!
Аватара пользователя
misterleks
phpBB 2.0.6
 
Сообщения: 265
Зарегистрирован: 20.08.2010 15:09
Откуда: Великий Новгород
Благодарил (а): 32 раз.
Поблагодарили: 15 раз.

Re: Prime Trash Bin

Сообщение FomenkoAndrey » Вчера 19:22

misterleks
проверил. да, статистика не обновляется.
но количество постов пользователя минусуется еще на этапе удаления их в корзину (помечаются удаленными).

FomenkoAndrey
phpBB 2.0.19
 
Сообщения: 616
Зарегистрирован: 25.12.2009 1:27
Благодарил (а): 47 раз.
Поблагодарили: 26 раз.

Пред.

Вернуться в Поддержка модов для phpBB 3.0.x

 

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Кто сейчас на конференции

Сейчас этот форум просматривают: Magpie [Crawler] и гости: 0

Бессрочный конкурс phpBB-ориентированных материалов
FastVPS — надёжный и доступный хостинг для phpBB
Место для вашей рекламы