Плагин анти-мат

#1 13 июля 2011 в 01:52
Скачал и поставил instantcms.ru/blogs/mysli-ob-instantcms/plagin-anti-mat-v-komentarijah-saita.html#c
Очень доволен, спасибо автору!
Но как поправить следующее?!

потре[*цензура*]йте
Как сделать так, что бы в таких словах не выводилась [*цензура*]. Плагин заменяет фильтр слова даже внутри слова.

Спасибо очень жду ответа!
#2 13 июля 2011 в 03:41
Как вариант вбейте в поиске по файлам слово"цензура" найдите его и замените например на звездочку или оставте поле пустым…
#3 13 июля 2011 в 03:56
редактируйте код плагина.Если не нашли вариантов, редактируйте базу слов))
#4 13 июля 2011 в 06:10
Он имеет ввиду, чтобы слова такие как: потреБЛЯйте не попадали под действие фильтра!
#5 13 июля 2011 в 14:02
Анатолий, совершенно верно!
#6 18 июля 2011 в 00:18
1) в файле core/cms.php создаем функцию

  1.  
  2. public static function antimat($str){
  3. include_once(PATH.'/core/classes/antimat.class.php');
  4. include_once(PATH.'/core/classes/ReflectionTypehint.php');
  5. include_once(PATH.'/core/classes/UTF8.php');
  6. $mat = Censure::parse($str,'10','',true,'***','CP1251');
  7. return $mat;
  8. }
  9.  
2) скачиваем архив instantcms.ru/users/files/download1265.html и заливаем
в корень сайта.

3) Все теперь там где ругаются сильно вызываем функцию antimat(str).

Например для комментов — правим в файле components/comments/frontend.php

после строчек
  1.  
  2. if ($do=='add'){
  3.  
  4. //Удаляем сообщение об ошибках комментариев
  5. unset($_SESSION['cm_error']);
  6.  
  7. $error = '';
  8.  
  9. $captha_code = $inCore->request('code', 'str', '');
  10. $guestname = $inCore->request('guestname', 'str', '');
  11. $user_id = $inCore->request('user_id', 'int', 0);
  12.  
  13. if ($inCore->isUserCan('comments/bbcode') && ($cfg['bbcode'] || $cfg['smiles'])) {
  14. $content = $inCore->request('content', 'html', '');
  15. $content_bb = $inDB->escape_string($content);
  16. $content = $inCore->parseSmiles($content, true);
  17. $content = $inDB->escape_string($content);
  18. } else {
  19. $content = $inCore->request('content', 'str', '');
  20. $content_bb = '';
  21. }
  22.  
ДОБАВЛЯЕМ ВСЕГО ОДНУ СТРОКУ

  1. $content = $inCore->antimat($content); // фильтр мата
Ну все. Вроде ничего не забыл. scratch
#7 18 июля 2011 в 16:11
Спасибо о Великий и Ужасный shock
только вставлять надо еще и в блоке if ($do=='edit'), иначе после редактирования камента весь мат вылезет опять. Кстати словарик в классе маловат, например "бля" не фильтруется, зато сочетание "еб" вырезается (потр***ность) sadА до занесения в базу нельзя такое организовать? Так проще отфильтровать, чем потом по модулям выискивать.
UPD: посмотрел в базу заносится уже отфильтрованный коммент, откуда же тогда берется мат в ориг. виде при редактировании поста — из кеша???
#8 18 июля 2011 в 19:58
потреБЛЯйте хоть не трогает как просили)))

бля — это не мат)

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


так организовано походу.
#9 23 мая 2012 в 00:38


редактируйте код плагина.Если не нашли вариантов, редактируйте базу слов))

◦ Ӎɑƙҫ иӎ ◦ Ᵽɑɗ иớӊớβ

А что в этом коде есть база слов??? Не могли бы скрин скинуть тех строк в которые надо добаллять марерные слова, и еще вопрос, если добавлять матерные слова целиком, наверное можно минимизировать такие варианты типа
потре[*цензура*]йте???
#10 23 мая 2012 в 06:21
А это не они?

#11 23 мая 2012 в 23:04


А это не они?


Dinar (aka Polder)

Да я вот тоже сначало так подумал, но в итоге при добавлении одного из матерных слов в любую из строк ни какого эфекта не происходит!!! мат продолжает созерцать на сайте, вот поэтому как бы и задал вопрос!!! может я что не так делаю вы уж просветите дурака??? crazy
#12 26 октября 2019 в 17:18
а в двойку такое засунуть можно или надо править код?
#13 26 октября 2019 в 17:53

а в двойку такое засунуть можно

Def
Вот этот скрипт ставил когда нужно было. Просто и работает.
github.com/itlessons/js-antimat
#15 26 октября 2019 в 19:49
Как сделать чтобы работал для поле текст и для комментариев одновременно?
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.

Похожие темы

Антиспам cleantalk

Разработка и тестирование Создана 4 года назад 8 сообщений

Антидетект

Флейм / Флуд / Оффтопик Создана 4 года назад 2 сообщения

Антироскомнадзоровский хостинг

Полезное Создана 3 года назад 16 сообщений

Антимат

Флейм / Флуд / Оффтопик Создана 3 года назад 12 сообщений

Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.