Переходим непосредственно к установке. Предупреждаю за ранее, скрипт полностью рабочий! Если у Вас он работает не правильно, то это значит, что Вы его не правильно установили!
1. Установка стилей
Каждая полоса рейтинга имеет свой вид (свою цветовую гамму). Поэтому переходим по следующему пути:
Code
Админ панель » Управление дизайном » Таблица стилей (CSS)
И вставляем туда следующий код:
Code
.rateline {padding-top:10px;border-top:1px solid #DAE2E8;}
.rateline:hover {cursor:pointer}
#rep_1 {width:0px;height:17px;border-top: 1px solid #C0CCD9;background:#DAE2E8;}
#rep_2 {width:200px;height:17px;border-top: 1px solid #E6E6E6;background:#F7F7F7;}
#rep_3 {width:0px;height:17px;border-top: 1px solid #CCC490;background:#E0D7A3;}
#rep_4 {width:200px;height:17px;border-top: 1px solid #E2DAA6;background:#F5EBBB;}
#rep_5 {width:0px;height:17px;border-top: 1px solid #B7AE77;background:#C7BD81;}
#rep_6 {width:200px;height:17px;border-top: 1px solid #CCC490;background:#E0D7A3;}
#rep_7 {width:0px;height:17px;border-top: 1px solid #998F55;background:#B4A968;}
#rep_8 {width:200px;height:17px;border-top: 1px solid #B7AE77;background:#C7BD81;}
#rep_9 {width:0px;height:17px;border-top: 1px solid #83793C;background:#A29755;}
#rep_10 {width:200px;height:17px;border-top: 1px solid #998F55;background:#B4A968;}
#rep_11 {width:0px;height:17px;border-top: 1px solid #655A19;background:#81773C;}
#rep_12 {width:200px;height:17px;border-top: 1px solid #83793C;background:#A29755;}
2. Полоса рейтинга
Теперь выбираем место, где будет находиться эта самая полоса рейтинга. Переходим на Персональную страницу пользователя.
Code
Админ панель » Управление дизайном » Персональная страница пользователя
Далее мы будем работать с этой страницей, так что с нее никуда не переходим.
И так, находим место, где у нас с Вами будет отображаться рейтинг пользователя, например под аватаркой и вставляем туда следующий код:
Code
<div class="rateline" onclick="<?if($_REPUTATION$)<19900?>new _uWnd('Rd',' ',400,250,{autosize:1,maxh:300,minh:100,closeonesc:1},{url:'/index/23-$_USER_ID$'});return false;<?endif?>">
<span id="ratenum">
<div style="position:absolute;padding-top:2px;width:200px;text-align:center;" id="rep_number"></div>
</span>
</div>
<div>
<table border="0" cellpadding="0" cellspacing="0" width="200px" height="18px">
<tr id="r0100" style="display:none;">
<td valign="top">
<div id="rep_1"></div>
</td>
<td valign="top">
<div id="rep_2"></div>
</td>
</tr>
<tr id="r100200" style="display:none;">
<td valign="top">
<div id="rep_3"></div>
</td>
<td valign="top">
<div id="rep_4"></div>
</td>
</tr>
<tr id="r200300" style="display:none;">
<td valign="top">
<div id="rep_5"></div>
</td>
<td valign="top">
<div id="rep_6"></div>
</td>
</tr>
<tr id="r300400" style="display:none;">
<td valign="top">
<div id="rep_7"></div>
</td>
<td valign="top">
<div id="rep_8"></div>
</td>
</tr>
<tr id="r400500" style="display:none;">
<td valign="top">
<div id="rep_9"></div>
</td>
<td valign="top">
<div id="rep_10"></div>
</td>
</tr>
<tr id="r500" style="display:none;">
<td valign="top">
<div id="rep_11"></div>
</td>
<td valign="top">
<div id="rep_12"></div>
</td>
</tr>
</table>
</div>
3. Скрипт
Теперь переходим к основной части, это скрипт. И так, для начала вставьте тут же рядом скрипт:
Code
<script>
// Автор скрипта: Ваня Ефимов
function rep_load()
{
var email=<?if($_EMAIL_IS_VERIFIED$)?>20<?else?>0<?endif?>;
var avatar=<?if($_AVATAR$)?>25<?else?>0<?endif?>;
var about=<?if($_SIGNATURE$)?>10<?else?>0<?endif?>;
var icq=<?if($_ICQ$)?>10<?else?>0<?endif?>;
var www=<?if($_WWW$)?>15<?else?>0<?endif?>;
var city=<?if($_CITY$)?>10<?else?>0<?endif?>;
var bday=<?if($_BIRTHDAY$)?>5<?else?>0<?endif?>;
var gender=<?if($_GENDER_NAME$)?>5<?else?>0<?endif?>;
var information=avatar+icq+bday+gender+email+www+city+about;
var rate=<?if($_REPUTATION$)?>$_REPUTATION$<?else?>0<?endif?>;
var rep_1=information*2;
var rep_2=200-rep_1;
var rep_3=rate*2;
var rep_4=200-rep_3;
var rep_5=(rate-100)*2;
var rep_6=200-rep_5;
var rep_7=(rate-200)*2;
var rep_8=200-rep_7;
var rep_9=(rate-300)*2;
var rep_10=200-rep_9;
var rep_11=rate*0.01;
var rep_12=200-rep_11;
if (rate > 0 && rate <= 100 && information == 100)
{
$('#r100200').css('display','block');
$('#rep_3').css('width',''+rep_3+'px');
$('#rep_4').css('width',''+rep_4+'px');
$('#rep_number').css('color','#A39B66');
document.getElementById('rep_number').innerHTML=100+rate+'%';
}
else
{
if (rate > 100 && rate <= 200 && information == 100)
{
$('#r200300').css('display','block');
$('#rep_5').css('width',''+rep_5+'px');
$('#rep_6').css('width',''+rep_6+'px');
$('#rep_number').css('color','#8A8048');
document.getElementById('rep_number').innerHTML=100+rate+'%';
}
if (rate > 200 && rate <= 300 && information == 100)
{
$('#r300400').css('display','block');
$('#rep_7').css('width',''+rep_7+'px');
$('#rep_8').css('width',''+rep_8+'px');
$('#rep_number').css('color','#F8F7ED');
document.getElementById('rep_number').innerHTML=100+rate+'%';
}
if (rate > 300 && rate <= 400 && information == 100)
{
$('#r400500').css('display','block');
$('#rep_9').css('width',''+rep_9+'px');
$('#rep_10').css('width',''+rep_10+'px');
$('#rep_number').css('color','#F4F2E8');
document.getElementById('rep_number').innerHTML=100+rate+'%';
}
if (rate > 400 && information == 100)
{
$('#r500').css('display','block');
$('#rep_11').css('width',''+rep_11+'px');
$('#rep_12').css('width',''+rep_12+'px');
$('#rep_number').css('color','#F4F2E8');
document.getElementById('rep_number').innerHTML=100+rate+'%';
}
if (information < 100 || rate == 0)
{
$('#r0100').css('display','block');
$('#rep_1').css('width',''+rep_1+'px');
$('#rep_2').css('width',''+rep_2+'px');
$('#rep_number').css('color','#7790AE');
document.getElementById('rep_number').innerHTML=information+'%';
}
}
}
</script>
Теперь хочу обратить Ваше внимание на начало скрипта, а именно на код в выше упомянутом
Code
var email=<?if($_EMAIL_IS_VERIFIED$)?>20<?else?>0<?endif?>;
var avatar=<?if($_AVATAR$)?>25<?else?>0<?endif?>;
var about=<?if($_SIGNATURE$)?>10<?else?>0<?endif?>;
var icq=<?if($_ICQ$)?>10<?else?>0<?endif?>;
var www=<?if($_WWW$)?>15<?else?>0<?endif?>;
var city=<?if($_CITY$)?>10<?else?>0<?endif?>;
var bday=<?if($_BIRTHDAY$)?>5<?else?>0<?endif?>;
var gender=<?if($_GENDER_NAME$)?>5<?else?>0<?endif?>;
var information=avatar+icq+bday+gender+email+www+city+about;
Я надеюсь что вы догадались, что это поля, заполненность которых дает определенное количество процентов рейтинга. Если Вы хотите добавить/убрать некоторые поля, обратите ваше внимание на оператор information, он строго должен быть равен 100!
И последнее что необходимо сделать на персональной страницу изменить
на
Code
<body onload="rep_load();">
4. Ваши ошибки, из-за которых может не работать скрипт
а) Оператор information в скрипте не равен 100.
б) Вы вставили скрипт, и у вас должно быть например 126% рейтинга (т.е. Ваша репутация составляет 26), но показывается меньше 100% рейтинга (например 65%) и когда пользователи поднимают вам рейтинг, Вы видите все те же 65%. Убедитесь что Вы заполнили все анкетные данные указанные в скрипте!
Автор пользователь: Meet