[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Анти-Спам для форума
DimoNДата: Понедельник, 24.05.2010, 14:12 | Сообщение # 1

Dar[k] S.
Сообщений: 207
Медали:
За создание сайта За хорошию репутации За 50 постов За 100 Постов За 150 Постов За 200 Постов
[ 38 ]
Нету на сайте

Данный скрипт не позволяет пользователю отправлять больше одного сообщения за 30 секунд (тайм-аут можно изменить).
Установка:

Все коды нужно ставить в общий вид форума.

Сначала подключим функции для работы с Cookies, поставив этот код в head:

Code
<?if($PAGE_ID$='threadpage')?>    
<script type="text/javascript">    
function getCookie(a){var b=document.cookie.match(new RegExp("(?:^|; )"+a.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,"\\$1")+"=([^;]*)"));return b?decodeURIComponent(b[1]):undefined}function setCookie(b,f,c){c=c||{};var i=c.expires;if(typeof i=="number"&&i){var h=new Date();h.setTime(h.getTime()+i*1000);i=c.expires=h}if(i&&i.toUTCString){c.expires=i.toUTCString()}f=encodeURIComponent(f);var a=b+"="+f;for(var e in c){a+="; "+e;var g=c[e];if(g!==true){a+="="+g}}document.cookie=a}function deleteCookie(a){setCookie(a,null,{expires:-1})};    
</script>    
<?endif?>

Затем — сам скрипт, после $BODY$:

Code
<?if($PAGE_ID$='threadpage')?>    
<script type="text/javascript">    
/*    
* uForum.AntiSpam by $USERNAME$ aka. exec    
* 15:23 04.04.2010 ~ KRSK    
*/    

var bts = document.getElementById('frF16');    
bts.onclick = 'setCookie("FrDs", "ddd", {expires: 30})';    
if (!!getCookie("FrDs")) {    
     bts.disabled = true,    
     bts.value = 'Включена защита от спама',    
     bts.style.width = '200px',    
     btr = document.getElementById('frF17'),    
     er = document.createElement('div'),    
     er.align = 'center',    
     er.innerHTML = 'Минимальный интервал для отправки сообщений — 30 секунд! Подождите и обновите страницу.',    
     btr.parentNode.insertBefore(er, btr.nextSibling);    
}    
</script>    
<?endif?>

bts.onclick = 'setCookie("FrDs", "ddd", {expires: 30})'; — здесь можно установить время тайм-аута (в секундах)


  • Страница 1 из 1
  • 1
Поиск: