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

 
Посетитель
small user social cms
Медаль
Сообщений: 225
Скачал и поставил http://instantcms.ru/blogs/mysli-ob-instantcms/plagin-anti-mat-v-komentarijah-saita.html#c
Очень доволен, спасибо автору!
Но как поправить следующее?!

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

Спасибо очень жду ответа!
Посетитель
small user social cms
МедальКубок зрительских симпатий
Сообщений: 238
Как вариант вбейте в поиске по файлам слово"цензура" найдите его и замените например на звездочку или оставте поле пустым..
Уважайте мнение каждого...
Реклама
cms
Посетитель
small user social cms
Медаль
Сообщений: 187
редактируйте код плагина.Если не нашли вариантов,редактируйте базу слов))
Посетитель
small user social cms
Медаль
Сообщений: 188
Он имеет ввиду, чтобы слова такие как: потреБЛЯйте не попадали под действие фильтра!
Посетитель
small user social cms
Медаль
Сообщений: 225
Анатолий, совершенно верно!
Модератор
small user social cms
МедальМедаль за отзывчивостьКубок зрительских симпатий
Сообщений: 435
1) в файле core/cms.php создаем функцию

Код 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) скачиваем архив http://instantcms.ru/users/files/download1265.html и заливаем
в корень сайта.

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

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

после строчек
Код 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.  
ДОБАВЛЯЕМ ВСЕГО ОДНУ СТРОКУ

Код PHP:
  1. $content = $inCore->antimat($content); // фильтр мата
Ну все. Вроде ничего не забыл. scratch
Посетитель
small user social cms
Медаль
Сообщений: 373
Спасибо о Великий и Ужасный shock
только вставлять надо еще и в блоке if ($do=='edit'), иначе после редактирования камента весь мат вылезет опять. Кстати словарик в классе маловат, например "бля" не фильтруется, зато сочетание "еб" вырезается (потр***ность) sad А до занесения в базу нельзя такое организовать? Так проще отфильтровать, чем потом по модулям выискивать.
UPD: посмотрел в базу заносится уже отфильтрованный коммент, откуда же тогда берется мат в ориг. виде при редактировании поста - из кеша???
Редактировалось: 3 раз (Последний: 18 июля 2011 в 17:15)
Модератор
small user social cms
МедальМедаль за отзывчивостьКубок зрительских симпатий
Сообщений: 435
потреБЛЯйте хоть не трогает как просили)))

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

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

так организовано походу.
Посетитель
small user social cms
Сообщений: 13
◦ Ӎɑƙҫиӎ ◦ Ᵽɑɗиớӊớβ:

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

А что в этом коде есть база слов??? Не могли бы скрин скинуть тех строк в которые надо добаллять марерные слова, и еще вопрос, если добавлять матерные слова целиком, наверное можно минимизировать такие варианты типа
потре[*цензура*]йте???
Редактировалось: 1 раз (Последний: 23 мая 2012 в 00:39)
Посетитель
no avatar
Медаль
Сообщений: 196
А это не они?

Плагин анти-мат
Редактировалось: 1 раз (Последний: 23 мая 2012 в 06:22)
Посетитель
small user social cms
Сообщений: 13
Dinar (aka Polder):

А это не они?

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


Да я вот тоже сначало так подумал, но в итоге при добавлении одного из матерных слов в любую из строк ни какого эфекта не происходит!!! мат продолжает созерцать на сайте, вот поэтому как бы и задал вопрос!!! может я что не так делаю вы уж просветите дурака??? crazy
Посетитель
no avatar
МедальАвторитет форума
Сообщений: 2785
а в двойку такое засунуть можно или надо править код?
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.