Prime Trash Bin

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
МайскийЖук
phpBB 3.0.7-PL1
Сообщения: 2535
Стаж: 16 лет 11 месяцев
Благодарил (а): 17 раз
Поблагодарили: 366 раз

Prime Trash Bin

Сообщение МайскийЖук »

Вообще странно, конечно. У меня так же стоит версия корзины 1.1.4, я так же обновил форум с 3.0.9 до 3.0.10, но у меня подобных ошибок не возникло.

Может действительно отослать bug report создателю мода, а на ошибку пока забить? Она же на работоспособность корзины, насколько я понял, не повлияла?
Любовь и боль, покой и бой я как любой несу с собой…
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 8 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Prime Trash Bin

Сообщение Alecto »

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

я уже создал тему на phpbb.com в разделе поддержки мода, посмотрим что автор отпишет.

Добавлено спустя 2 часа 31 минуту 55 секунд:
на развернутом тестовом сайте что только не делал с корзиной... и удалял и восстанавливал и через панель модератора, и так и на перекосяк - ошибок не было... под гостем облазил темы с удаленными постами - ошибок не было...

и тут зашел поисковый гугл-бот:

Код: Выделить всё

General Error 
» SQL ERROR [ mysql4 ]

Unknown column 'p1.post_deleted_time' in 'where clause' [1054]

SQL

SELECT COUNT(p.post_id) AS prev_posts
 FROM phpbb_posts p
 WHERE (p1.post_deleted_time = 0) AND p.topic_id = 164
 AND p.post_approved = 1 AND (p.post_time < 1238079984 OR (p.post_time = 1238079984 AND p.post_id <= 873))

BACKTRACE

FILE: [ROOT]/includes/db/mysql.php
LINE: 175
CALL: dbal->sql_error()

FILE: [ROOT]/viewtopic.php
LINE: 341
CALL: dbal_mysql->sql_query()
Аватара пользователя
МайскийЖук
phpBB 3.0.7-PL1
Сообщения: 2535
Стаж: 16 лет 11 месяцев
Благодарил (а): 17 раз
Поблагодарили: 366 раз

Prime Trash Bin

Сообщение МайскийЖук »

А мож вообще удалить (p1.post_deleted_time = 0) AND и оставить только p.topic_id = 164?
Любовь и боль, покой и бой я как любой несу с собой…
Аватара пользователя
DK7
Former team member
Сообщения: 1008
Стаж: 20 лет 2 месяца
Откуда: Кишинёв
Благодарил (а): 3 раза
Поблагодарили: 25 раз

Re: Prime Trash Bin

Сообщение DK7 »

МайскийЖук
так нельзя..
Аватара пользователя
МайскийЖук
phpBB 3.0.7-PL1
Сообщения: 2535
Стаж: 16 лет 11 месяцев
Благодарил (а): 17 раз
Поблагодарили: 366 раз

Prime Trash Bin

Сообщение МайскийЖук »

Ну, я тоже предполагаю, что так нельзя. Только почему? За что отвечает конкретно эта вставка?
Любовь и боль, покой и бой я как любой несу с собой…
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 8 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Prime Trash Bin

Сообщение Alecto »

МайскийЖук писал(а):p1.post_deleted_time = 0
похоже 0 означает, что сообщение НЕ удалено. в противном случае там хранится значение времени удаления в корзину.
Аватара пользователя
pisikot
phpBB 1.2.1
Сообщения: 21
Стаж: 15 лет 11 месяцев
Откуда: tmn
Благодарил (а): 32 раза

Re: Prime Trash Bin

Сообщение pisikot »

Ставлю Prime Trash Bin (1.1.4) на форум 3.0.10

в инструкции написано Открыть: viewtopic.php Найти

Код: Выделить всё

		$sql = 'SELECT COUNT(p1.post_id) AS prev_posts
			FROM ' . POSTS_TABLE . ' p1, ' . POSTS_TABLE . " p2
			WHERE p1.topic_id = {$topic_data['topic_id']}
				AND p2.post_id = {$post_id}
				" . ((!$auth->acl_get('m_approve', $forum_id)) ? 'AND p1.post_approved = 1' : '') . '
				AND ' . (($sort_dir == 'd') ? 'p1.post_time >= p2.post_time' : 'p1.post_time <= p2.post_time');
Вставить

Код: Выделить всё

//-- mod: Prime Trash Bin (Posts) -------------------------------------------//
// Don't include posts that have been mock-deleted if user isn't supposed to see the placeholder
		include ($phpbb_root_path . 'includes/prime_trash_bin_a.' . $phpEx);
		if (stifle_posts_enabled() && !auth_fake_delete('list', $forum_id))
		{
			$sql = str_replace('WHERE ', 'WHERE (p1.post_deleted_time = 0) AND ', $sql);
		}
//-- end: Prime Trash Bin (Posts) -------------------------------------------//
Но там нету! Это в 3.0.9 так было...
Вопрос если я вставлю после вот этого кода

Код: Выделить всё

$sql = 'SELECT COUNT(p.post_id) AS prev_posts
			FROM ' . POSTS_TABLE . " p
			WHERE p.topic_id = {$topic_data['topic_id']}
				" . ((!$auth->acl_get('m_approve', $forum_id)) ? 'AND p.post_approved = 1' : '');

		if ($sort_dir == 'd')
		{
			$sql .= " AND (p.post_time > {$topic_data['post_time']} OR (p.post_time = {$topic_data['post_time']} AND p.post_id >= {$topic_data['post_id']}))";
		}
		else
		{
			$sql .= " AND (p.post_time < {$topic_data['post_time']} OR (p.post_time = {$topic_data['post_time']} AND p.post_id <= {$topic_data['post_id']}))";
		}
Это правильно будет??
Аватара пользователя
МайскийЖук
phpBB 3.0.7-PL1
Сообщения: 2535
Стаж: 16 лет 11 месяцев
Благодарил (а): 17 раз
Поблагодарили: 366 раз

Prime Trash Bin

Сообщение МайскийЖук »

Да.
Любовь и боль, покой и бой я как любой несу с собой…
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 8 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Prime Trash Bin

Сообщение Alecto »

pisikot
найди похожее место в районе строк версии 3.0.9, вставь по инструкции (до/после).
если мод заработает - значит правильно.
нет - откатить сайт и, скорее всего ждать версию под 3.0.10 либо писать автору.
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 8 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Prime Trash Bin

Сообщение Alecto »

методом научного тыка вычислил место в файле viewtopic.php, которые вызывает ошибки в моде корзины (все остальные изменения для 3.0.10 не влияют).

старый код для форума версии 3.0.9 (с этим кодом корзина работает без ошибок):

Код: Выделить всё

		$sql = 'SELECT COUNT(p1.post_id) AS prev_posts
			FROM ' . POSTS_TABLE . ' p1, ' . POSTS_TABLE . " p2
			WHERE p1.topic_id = {$topic_data['topic_id']}
				AND p2.post_id = {$post_id}
				" . ((!$auth->acl_get('m_approve', $forum_id)) ? 'AND p1.post_approved = 1' : '') . '
				AND ' . (($sort_dir == 'd') ? 'p1.post_time >= p2.post_time' : 'p1.post_time <= p2.post_time');
это же место в 3.0.10 (именно оно вызывает ошибки):

Код: Выделить всё

		$sql = 'SELECT COUNT(p.post_id) AS prev_posts
			FROM ' . POSTS_TABLE . " p
			WHERE p.topic_id = {$topic_data['topic_id']}
				" . ((!$auth->acl_get('m_approve', $forum_id)) ? 'AND p.post_approved = 1' : '');

		if ($sort_dir == 'd')
		{
			$sql .= " AND (p.post_time > {$topic_data['post_time']} OR (p.post_time = {$topic_data['post_time']} AND p.post_id >= {$topic_data['post_id']}))";
		}
		else
		{
			$sql .= " AND (p.post_time < {$topic_data['post_time']} OR (p.post_time = {$topic_data['post_time']} AND p.post_id <= {$topic_data['post_id']}))";
		}
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Prime Trash Bin

Сообщение Пчелкин »

Во как инсталлятор правку засунул..прям в внутрь корзиновского кода...
Вот почему второй день сижу и для основного форума готовлю обновление до 3.0.10 вручную...
Три попытки в автомате привели к бум-бум...ни на Денвере ни на Хосте...
Инсталлятор предлагал качать измененные файлы с вкраплениями - изменениями не там, где мне надо с моим количеством дополнительного кода в файлах..короче инсталлятор у меня застрелился... :lol:
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 8 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Prime Trash Bin

Сообщение Alecto »

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

как временное решение - можно заменить указанный мной код 3.0.10 на 3.0.9.
кроме того, автор мода корзины уже ответил, что фикс к новой версии форума не будет сложным, так что не все потеряно :)
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 8 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Prime Trash Bin

Сообщение Alecto »

Итак, лекарство (не мое, рекомендация автора мода)... Обновляетесь до 3.0.10 по инструкции...
Попробуйте и отпишитесь:

Найти

Код: Выделить всё

//-- mod: Prime Trash Bin (Posts) -------------------------------------------//
// Don't include posts that have been mock-deleted if user isn't supposed to see the placeholder
		include ($phpbb_root_path . 'includes/prime_trash_bin_a.' . $phpEx);
		if (stifle_posts_enabled() && !auth_fake_delete('list', $forum_id))
		{
			$sql = str_replace('WHERE ', 'WHERE (p1.post_deleted_time = 0) AND ', $sql);
		}
//-- end: Prime Trash Bin (Posts) -------------------------------------------//
Заменить p1. на p.

Пока наблюдаю, но ошибок более замечено не было.
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Prime Trash Bin

Сообщение Пчелкин »

Еще это полезно от ошибок Ботовских...как-то где-то находил...
При установленном моде NV Newspage v1.0.5.1

includes/trim_message/bbcodes.php
find:

Код: Выделить всё

     $last_html_opening = $last_html_closing = $last_smiley = false;
replace with:

Код: Выделить всё

      $last_smiley = false;
      $last_html_opening = $last_html_closing = 0;
Последний раз редактировалось Пчелкин 09.01.2012 8:05, всего редактировалось 1 раз.
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Аватара пользователя
Лейтенант
phpBB 1.4.2
Сообщения: 59
Стаж: 17 лет 2 месяца
Благодарил (а): 2 раза
Поблагодарили: 2 раза

Re: Prime Trash Bin

Сообщение Лейтенант »

Пчелкин писал(а):Еще это полезно от ошибок Ботовских...как-то где-то находил...

includes/trim_message/bbcodes.php
А это точный адрес? Что-то такой папки не вижу :(

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