Система репутации на форуме

12
NamePros.ru
На сайте с 05.02.2007
Offline
67
2365

Подскажите, в стандартной вобле совсем другая система репутации. То что стоит на серче, это самописный модуль? его можно где нибудь найти?

dndialog.com - доменный форум (http://www.dndialog.com) | продам skype.tv (/ru/forum/208984) и iphones.su (/ru/forum/209175)
edogs software
На сайте с 15.12.2005
Offline
775
#1

А в чем другая? Та же самая имхо. Разницы не видим.

То что цифирками показывается - поищите тут по форуму, уже писалось не раз как изменить их "индикатор" на "цифры".

Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft
Angelo
На сайте с 01.01.2007
Offline
125
#2
NamePros.ru:
Подскажите, в стандартной вобле совсем другая система репутации. То что стоит на серче, это самописный модуль? его можно где нибудь найти?

Это стандартная система, для того чтобы показывались циферки вносятся только некоторые коррективы в шаблон.

Админка -> Стили и Шаблоны -> Управление стилями -> Редактировать шаблоны -> Шаблоны частиц сообщений -> postbit/postbit_legacy

Найти:

<if condition="$show['reputation']"><div><if condition="$show['reppower']"><span id="reppower_$post[postid]_$post[userid]">$vbphrase[reppower]</span>: $post[reppower]</if><span id="repdisplay_$post[postid]_$post[userid]">$post[reputationdisplay]</span></div></if>

Заменить на:

<if condition="$show['reputation']"><div><if condition="$show['reputation']">$vbphrase[reputation]: $post[reputation]</if></div></if>

NamePros.ru
На сайте с 05.02.2007
Offline
67
#3
edogs:
А в чем другая? Та же самая имхо. Разницы не видим.
То что цифирками показывается - поищите тут по форуму, уже писалось не раз как изменить их "индикатор" на "цифры".

нет, я не об этом. как изменить на цифры знаю. просто в стандарте каждый пользователь, может присвоить только определенное количество баллов. устанавливается в админке. здесь же количество передаваемых баллов, зависит от количества баллов в репутации у самого передающего. То есть в стандартной вобле, хоть у вас репа 100 хоть 1000, передаете например при плюсе только один балл. здесь же 1 и 10 соответственно.

edogs software
На сайте с 15.12.2005
Offline
775
#4
NamePros.ru:
нет, я не об этом. как изменить на цифры знаю. просто в стандарте каждый пользователь, может присвоить только определенное количество баллов. устанавливается в админке. здесь же количество передаваемых баллов, зависит от количества баллов в репутации у самого передающего. То есть в стандартной вобле, хоть у вас репа 100 хоть 1000, передаете например при плюсе только один балл. здесь же 1 и 10 соответственно.

Вы что-то не так делаете или с чем-то путаете...

Вот смотрите код

includes/functions_reputation.php


if ($vbulletin->options['kppower'])
{
$reppower += intval($userinfo['reputation'] / $vbulletin->options['kppower']);
}

Отсюда видно, что репутация которую прибавляют таки зависит от репутации текущего юзера. И делится она на параметр из админки с кодовым именем kppower.

А это (в русскоязычной вобле) параметр задающийся в "Основные настройки"=>"Репутация пользователей"=>"Фактор пунктов репутации".

При чем исходя из


if ($reputation != 'pos')
{
// make negative reputation worth half of positive, but at least 1
$reppower = intval($reppower / 2);

Отрицательной репутации даётся ровно в 2 раза меньше чем положительной.

Передаваемая репутация ещё зависит от стажа пребывания на форуме и количества постов.

Админу можно (в админке) задать кол-во очков на сколько он будет давать больше чем обычные пользователи - параметр "Влияние администратора на репутацию".

Если у Вас не так, то это баг форума.

se_home
На сайте с 17.01.2007
Offline
84
#5
NamePros.ru:
нет, я не об этом. как изменить на цифры знаю. просто в стандарте каждый пользователь, может присвоить только определенное количество баллов. устанавливается в админке. здесь же количество передаваемых баллов, зависит от количества баллов в репутации у самого передающего. То есть в стандартной вобле, хоть у вас репа 100 хоть 1000, передаете например при плюсе только один балл. здесь же 1 и 10 соответственно.

Стандартно репутация зависит от количества сообщений, собственной репутации, количества полученных оценок репутации и времени на форуме. В админке можно все настроить под себя, отменить действия каких-либо пунктов из вышеперечисленных.

В админке можно установить не репутацию передаваемую пользователем, а только репутацию передаваемую администратором.

P.S. И по моим наблюдениям при стандартных настройках передаваемый вес репутации больше зависит от количества сообщений, чем от собственной репутации.

NamePros.ru
На сайте с 05.02.2007
Offline
67
#6

edogs, se_home, благодарю, буду разбираться

[Удален]
#7

edogs, se_home, полезная информация, спасибо.

А как сделать, что бы как на этом форуме в юзербаре

Добро пожаловать, DeForm...

отображались новые отзывы?

NamePros.ru
На сайте с 05.02.2007
Offline
67
#8
DeForm:

Добро пожаловать, DeForm...
отображались новые отзывы?

это хак такой. могу скинуть на мыло

[Удален]
#9

Мини-хак репутации: Замена картинок цифрами

Заходим в панель администратора. Заходим в "Стили & Шаблоны / Менеджер стилей"

Ищем в postbit_reputation

<img class="inlineimg" src="$stylevar[imgdir_reputation]/reputation_$posneg.gif" alt="$post[username] $post[level]" border="0" />
и меняем на
Репутация: <b>$posneg</b>
Ищем в reputation_reasonbits
<img src="$stylevar[imgdir_reputation]/reputation_$posneg.gif" alt="" />
и меняем на
$posneg
Ищем в usercp_reputationbits
<td class="alt2"><img src="$stylevar[imgdir_reputation]/reputation_$posneg.gif" border="0" alt="" /></td>
и меняем на
<td class="alt2" nowrap="nowrap">$posneg</td>
Теперь что касается файлов:

Открываем usercp.php и ищем

                if ($reputation['reputation'] > 0)

{
$posneg = 'pos';
}
else if ($reputation['reputation'] < 0)
{
$posneg = 'neg';
}
else
{
$posneg = 'balance';
}
Замените это следующим:
/*                if ($reputation['reputation'] > 0)

{
$posneg = 'pos';
}
else if ($reputation['reputation'] < 0)
{
$posneg = 'neg';
}
else
{
$posneg = 'balance';
}
*/
if (!$reputation['reputation'])
{
$posneg = 'выкл';
}
else
{
$posneg = $reputation['reputation'];
}
Сохраните и закройте.

Теперь откройте includes/functions_reputation.php и найдите

                $posneg = 'off';
Замените это следующим:
//                $posneg = 'off';

$posneg = 'выкл';
и
                        if ($i >= 5)

{
$posneg = $reputationhighgif;
}
else
{
$posneg = $reputationgif;
}
замените на
/*                        if ($i >= 5)

{
$posneg = $reputationhighgif;
}
else
{
$posneg = $reputationgif;
}
*/
$posneg = $post['reputation'];
Так же следует закомментировать в этом файле строки
                $reputationhighgif = 'highneg';
                $reputationhighgif = 'highpos';
        if ($reputation_value > 500)

{ // bright green bars take 200 pts not the normal 100
$reputation_value = ($reputation_value - ($reputation_value - 500)) + (($reputation_value - 500) / 2);
}

$reputationbars = intval($reputation_value / 100); // award 1 reputation bar for every 100 points
if ($reputationbars > 10)
{
$reputationbars = 10;
}
Сохраните файлы, залейте на сервер.

Теперь репутация будет отображатся цифрами везде, а не только под аватаркой, а так же в списке всех пользователей и при просмотре профиля пользователя...

Выглядит, что много, а на самом деле ставить 5-10 минут 🙄

[Удален]
#10
NamePros.ru:
это хак такой. могу скинуть на мыло

И мне тоже, если не трудно :)

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий