Оптимальнее всего ставить в форму ответа, тогда скрипты будут срабатывать быстрее, чем загрузится страница с остальными скриптами, но гости не будут видеть эффекта. Можно поставить и в html-низ.
ВАРИАНТ 1
Тег предупреждения:
<script>
function addMod(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("[mod]",from))==-1) return str;
if((pos2=str.indexOf("[/mod]"),pos+5)==-1) return str;
newpos=str.indexOf("[mod]",pos+5)
if(newpos<pos2 && newpos!=-1) str=addMod(str,pos+5,true)
if((pos2=str.indexOf("[/mod]",pos+5))==-1) return str;
str=str.substring(0,pos)+makeMod(str.substring(pos+5,pos2))+str.substring(pos2+6,str.length)
if( str.indexOf("[mod]")!=-1 && internal==false) str=addMod(str,0,false)
return str}function makeMod(txt){
txt="<br><div style=\"margin: 0px; padding: 0px; background-color:#F1F1FD; border-left: 0px solid #6060FF; border-top: 0px dotted #000; border-right: 1px dotted #000; border-bottom: 1px dotted #000;\"><TABLE cellpadding='0' cellspacing='0'><TD align='middle' bgColor='#6060ff' vAlign='center' width='8%'><FONT color='#ffffff' size='+3' style='FONT-FAMILY: Times' title='Предупреждение'><B> i </B></FONT></TD></TD><TD vAlign='middle'>"+txt+"</TD></TABLE></div><br>"
return txt}if(document.URL.indexOf("viewtopic.php")!=-1){
elm=document.getElementById("pun-main").getElementsByTagName("div")
for(x in elm) if(elm[x].className=="post-content"){
var post=elm[x]
post.innerHTML=addMod(post.innerHTML,0,false)}}
</script>
Тег нарушения
[e[color=red]x][/ex]
<script>
function addEx(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("[ex]",from))==-1) return str;
if((pos2=str.indexOf("[/ex]"),pos+4)==-1) return str;
newpos=str.indexOf("[ex]",pos+4)
if(newpos<pos2 && newpos!=-1) str=addEx(str,pos+4,true)
if((pos2=str.indexOf("[/ex]",pos+4))==-1) return str;
str=str.substring(0,pos)+makeEx(str.substring(pos+4,pos2))+str.substring(pos2+5,str.length)
if( str.indexOf("[ex]")!=-1 && internal==false) str=addEx(str,0,false)
return str}function makeEx(txt){
txt="<br><div style=\"margin: 0px; padding: 0px; background-color:#FEF2F2; border-left: 1px solid #FF6060; border-top: 1px dotted #000; border-right: 1px dotted #000; border-bottom: 1px dotted #000;\"><TABLE cellpadding='0' cellspacing='0'><TD align='middle' bgColor='#ff6060' vAlign='center' width='8%'><FONT color='#ffffff' size='+3' style='FONT-FAMILY: Times' title='Грубое нарушение'><B> ! </B></FONT></TD></TD><TD vAlign='middle'>"+txt+"</TD></TABLE></div><br>"
return txt}if(document.URL.indexOf("viewtopic.php")!=-1){
elm=document.getElementById("pun-main").getElementsByTagName("div")
for(x in elm) if(elm[x].className=="post-content"){
var post=elm[x]
post.innerHTML=addEx(post.innerHTML,0,false)}}
</script>
Вариант 2
Тег предупреждения:
<script>
function addMod(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("[mod]",from))==-1) return str;
if((pos2=str.indexOf("[/mod]"),pos+5)==-1) return str;
newpos=str.indexOf("[mod]",pos+5)
if(newpos<pos2 && newpos!=-1) str=addMod(str,pos+5,true)
if((pos2=str.indexOf("[/mod]",pos+5))==-1) return str;
str=str.substring(0,pos)+makeMod(str.substring(pos+5,pos2))+str.substring(pos2+6,str.length)
if( str.indexOf("[mod]")!=-1 && internal==false) str=addMod(str,0,false)
return str}function makeMod(txt){
txt="<br><div style='width:100%;'><div style='border: 1px solid #0084FF;border-left: 4px solid #0084FF;color: #000;border-bottom: 0;font-size: 10px;line-height: 40px;padding-left:10px;vertical-align: middle;'>Сообщение от модератора</div><div style='background: #FAFCFE;border: 1px solid #0084FF;border-left: 4px solid #0084FF;border-top: 0;color: #0084FF;font-weight: bold;padding: 4px;'>"+txt+"</div></div><br>"
return txt}if(document.URL.indexOf("viewtopic.php")!=-1){
elm=document.getElementById("pun-main").getElementsByTagName("div")
for(x in elm) if(elm[x].className=="post-content"){
var post=elm[x]
post.innerHTML=addMod(post.innerHTML,0,false)}}
</script>
Тег нарушения
<script>
function addEx(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("[ex]",from))==-1) return str;
if((pos2=str.indexOf("[/ex]"),pos+4)==-1) return str;
newpos=str.indexOf("[ex]",pos+4)
if(newpos<pos2 && newpos!=-1) str=addEx(str,pos+4,true)
if((pos2=str.indexOf("[/ex]",pos+4))==-1) return str;
str=str.substring(0,pos)+makeEx(str.substring(pos+4,pos2))+str.substring(pos2+5,str.length)
if( str.indexOf("[ex]")!=-1 && internal==false) str=addEx(str,0,false)
return str}function makeEx(txt){
txt="<br><br><div style='width:100%;'><div style='border: 1px solid red;border-left: 4px solid red;color: #000;border-bottom: 0;font-size: 10px;line-height: 40px;padding-left:10px;vertical-align: middle;'>Строгое предупреждение от модератора</div><div style='background: #FAFCFE;border: 1px solid red;border-left: 4px solid red;border-top: 0;color: red;font-weight: bold;padding: 4px;'>"+txt+"</div></div><br><br>"
return txt}if(document.URL.indexOf("viewtopic.php")!=-1){
elm=document.getElementById("pun-main").getElementsByTagName("div")
for(x in elm) if(elm[x].className=="post-content"){
var post=elm[x]
post.innerHTML=addEx(post.innerHTML,0,false)}}
</script>
КНОПКИ в форму ответа:
(Доступны только Администраторам и модераторам)
Для предупреждения
<style>
#button-mod {background-image:url('http://i029.radikal.ru/0804/26/e430252a0faf.png'); padding:0; line-height:0; background-position:center; background-repeat:no-repeat; height:26px; width:100%}
</style>
<script type="text/javascript">
if((document.getElementById("navadmin")) && (form=document.getElementById("form-buttons")))
form.getElementsByTagName("tr")[0].insertCell(18).innerHTML="<img src='/i/blank.gif' title='Предупреждение' id='button-mod' onclick=\"bbcode('[mod]', '[/mod]');\"/>"
</script>
Для нарушения
<style>
#button-ex {background-image:url('http://i007.radikal.ru/0804/c8/e7c48348a35e.png'); padding:0; line-height:0; background-position:center; background-repeat:no-repeat; height:26px; width:100%}
</style>
<script type="text/javascript">
if((document.getElementById("navadmin")) && (form=document.getElementById("form-buttons")))
form.getElementsByTagName("tr")[0].insertCell(18).innerHTML="<img src='/i/blank.gif' title='Предупреждение' id='button-ex' onclick=\"bbcode('[ex]', '[/ex]');\"/>"
</script>
Вместо кнопок можно поставить свои, достаточно просто заменить адрес картинки на свой.
Так же можно заменить надписи на свои.
Цвет тоже можно поменять.
Теги: модераторские теги, скрипты
Отредактировано Duka (2008-04-20 13:09:18)