Главная arrow Форум
Все Joomla-фрилансеры Рунета
JOOM-LANCE.RU Удаленная работа с CMS Joomla!

ВНИМАНИЕ! Личные сообщения, ICQ, Skype Автора - только для решения коммерческих вопросов! Все остальное - в форум!
ВНИМАНИЕ! Все мои расширения написаны для Joomla версии 1.0.ХХ (если не указано иного)!
Добро пожаловать, Гость
Нажмите "Вход/Регистрация" для входа
Объявления Администрации
Стили:
 
 
 
 
Чат-бокс
Сообщения чата
   Help! 
Добавляем статистику пользователей по репутации (1 чел.) (1) Гость
Вниз
  • [Страница 1 из 5]  12345
Сообщения темы: Добавляем статистику пользователей по репутации
#4184 
Добавляем статистику пользователей по репутации 09.02.2009 09:51 Репутация: 36  
Добавляем статистику пользователей по репутации

Ждать было нельзя, репутация пользователей росла, а на отсутствие статистики пользователи постоянно жаловались…
Вот пришлось создавать, кто в этом нуждается делаем следующее:
(не забудьте перед всеми изменениями сделать бекап базы и изменяемых файлов, чтобы в случае проблем можно было вернуться к прежнему состоянию)

1. в базе данных создаем таблицу jos_fb_karma (sql запрос на создание таблицы в приложении)
 
2. меняем файл fb_karma.php (лежит в приложенном архиве) в папке components/com_fireboard/sources/
3. в папку плагинов ложим из архива папку karma (в папке файлы karmauser.php, karmauserslist.php, karmauserchange.php)
4. в файле fireboard.php делаем объявление плагинов
после строк
Код:
case 'karma':
include (JB_ABSSOURCESPATH . 'fb_karma.php');
break;

Добавляем
Код:
case 'karmauser':
if (file_exists(JB_ABSTMPLTPATH . '/plugin/karma/karmauser.php')) {
include (JB_ABSTMPLTPATH . '/plugin/karma/karmauser.php');
} else {
include (JB_ABSPATH . '/template/default/plugin/karma/karmauser.php');
}
break;
case 'karmauserslist':
if (file_exists(JB_ABSTMPLTPATH . '/plugin/karma/karmauserslist.php')) {
include (JB_ABSTMPLTPATH . '/plugin/karma/karmauserslist.php');
} else {
include (JB_ABSPATH . '/template/default/plugin/karma/karmauserslist.php');
}
break;
case 'karmauserchange':
if (file_exists(JB_ABSTMPLTPATH . '/plugin/karma/karmauserchange.php')) {
include (JB_ABSTMPLTPATH . '/plugin/karma/karmauserchange.php');
} else {
include (JB_ABSPATH . '/template/default/plugin/karma/karmauserchange.php');
}
break;

5. делаем ссылки на статистику репутации
5.1. в сообщениях на строчку «Репутация» в файле view.php (лежит в шаблоне default)
ищем строку
Код:
$msg_karma = "<strong>" . _KARMA . ":</strong> $karmaPoints";

и меняем ее
Код:
if ($my->id != '0') {
$msg_karma = '<a href=' . sefRelToAbs(JB_LIVEURLREL . '&amp;func=karmauser&amp;userid=' . $userinfo->userid . '' ) . '>' . _KARMA . ': </a><strong>'. $karmaPoints .'</strong>';
} else {
$msg_karma = "<strong>" . _KARMA . ":</strong> $karmaPoints";
}

5.2. в профиле на строчку «Репутация» в файле fbprofile.php (лежит в папке плагинов ../plugin/fbprofile/)
ищем строку
Код:
$msg_karma = "<strong>" . _KARMA . ":</strong> $karmaPoints";

и меняем ее
Код:
$msg_karma = '<a href=' . sefRelToAbs(JB_LIVEURLREL . '&amp;func=karmauser&amp;userid=' . $userinfo->userid . '' ) . '>' . _KARMA . ': </a><strong>'. $karmaPoints .'</strong>';

5.3. в статистике добавляем после ссылки на список пользователей ссылку на список по репутации, файл frontstats.php (лежит в папке плагинов ../plugin/stats/)
замените код
Код:
<td class = "td-1 fbm" align="left">
<?php echo _STAT_TOTAL_USERS; ?>:<b><a href = "<?php echo $userlist;?>"><?php echo $totalmembers; ?></a> </b>
&nbsp; <?php echo _STAT_LATEST_MEMBERS; ?>:<b> <a href = "<?php echo sefRelToAbs(FB_PROFILE_LINK_SUFFIX.''.$lastestmemberid)?>" title = "<?php echo _STAT_PROFILE_INFO; ?> <?php echo $lastestmember;?>"><?php echo $lastestmember; ?></a> </b>

<br/> <?php echo _STAT_TOTAL_MESSAGES; ?>: <b> <?php echo $totalmsgs; ?></b> &nbsp;
<?php echo _STAT_TOTAL_SUBJECTS; ?>: <b> <?php echo $totaltitles; ?></b> &nbsp; <?php echo _STAT_TOTAL_SECTIONS; ?>: <b> <?php echo $totalcats; ?></b> &nbsp; <?php echo _STAT_TOTAL_CATEGORIES; ?>: <b> <?php echo $totalsections; ?></b>
<br/> <?php echo _STAT_TODAY_OPEN_THREAD; ?>: <b> <?php echo $todaystitle; ?></b> &nbsp; <?php echo
_STAT_YESTERDAY_OPEN_THREAD; ?>: <b> <?php echo $yesterdaystitle; ?></b> &nbsp; <?php echo _STAT_TODAY_TOTAL_ANSWER; ?>: <b> <?php echo $todaytotal; ?></b> &nbsp; <?php echo _STAT_YESTERDAY_TOTAL_ANSWER; ?>: <b> <?php echo $yesterdaytotal; ?></b>
<br/>
&raquo; <a href = "<?php echo sefRelToAbs(JB_LIVEURLREL .'&amp;func=latest');?>"><?php echo _STAT_VIEW_RECENT_POSTS_ON_FORUM; ?></a> &raquo; <a href = "<?php echo $statslink;?>"><?php echo _STAT_MORE_ABOUT_STATS; ?></a> &raquo; <a href="<?php echo $userlist;?>"><?php echo _STAT_USERLIST; ?></a>
</td>

на код, при этом подробная статистика, список пользователей и репутация будут доступны еще и только зарегестиррованным пользователям
Код:

<td class = "td-1 fbm">
<?php echo _STAT_TOTAL_USERS; ?>: <a href = "<?php echo $userlist;?>" style="font-weight:bold;"><?php echo $totalmembers; ?></a>
&nbsp;<?php echo _STAT_LATEST_MEMBERS; ?>: <a href = "<?php echo sefRelToAbs(FB_PROFILE_LINK_SUFFIX.''.$lastestmemberid)?>" title = "<?php echo _STAT_PROFILE_INFO; ?> <?php echo $lastestmember;?>" style="font-weight:bold;"><?php echo $lastestmember; ?></a>
<br/><?php echo _STAT_TOTAL_MESSAGES; ?>: <b><?php echo $totalmsgs; ?></b>&nbsp;
<?php echo _STAT_TOTAL_SUBJECTS; ?>: <b><?php echo $totaltitles; ?></b> &nbsp;
<?php echo _STAT_TOTAL_SECTIONS; ?>: <b><?php echo $totalcats; ?></b> &nbsp;
<?php echo _STAT_TOTAL_CATEGORIES; ?>: <b><?php echo $totalsections; ?></b>
<br/><?php echo _STAT_TODAY_OPEN_THREAD; ?>: <b><?php echo $todaystitle; ?></b> &nbsp;
<?php echo _STAT_YESTERDAY_OPEN_THREAD; ?>: <b><?php echo $yesterdaystitle; ?></b> &nbsp;
<?php echo _STAT_TODAY_TOTAL_ANSWER; ?>: <b><?php echo $todaytotal; ?></b> &nbsp;
<?php echo _STAT_YESTERDAY_TOTAL_ANSWER; ?>: <b><?php echo $yesterdaytotal; ?></b>
</td>
</tr>
<tr class = "<?php echo $boardclass ;?>sectiontableentry1">
<td class = "td-1 fbm">
<?php
echo '&raquo; <a href = ' . sefRelToAbs(JB_LIVEURLREL . '&amp;func=latest') . ' style="font-weight:bold;">' . _STAT_VIEW_RECENT_POSTS_ON_FORUM . '</a>';
if ($my->id != '0') {
echo ' &raquo; <a href =' . $statslink . ' style="font-weight:bold;">' . _STAT_MORE_ABOUT_STATS . '</a>';
echo ' &raquo; <a href=' . $userlist . ' style="font-weight:bold;">' . _STAT_USERLIST . '</a>';
echo ' &raquo; <a href=' . sefReltoAbs(JB_LIVEURLREL . '&amp;func=karmauserslist') . ' style="font-weight:bold;">' . _KARMA . '</a>';
} else {
echo ' &raquo; ' . _STAT_MORE_ABOUT_STATS;
echo ' &raquo; ' . _STAT_USERLIST;
echo ' &raquo; ' . _KARMA;
}
?>
</td>

5.4. в списке пользователей на значение репутации ссылку на подробную репутацию пользователя, файл userlist.php (лежит в папке плагинов ../plugin/userlist/)
ищем строки
Код:
if ($fbConfig['userlist_karma'])
{
?>
<td class = "td-7 fbs" align="center">
<?php echo $ulrow->karma; ?>
</td>
<?php
}

и меняем их
Код:
if ($fbConfig['userlist_karma']) {
?>
<td class = "td-7 fbs" style="text-align:center;">
<?php echo '<a href='. sefRelToAbs(JB_LIVEURLREL . '&amp;func=karmauser&amp;userid=' . $ulrow->id . '' ) . '><strong>' . $ulrow->karma . '</strong></a>'; ?>
</td>
<?php
}

6. в файле russian.php изменить значение _KARMA_WAIT, в форуме реализовано изменение репутации только через 6 часов, теперь это будет относиться к одному и тому же пользователю, другому можно; и чтоб фраза звучала правильно меняем:
Код:
DEFINE('_KARMA_WAIT','Вы можете изменять карму только для одного человека каждые 6 часов. <br/>Пожалуйста, убедитесь, что положенное время прошло, когда в следующий раз Вы будете изменять карму пользователя.');

на
Код:
DEFINE('_KARMA_WAIT','Вы можете изменять карму для одного участника только каждые 6 часов. <br/>Пожалуйста, убедитесь, что положенное время прошло, когда в следующий раз Вы будете изменять карму пользователя.');


скачать архив с файлами

Пробуем… еще раз напоминаю чтоб перед всеми изменениями сделайте бекап
melalexs
Команда
Данные
Зарегистрирован Зарегистрирован  
 
Последнее редактирование: 11.02.2009 06:40 Редактировал melalexs.
 
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться  
#4192 
RE: Добавляем статистику пользователей по репутации 09.02.2009 12:42 Репутация: 14  
За старание +1 тебе конечно же.

Но нельзя ли это реализовать более простыми методами без всяких бэкапов баз,а просто исправлением в коде.

Я тут просто уже столько баз на бэкапил,что больше сил уже нет...
galstuk
Команда
Данные
Зарегистрирован Зарегистрирован  
 
Добро пожаловать на www.Mir-Druzey.Ru !

 
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться  
#4195 
RE: Добавляем статистику пользователей по репутаци 09.02.2009 19:22 Репутация: 25  
galstuk писал(а):
Но нельзя ли это реализовать более простыми методами без всяких бэкапов баз,а просто исправлением в коде. 99% процентов изменений сделано именно в коде. Да и лишний бекап сделать никогда не повредит...
gardey
Модераторы
Данные
Зарегистрирован Зарегистрирован  
 
Закон зрения Паскаля.
Существует достаточно света для тех, кто хочет видеть, и достаточно мрака для тех, кто не хочет.
 
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться  
#5361 
RE: Добавляем статистику пользователей по репутации 22.05.2009 16:53 Репутация: 14  
А архив с файлами можно к посту прикрепить, а то на ифолдере паролик спрашивает...


И еще,ну если это тоже возможно,можно открыть секрет как сделать так,чтоб было видно кто повышал репутацию,а кто понижал? Или это всё уже здесь заложено? Просто пока еще не начал делать,поэтому вот выясняю мелкие подробноси...


P.S. Раньше не было времени этим заниматься,теперь вот руки дошли...
galstuk
Команда
Данные
Зарегистрирован Зарегистрирован  
 
Добро пожаловать на www.Mir-Druzey.Ru !

 
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться  
#5365 
RE: Добавляем статистику пользователей по репутации 22.05.2009 21:52 Репутация: 36  
да... спроса на это не было и он ушел в архив... кому интересно в лс

galstuk писал(а):
...
И еще,ну если это тоже возможно,можно открыть секрет как сделать так,чтоб было видно кто повышал репутацию,а кто понижал? Или это всё уже здесь заложено? ...

да все это есть, к тому же будет видна и причина (вводится пользователем изменяющем репутацию) и где, из какого поста или профиля пользователя это сделано
melalexs
Команда
Данные
Зарегистрирован Зарегистрирован  
 
Последнее редактирование: 22.05.2009 22:11 Редактировал melalexs.
 
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться  
#5369 
RE: Добавляем статистику пользователей по репутации 23.05.2009 08:47 Репутация: 14  
Все отлично работает! Выражаю агромадную признательность за помощь господину melalexs`у ! Просто довольно часто на сайте бывает такое,что пользователь в каком-нибудь своем ответном посте пишет:"О_о! Это круто! Плюс тебе!". А в реальности никакого плюса не ставит! Вот и можно будет проследить у кого слова с делом расходятся...
galstuk
Команда
Данные
Зарегистрирован Зарегистрирован  
 
Добро пожаловать на www.Mir-Druzey.Ru !

 
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться  
Вверх
  • [Страница 1 из 5]  12345
Фотоальбом
Закрыть просмотр

Форум FireBoard RE. Автор: Adeptus. v.2.1