Нецензурные слова в названии темы - как убрать?

Автор Beer, 05 мая 2012, 11:22:15

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Beer

 При использовании данной опции она так же заменяет слова в названии темы! В контексте моего использования - это косяк. Наверняка эту функцию где-то можно пофиксить.
Слезная просьба - гуру, помогите если найдется время!

В админке  - Нецензурные слова. Напишите в левом поле нецензурное слово, а в правом — его замену.
Больше настроек нет.

Буду через 4 дня.

Beer

 Upd...

Как же убрать автозамену для названий тем?

maestrosite.ru

В самой теме - Display.template.php, закомментировать censorText($message['subject']);
В списке тем - MessageIndex.php:    censorText($row['first_subject']); и censorText($row['last_subject']);

Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Beer

 Спасибо тебе "Светлая голова maestrosite.ru" - пошел править!
+1 влепил от души.

Beer

Что-то не того малость...
В Display.template.php нет таких строк, есть в  Display.php, но удаление их проблему не решает.

censorText () я так понимаю это функция там дофига где - методом тыка долго тыкать....
Вот кусок кода из Recent.php, лишнее забанил - не помогло.

// Censor the subject and message preview.
//censorText($row['first_subject']);
censorText($row['first_body']);

// Don't censor them twice!
if ($row['id_first_msg'] == $row['id_last_msg'])
{
//$row['last_subject'] = $row['first_subject'];
$row['last_body'] = $row['first_body'];
}
else
{
//censorText($row['last_subject']);
censorText($row['last_body']);
}
}
else
{
$row['first_body'] = '';
$row['last_body'] = '';
//censorText($row['first_subject']);

if ($row['id_first_msg'] == $row['id_last_msg'])
$row['last_subject'] = $row['first_subject'];
else
//censorText($row['last_subject']);
}

maestrosite.ru

Да, цензура не в шаблонах. Для сообщений темы в Display.php - два вызова: собственная тема темы (ой!) и в цикле для каждого сообщения темы. Если правите Recent.php, то смотреть результат надо в новых и в непрочитанных сообщениях.
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Beer


maestrosite.ru

Тема оформления здесь роли не играет. Речь идёт о теме обсуждения (topic)
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Beer

Я так понимаю, что банить тогда надо везде строку
//censorText($row['first_subject']);

и

//censorText($row['last_subject']);


Так что ли?
Т.к. там и личные сообщения подмешаны, последние, непрочитанные, принтабл версия......

maestrosite.ru

"Баньте" то, что вам нужно забанить. Цитирую пример (исправленный):
ЦитироватьВ самой теме - Display.php, закомментировать censorText($message['subject']); (два вызова)
В списке тем (содержимое раздела, доски) - MessageIndex.php:    censorText($row['first_subject']); и censorText($row['last_subject']); - по два вызова
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Beer

Parse error: syntax error, unexpected '}' in forum/Sources/MessageIndex.php on line 447


else
{
$row['first_body'] = '';
$row['last_body'] = '';
//censorText($row['first_subject']);

if ($row['id_first_msg'] == $row['id_last_msg'])
$row['last_subject'] = $row['first_subject'];
else
//censorText($row['last_subject']);
}


ЦитироватьВ самой теме - Display.php, закомментировать censorText($message['subject']); (два вызова)

Нахожу только один вызов.

maestrosite.ru

Цитата: Beer от 22 июня 2012, 14:39:00
Parse error: syntax error, unexpected '}' in forum/Sources/MessageIndex.php on line 447

if ($row['id_first_msg'] == $row['id_last_msg'])
$row['last_subject'] = $row['first_subject'];
// else
//censorText($row['last_subject']);
}



Цитата: Beer от 22 июня 2012, 14:39:00
Нахожу только один вызов.

// Censor the title...
censorText($topicinfo['subject']);
Если задаются вопросы по вашей проблеме, значит это нужно вам!
---
Обновления форума, разрешение конфликтов, адаптация модов, исправление ошибок - ваши предложения о сотрудничестве направляйте по адресу smf@maestrosite.ru

Beer

Сенкс за внимание!
Я отпишусь о результатах позже обязательно.

Beer

Что-то не удается достичь результатов.
Там censorText - дофигища, а методом перебора - нифига не выходит...