Бот реагирует на определённые слова в сообщениях.
Общий вид страниц форума, перед </head> ставим:
Code
<script type="text/javascript">
/*
++++++++++++++++++++++++++
++ Author: Vanofuture ++
++ Site: XOnline.Net.Ru ++
++++++++++++++++++++++++++
*/
// Настройки
trashId=15; // Ид форума топки/архива/склада/мусорки или чего ещё там у вас...
trashConfirm=''; // Это то чё будет бот печатать, когда вы напишите какое-то из слов на перенос темы
bot_rank=''; // Титул или ранг бота
bot_quote=''; // Ссылка к кнопки цитировать
bot_up=''; // Ссылка к кнопки наверх
bot_group=''; // Группа бота
bot_ava=''; // Ссылка на аватар бота
bot_nik=''; // Ник бота
bot_rank_img=''; // Ссылка на ранг бота(картинка)
words=new Array(); // Массив слов и сочетаний, на которые будут простые ответы
words[0]=new Array('боян','повторение - мать учения');
words[1]=new Array('спс','спасибо на хлеб не намажеш и в карман не положиш. Гони ПплюсеГ!');
words[2]=new Array('круто','ага, прям как яйца');
words[3]=new Array('девушки','ммм...мне блондиночки нравятся!');
words[4]=new Array('йа креведко','а йа кревкдко');
words[5]=new Array('Аффтар выйпей йаду','Продажа йада для аффтаров оптом и в розницу');
words[6]=new Array('осел','Надо говорить не "Осел" а "eMule" =)))');
words[7]=new Array('спасибо','спасибо на хлеб не намажешь и в карман не положишь. Гони ПплюсеГ!');
words[8]=new Array('Получилось!','Поздравляю!');
// Вы можете сами дополнить словарь бота
modwords=new Array('фтопку','тема закрыта','конец флуду'); // слова и сочетания по которым тема будет идти фтопку
function botWrite(message,word,user,time,id){
document.write('<tr><td
class="postSeparator"></td></tr><tr><td
class="postRest2"><table border="0" width="100%" cellspacing="1"
cellpadding="2" class="postTable"><tr><td width="23%"
class="postTdTop" align="center"><a href="javascript://"
onClick="emoticon(\'[b]'+bot_nik+'[/b],\');return
false;">'+bot_nik+'</a></td><td
class="postTdTop">'+time+'</td></tr><tr><td
class="postTdInfo" valign="top"><img alt="'+bot_nik+'"
class="userAvatar" border="0" src="'+bot_ava+'"
/><br>'+bot_rank+'<br><img border="0"
align="absmiddle" name="rankimg" src="'+bot_rank_img+'" title="Ранг 10"
/><br>Группа: '+bot_group+'</td><td
id="eBotMessage'+id+'" class="posttdMessage" valign="top"><div
class="bbQuoteBlock"><div class="bbQuoteName"
style="padding-left:5px;font-size:7pt"><b>Quote</b>
(<span class="qName">'+user+'</span>)</div><div
class="quoteMessage" style="border:1px
inset;max-height:200px;overflow:auto;">'+word+'</div></div><b>'+user+'</b>,
'+message+'</td></tr><tr><td class="postBottom"
align="center"> </div></td><td
class="postBottom"><table border="0" width="100%" cellspacing="0"
cellpadding="0"><tr><td> </td><td align="right"
style="padding-right:15px;"><a
href="javascript:Insert(\''+bot_nik+'\',selection);"
onMouseOver="get_selection()" class="postQuote"><img
style="margin:0;padding:0;border:0;" src="'+bot_quote+'"
title="Цитировать" /></a></td><td width="2%" nowrap
align="right"><a class="goOnTop"
href="javascript:scroll(0,0);"><img
style="margin:0;padding:0;border:0;" src="'+bot_up+'" title="Вверх"
/></a>
</td></tr></table></td></tr></table></td></tr>');}
function checkBot(id,user,time,group_id){
data=document.getElementById('eMessage'+id).innerHTML.toLowerCase();
if(group_id==3 || group_id==4){
for(i=0;i<modwords.length;i++){
if(data.indexOf(modwords[i].toLowerCase())!=-1){
botWrite(trashConfirm,modwords[i],user,time,id);break;}}}
if(!document.getElementById('eBotMessage'+id)){
for(i=0;i<words.length;i++){
if(data.indexOf(words[i][0].toLowerCase())!=-1){
botWrite(words[i][1],words[i][0],user,time,id);
break;}}}}
function checksubmit(obj){
data=obj.message.value.toLowerCase();
for(i=0;i<modwords.length;i++){
if((cur_group_id==3 || cur_group_id==4) && data.indexOf(modwords[i].toLowerCase())!=-1){
num=location.href.split('/');
num=num[num.length-1].split('-');
openLayerB('Et',0,'/forum/'+num[0]+'-'+num[1]+'-0-20-1','Изменить/переместить тему',450,200,1,0,0,0,'left');
searchLayerMove=setInterval('moveToTrash()',500);
return false;break;}}return true;}
function moveToTrash(){
layer=document.getElementById('frm92');
if(layer){
layer.nfid.value=trashId;
document.getElementById('submfrm92').click();
clearInterval(searchLayerMove);
checkMooved=setInterval('checkMoved()',500)}}
function checkMoved(){
layer=document.getElementById('frm92');
if(layer.innerHTML.indexOf('Изменения сохранены')!=-1){
clearInterval(checkMooved);
document.addform.submit();}}
</script>
<script type="text/javascript">
cur_group_id=$GROUP_ID$;
</script>
В шаблоне вид материалов форума $MESSAGE$ заменяем на
Code
<span id="eMessage$ID$">$MESSAGE$</span>
Потом в конце этого шаблона пишем:
Code
<script type="text/javascript">checkBot($ID$,'$USERNAME$','$WDAY$, $DATE$, $TIME$',$GROUP_ID$);</script>
Комментарии: