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

Сокрытие всех постов юзеров одной группы


Digy

Вопрос

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

  • 0
Поставить каждому премодерацию сообщений.

 

Нет, имеется ввиду другая идея.

Если пользователь попадает в группу "Заблокированные", то все его посты, которые он написал ранее, становятся скрытыми для остальных посетителей форума (кроме администрации, конечно).

Само собой, писать он уже ничего не может ввиду блокировки аккаунта.

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

  • 0

я назвал стандартную возможность, которая приближённо подходит.

Не нравится, напишите сами то что вам нужно.

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

  • 0

Song, чего злой такой? :D

 

Digy, если php знаете нормально, могу предложить идею: в ibf_posts добавляем новую колонку, ставим ей значение "0". Далее (если я правильно мыслю), выполняете запрос и обновляете ibf_posts, где ID юзера==ID забаненного, и "0", меняем, к примеру на "1". В сорсах пишем условие, что если у поста значение "1", остальных группы, кроме админа постов не видят.

 

Может это и деревянный метод, но все равно работать будет.

 

 

Ну или как сказал Сонг, только опят-таки, надо запросом всего его посты поставить в премодерацию. Но это конечно не прикольно будет ;)

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

  • 0

Зато вариант Сонга проще. Ибо во втором случае прийдётся ещё следить как-то за темами, которые заблокированные открывали... Ибо скрывать их нехорошо, а тогда надо чтоб форум делал вид что тема начинается со второго поста... и ещё туева куча таких вот мелочей...

 

Для реализации второго метода достаточно сделать слудующее:

в файле ./sources/lib/func_topic_linear.php после

		$queued_query_bit = ' and queued=0';

	if ( $this->ipsclass->can_queue_posts($this->topic['forum_id']) )
	{
		$queued_query_bit = '';

		if ( $this->ipsclass->input['modfilter'] == 'invisible_posts' )
		{
			$queued_query_bit = ' and queued=1';
		}
	}

вставить код, получающий список всех юзеров из нужной группы, далее формируем из него строку вида "(13, 54, 345)" и в $queued_query_bit дописываем "and author_id not in (13, 54, 345)". Аналогично в файле ./sources/lib/func_topic_threaded.php.

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

  • 0

Спасибо, вариант с доп колонкой пока не радует.

 

Куда засунуть "UPDATE ibf_posts SET queued=1 WHERE ...", чтобы этот запрос выполнялся при перемещении юзера в группу заблокированных?

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

Присоединиться к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

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

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