Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Запрет ссылок новичкам [IPB 3.2.3]

Опубликовано:

Здравствуйте!

Давно уже обсуждали эту проблему, но так и не пришли к консенсусу.

В общем, даже если группе пользователей запретить использовать bb-код url, их ссылки все равно публикуются на форуме, только в неактивном виде. А хотелось бы чтоб ссылки вовсе не публиковались и запрещались для пользователей, которые, скажем, не достигли 5 постов на форуме.

Расскажу немного о своей ситуации. У меня на форуме, когда юзверь совершил регистрацию, он попадает в группу "Новички". Этой группе я запретил почти всё, т.е. банально даже в профиль зайти НЕЛЬЗЯ или создать новую тему или отправить ЛС. Но по написанию 5 постов, юзверь автоматом кидается в группу "Пользователи" со всеми стандартными правами.

Я искал способ запретов ссылок, но пришёл только к тому, что надо как-то системно запретить протокол " http:// " группе пользователей "Новички" и чтобы они не смогли отправить пост, пока в нем есть этот протокол. Подскажите как это сделать?! Это сможет глобально решить проблему спама и будущие разработчики систем безопасности смогут сие решение внедрять в новые версии форума. Что я разошёлся :D но доля правды тут есть, поскольку спам-бот потыркается на форуме, "поймёт" что здесь посты не постятся и убежит. Придёт другой, захочет кинуть ссылку, а хренушки, потасуется немного и тоже свалит. Форум чист от спама, все довольны!

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

Опубликовано:
  • Автор

Да я готов заплатить 5$ но из-за этого продления лицензии, которая собственно мне не нужна, я не могу скачать этот хук! Помогите уж кто-нить, а? :angry:

Опубликовано:
  • Автор

Может быть есть возможность как-то сделать "Черный список" для определенной группы пользователей?

Опубликовано:

Вот нужно что-то типа этого, но только на группу пользователей "Новички", которые еще не написали 5 сообщений на форуме.

 

Вариант для 3.4+ (проглядел что у тс-а 3.2 :) )

 

1. Внешний вид -> Языки -> %язык% -> Add string

Application: Forums

Pack Name: public_post

Key: links_not_allowed

Default Text: To post links in this forum you must have %d posts

 

2. Открыть admin\sources\classes\editor\composite.php

Найти

	return $cleanContent;

Выше добавить

	$_minPosts = 10;
	$_exGroups = array(4);

	if( ! IPSMember::isInGroup($this->memberData, $_exGroups) AND $this->memberData['posts'] < $_minPosts )
	{
		foreach( array('<a ', 'http://', '[/url]') as $v )
		{
			if( stripos($cleanContent, $v) !== false )
			{
				$this->setParsingErrors( array( sprintf($this->lang->words['links_not_allowed'], $_minPosts) ) );
				break;
			}
		}
	}

 

10 - количество постов

array(4) - освобожденные группы на которых данное правило не действует

www.site.ru линком не считается. И, естественно, это ни разу не защищает от спама. Будут спамить либо не активными ссылками, либо без ссылок. Хотя некая доля отсеется. Но назвать это реальной защитой было бы слишком сильно сказано.

Опубликовано:

Для 3.2+

 

1. Внешний вид -> Языки -> %язык% -> Add string

Application: Forums

Pack Name: public_post

Key: links_not_allowed

Default Text: To post links in this forum you must have %d posts

 

2. Открыть admin/sources/classes/bbcode/custom/defaults.php

Найти

	//-----------------------------------------
	// Let's remove any nested links..
	//-----------------------------------------

Выше добавить

       $_minPosts = 10;
       $_exGroups = array(4);

       if( ! IPSMember::isInGroup($this->memberData, $_exGroups) AND $this->memberData['posts'] < $_minPosts )
       {
		$this->warning = sprintf($this->lang->words['links_not_allowed'], $_minPosts);
		return $content;
       }

 

(Включить парсинг ббкода url для всех групп)

Опубликовано:

В admin/sources/classes/bbcode/custom/defaults.php

Опубликовано:
  • Автор

Да, я уже увидел что Вы исправили пост. Всё получилось! Огромнейшее Вам спасибо! :)

 

www.site.ru линком не считается. И, естественно, это ни разу не защищает от спама. Будут спамить либо не активными ссылками, либо без ссылок. Хотя некая доля отсеется. Но назвать это реальной защитой было бы слишком сильно сказано.
Решение можно совершенствовать. То, что Вы сделали - это уже хороший ход в борьбе со спамом. Но что если для определенной группы пользователей запретить такие наборы символов как 'www' и '.ru' (без кавычек), тогда спамерам вообще не оставим шансов!!!

Изменено пользователем acids

Опубликовано:

А не проще бы поставить нормальную капчу или защиту при регистрации и не плодить спамеров на форуме? Отключение ссылок практически ни от чего не защищает, так как спам это далеко не обязательно ссылки.

Опубликовано:
  • Автор

Вы и сами прекрасно понимаете, что та капча, которая предусмотрена движком, не решает проблему спама. Самое эффективное это система "Вопрос - ответ". Она решает проблему спама, но не надолго. Раз в квартал надо менять вопрос.

Здесь же я предлагаю усилить эффект стандартной защиты, раз и навсегда покончив с таким видом спама как постинг ссылок вновь зарегистрирвоанными спам-ботами. И я согласен с Вами в том, что "www.site.ru линком не считается. Будут спамить не активными ссылками", но запретив отдельной группе (которые только что зарегистрировались с продвижением в обычную группу после 5 сообщения) публиковать их посты, в которых есть слова "www" и ".ru" (и т.д.), вопрос с данным видом спама будет закрыт.

  • 1 месяц спустя...
Опубликовано:
  • Автор

Доброго времени суток!

Ребят, помогите! Появилась проблема следующего характера. После того, как я сделал всё как советовал siv1987 в сообщении #20 данной темы, ссылки на форуме, которые публикуют пользователи (у которых более 5 сообщений), иногда становятся неактивными, а через время снова активные! Ролики Youtube вообще пропадают!!!

Подскажите, что необходимо предпринять?!

 

post-54136-0-26413100-1385818423_thumb.jpg

Опубликовано:

Откатите изменения и понаблюдайте действительно ли в этом проблема.

  • 4 месяца спустя...
Опубликовано:

Пожалуйста, подскажите, что нужно добавить в код,чтобы правило не распространялось на вставляемые по урлу картинки?

Опубликовано:

Картинки по урл'у это ссылки.

Либо это ссылки, либо изображения в теге img.

Опубликовано:

Картинки по урл'у это ссылки.

Либо это ссылки, либо изображения в теге img.

То есть не получиться добавить исключения для:

<img class="bbc_img" src="http://www.site.ru/ii/photo.png" alt="photo.png">

?

Нельзя разрешить в указанном Вами коде ссылки, содержащие *.png *.jpg ?

Опубликовано:

В данном случае это изображение, а не ссылка.

Ссылка - a href (bbcode url), они и запрещаются в любом виде, пусть то ссылку на картинку, или на что-то еще.

Опубликовано:

В данном случае это изображение, а не ссылка.

Ссылка - a href (bbcode url), они и запрещаются в любом виде, пусть то ссылку на картинку, или на что-то еще.

Благодарю, это я понял. Я воспользовался Вашей рекомендацией по запрету ссылок ipb 3.4, что привело к невозможности публикации картинок с других сайтов. Так может быть есть какое то решение этого вопроса?

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.