Показать сообщение отдельно
  #1 (permalink)  
Старый 19.07.2012, 20:10
Аватар для Demath
Профессор
Отправить личное сообщение для Demath Посмотреть профиль Найти все сообщения от Demath
 
Регистрация: 22.06.2012
Сообщений: 168

Скрипт для автоцензуры текстовых полей
Помогите доделать скрипт для автоцензуры заголовков тем (или любого другого текстового поля).
Устал от бредовых заголовков на своём форуме.
Нужно, чтобы, как только пользователь наберёт стоп-слово, скрипт его тут же удалял и выводил модальное окно с объяснением, почему это не есть гут, что, в принципе, получилось сделать.
Застрял на:
- запрете слов, в которых смешаны кириллические и латинские буквы, и смеси слов с цифрами?
- замене первой буквы на заглавную? (без text-transform из CSS, скриптово)
- удалении точки, если она является самым последним символом в строке?

<!DOCTYPE html>
<html>
<head>
<meta http-equiv=content-type content="text/html; charset=utf-8">

<script type=text/javascript>
stopWords=['помогите','помагите','памогите','памагите','срочно','горю',
           'пожалуйста','пожалуста','пжл','пож.','плиз','хелп','надо',
           'нужно','нужна','необходим','нуждаюсь','прошу','помощи',
		   'нужна ваша помощь','хочу','хотелось бы','как бы','как-бы',
		   'какбы','завтра','умоляю','подскажите','нужен совет','!',
		   'ребята','люди','уважаемые','окажите помощь','здравствуйте',
		   'здраствуйте','спасибо','спс','благодар','болею','болел',
		   'больниц','беремена','попросил','такой','такая','такое',
		   'такие','help','plz','pls','please','pleas','plez','sos']

function test(obj)
{   obj=document.getElementById("abcd");
    currentText=obj.value;
    for(var i=0; i<stopWords.length; i++)
        {re=new RegExp(stopWords[i],"gi");
         if(re.test(currentText))
            {temp="";
             for(var j=0; j<stopWords[i].length; j++){temp+=""}
             currentText=currentText.replace(re,temp);
             obj.value=currentText;
             alert('Уважаемый пользователь!\n\nСогласно Правилам форума, '+
                   'в Названии сообщения не\nдопустимы слова и выражения, '+
                   'не отражающие его суть:\n\nПомогите, Срочно, '+
                   'Пожалуйста, Плиз, Хелп, Help, SOS\nи т.д. и т.п.'+
                   '\n\nАдминистрация настоятельно рекомендует Вам впредь '+
                   'не\nнарушать Правила форума, в противном случае на Вас '+
                   'будут\nналожены санкции, вплоть до вечного бана.');
           }
        }
}
</script>
  
<body>
<p>Введите любое из слов:<br />
<b>помогите, срочно, горю, пожалуйста, плиз, хелп, help, sos</b></p>
<input style="width: 400px;" placeholder="Здесь" id="abcd" onkeyup="test(this)" onchange="test(this)">
</body>
</html>

Последний раз редактировалось Demath, 20.07.2012 в 00:11. Причина: Исправил ошибку
Ответить с цитированием