Пропустить

Учет постов только из нужных разделов

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

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

Учет постов только из нужных разделов

Сообщение 2E3S » 01.07.2009 10:30

Возникла проблема: надо учитать количество постов только из определенных разделов форума (поле 'user_posts'), если это топики (как рейтинг в торрентах). Я нашел в функции submit_post (includes/functions_posting.php) строчки, добавляющие количество постов ("user_posts = user_posts + 1"), получилось даже отключить инкрементирование в ответах (mode==reply), вроде работает и отключение учета за топики в ненужных разделах форума. Но у меня не получилось сделать обратное: отключить декрементирование количества сообщений за удаленные посты (везде) и топики (в ненужных разделах).
В includes/functions_admin.php простым поиском по директории удалось найти строчки c user_posts только вот тут (функция delete_posts):
	// Adjust users post counts
	if (sizeof($post_counts) && $post_count_sync)
	{
		foreach ($post_counts as $poster_id => $substract)
		{
			$sql = 'UPDATE ' . USERS_TABLE . '
				SET user_posts = 0
				WHERE user_id = ' . $poster_id . '
				AND user_posts < ' . $substract;
			$db->sql_query($sql);

			$sql = 'UPDATE ' . USERS_TABLE . '
				SET user_posts = user_posts - ' . $substract . '
				WHERE user_id = ' . $poster_id . '
				AND user_posts >= ' . $substract;
			$db->sql_query($sql);
		}
	}

Но в этом месте мой моск взорвался, сорри. Непонятно, как учитывать, топик ли это или пост удаляется. И куда эту $substract девать, что с ней делать. Может, кто-то сталкивался уже с этим?
В админке я не нашел настроек таких, а если таковые имеются - позор на мою голову :) Просто, как я узнал, в phpBB2 мод был отдельный.

2E3S
phpBB 1.0.0
 
Сообщения: 3
Зарегистрирован: 01.07.2009 8:30
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Учет постов только из нужных разделов

Сообщение Палыч » 01.07.2009 23:37

2E3S писал(а):Возникла проблема: надо учитать количество постов только из определенных разделов форума

А что, просто отключить счётчик постов в нужных форумах через админку - не катит?
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Палыч
Просто Палыч
Просто Палыч
 
Сообщения: 9256
Зарегистрирован: 24.05.2006 22:20
Откуда: Питер
Благодарил (а): 3 раз.
Поблагодарили: 283 раз.

Re: Учет постов только из нужных разделов

Сообщение 2E3S » 08.07.2009 9:31

Палыч: благодарю за ответ, но все равно надо сделать так, чтоб и никакие посты в темах не учитывались, кроме первого, при удалении и при добавлении.

2E3S
phpBB 1.0.0
 
Сообщения: 3
Зарегистрирован: 01.07.2009 8:30
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Учет постов только из нужных разделов

Сообщение darkdefender » 08.07.2009 19:27

Самый простой вариант - просто задать статичный массив, с идами или названиями форумов, в функции постинга, где инкрементируется количество сообщений пользователя, проверять по имени/иду форума ;)
Если писать это конечно =)
Аватара пользователя
darkdefender
phpBB 1.0.0
 
Сообщения: 2
Зарегистрирован: 07.07.2009 11:38
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Учет постов только из нужных разделов

Сообщение Shadow » 09.07.2009 8:17

Палыч писал(а):
2E3S писал(а):Возникла проблема: надо учитать количество постов только из определенных разделов форума

А что, просто отключить счётчик постов в нужных форумах через админку - не катит?

Как? Где? Всю админку перерыл - не могу понять где.

Форум 3.0.5

Shadow
phpBB 2.0.4
 
Сообщения: 211
Зарегистрирован: 20.11.2005 9:45
Откуда: Новосибирск
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Учет постов только из нужных разделов

Сообщение Izya » 09.07.2009 8:32

В форумных правах доступа (вкладка "Разное").
Изображение
Аватара пользователя
Izya
Former team member
 
Сообщения: 415
Зарегистрирован: 30.08.2008 9:46
Откуда: Абакан, Сибирь
Благодарил (а): 1 раз.
Поблагодарили: 19 раз.

Re: Учет постов только из нужных разделов

Сообщение Shadow » 09.07.2009 8:56

Спасибо, нашел. Но там "Учтите, что данная установка эффективна только при создании новых сообщений.". А если я щас буду конвертировать двойку в тройку, то все сообщения которые были оставлены на двойке, будут все учтены и считаться не будут только новые.. А как сделать чтобы и старые оставленные сообщения вычитались из общего кол-ва?
Вот допустим есть человек, у него 1000 сообщений. 200 из них оставлено в опред. форуме. Как сделать, чтобы при отключении форума этого, сообщений у человека стало 800, а не осталась тыща. И так чтобы со всеми.

Shadow
phpBB 2.0.4
 
Сообщения: 211
Зарегистрирован: 20.11.2005 9:45
Откуда: Новосибирск
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Учет постов только из нужных разделов

Сообщение 2E3S » 09.07.2009 13:56

darkdefender писал(а):Самый простой вариант - просто задать статичный массив, с идами или названиями форумов, в функции постинга, где инкрементируется количество сообщений пользователя, проверять по имени/иду форума ;)
Если писать это конечно =)

Нет нет. Тут ключевая проблема в декремнтировании.Надо отключить декрементирование за удаление любого поста кроме первого. Инкрементирование я уже сделал, чтоб учитывалось нужное.
По ходу эту фишку еще никто не просек :)

2E3S
phpBB 1.0.0
 
Сообщения: 3
Зарегистрирован: 01.07.2009 8:30
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Учет постов только из нужных разделов

Сообщение 6a6ka » 22.01.2010 23:39

Спасение утопающих дело рук самих утопающих :)
Я как-то начал учить пхп, ява итд, так в принципе можно написать скрипт, в который вбиваешь ид форума, он смотрит ид темы и ид автора мессаги, далее отнимает у людей с этим ид сообщение. И так парсит БД, правда повторный запуск скрипта о5 отнимет сообщения :)
Неплохо было бы реализовать это как модуль - еще одна колонка в таблице сообщений, где указано, учитывается ли сообщение.

6a6ka
phpBB 1.0.0
 
Сообщения: 1
Зарегистрирован: 17.03.2009 23:16
Откуда: Беларусь
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Учет постов только из нужных разделов

Сообщение tantany » 17.03.2010 11:17

В форумных правах доступа (вкладка "Разное").


ну никак не могу найти. есть раздел ФОРУМЫ и в нем ДОСТУП К ФОРУМАМ ... и ФОРУМНЫЕ ПРАВА ГРУПП. но нету раздела РАЗНОЕ и нет ни слова о сообщениях.
а еще есть в администраторском разделе ПРАВА ДОСТУПА. но там тоже нет раздела РАЗНОЕ и нет ни слова о сообщениях.

или я не там смотрю. пожалуйста, можно подробнее???

tantany
phpBB 1.0.0
 
Сообщения: 2
Зарегистрирован: 26.11.2009 14:40
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Учет постов только из нужных разделов

Сообщение Shredder » 17.03.2010 11:32

Не там смотришь.
Форумные права пользователей или групп, далее выбираешь нужную группу или пользователя, далее нужный форум, и уже потом, при нажатии на "Расширенные права" (справа) будет вкладка Разное.

Shredder
Former team member
 
Сообщения: 1010
Зарегистрирован: 14.12.2008 10:18
Благодарил (а): 50 раз.
Поблагодарили: 161 раз.


Вернуться в Для авторов (phpBB 3.0.x)

 

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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

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