Предлагаю Вашему вниманию рейтинговую систему - "Уровень":
Итак, выглядит всё это вот так:
1 - это текущий уровень
2 - графическое отображение, сколько ещё вам до следуещщего уровня нужно сообщений...
3 - текстовое отображение п.2, где 1226 - это количество сообщений на данный момент, 1360 - количество сообщений, которое нужно набрать, что-бы перейти на следующий уровень.
Так же уровень можно заработать и другим способом, а именно: если вам кто-то скажет спасибо или повысит репутацию (1спасибо=1уровень, 1репутация=1уровень), но уровень можно и потерять - если у вас понизят репутацию - уровень тоже понизится....
А так же ещё уровень зависит и от даты регистрации, за каждые 100 дней + 1 уровень...
Теперь установка:
Все, кто использует стиль bo2soft - повезло, вам только нужно будет следовать инструкции , а вот остальным прийдётся переделывать графику под свой стиль
1. Графика
скачайте себе архив, распакуйте и залейте себе на форум.
2. Заходим в шаблоны - viewtopic_body.html
находим:
- Код: Выделить всё
<!-- IF postrow.POSTER_AVATAR -->
<tr>
<td align="center"><div class="kenarlik">{postrow.POSTER_AVATAR}</div></td>
</tr>
<!-- ENDIF -->
(ищите этот кусок у себя по слову <!-- IF postrow.POSTER_AVATAR --> , т.к. он у меня изменён и вы его в стандартном шаблоне ненайдёте)
И после
- Код: Выделить всё
<!-- ENDIF -->
Вставляем:
- Код: Выделить всё
<SCRIPT language=JavaScript>
var i1={postrow.POSTER_POSTS};
t=new Array();
g=0;
g1=10;
t[0]=0;
for (n=1;n<100;n++){
t[n]=g+g1;
g=t[n];
g1=g1+10;
if (i1<t[n] & i1>t[n-1]) {k1=t[n];y=n-1;}
if (i1==t[n]) {k1=t[n];y=n-1;}
}
if (i1<10) {k1=10;y=0;}
if (i1==10) {k1=10;y=0;}
w='1 раз';
w1 = w.substring(0, 2);
w11=w1*1
rep=2;
k2=i1-t[y];
k3=k1-t[y];
pr=k2*150/k3;
dd = '24 фев 2008, 22:32';
mes=dd.substring(3, 6)
if (mes=='янв'){mes='Jan'};
if (mes=='фев'){mes='Feb'};
if (mes=='мар'){mes='Mar'};
if (mes=='апр'){mes='Apr'};
if (mes=='мая'){mes='May'};
if (mes=='июн'){mes='Jun'};
if (mes=='июл'){mes='Jul'};
if (mes=='авг'){mes='Aug'};
if (mes=='сен'){mes='Sep'};
if (mes=='окт'){mes='Oct'};
if (mes=='ноя'){mes='Nov'};
if (mes=='феф'){mes='Dec'};
dd0=mes+' '+dd.substring(0, 2)+', '+dd.substring(7, 11);
d0 = new Date(dd0);
d1 = new Date();
dt = (d1.getTime() - d0.getTime()) / (1000*60*60*24);
jh=Math.floor(Math.round(dt)/100);
o=y+rep+Math.floor(w11/50)+jh;
document.write('<tr><td><div align="center"><b>Уровень '+o+'</b></div></td></tr><tr ><td><table border="0" cellspacing="0" cellpadding="0"><tr><td align="right"><img src="http://вашсайт/lm.jpg" ></td><td background="http://вашсайт/cm.jpg" width="'+pr+'"> </td><td><img src="вашсайт/pm.jpg" ></td></tr></table></td></tr><tr ><td><div align="center"><b>'+i1+'/'+k1+'</b></div></td></tr>');
-->
</SCRIPT>
Слово Ваш_сайт естественно заменить на свой (для справки: слово Ваш_сайт в коде встречается 3 раза)
теперь о коде:
Добавление уровня по сообщениям добавляется следующим принципом:
<10 - 0 уровень (+10)
>10 - 1 уровень (+20)
>30 - 2 уровень (+30)
>60 - 3 уровень
т.е. с каждым уровнем сложнее получить следующий уровень на 10 сообщений, чем в предыдущем. Это значение можно изменить в коде найдя эту строку:
- Код: Выделить всё
g1=10;
она находится в самом начале....
Количество всех уровней 99, но это число можно изменить, редактируя этот кусок:
- Код: Выделить всё
for (n=1;n<100;n++){
Просто замените 100 на, допустим, 150, тогда всего уровней у вас будет 149...
(если у вас допустим стоит максимально 100 уровней, а вы увидели человека у которого 150 - не пугайтесь, значит ему говорили спасибо или повышали репутацию, ограничение уровней стоит только на сообщения, кстати не тестировал, что произайдёт если превысить максимальное значение )
От даты регистрации ведётся отсчёт дней, и за каждые 100 дней + 1уровень
Интервал дней можно изменить, редактируя этот кусок:
- Код: Выделить всё
jh=Math.floor(Math.round(dt)/100);
Замените 100, допустим на 200, тогда уровень будет добавлятся через каждые 200 дней....
Вот вроде и всё, юзайте на здоровье...
Сайт автора модификации