Присвоить отдельное звание на форуме

#1 23 декабря 2010 в 01:19
Объясните, пожалуйста — мне надо, чтобы на форуме у некоторых пользователей высвечивалось определённое звание и присваивать я могла бы его выборочно каким-либо участникам. Так-же, как сейчас высвечивается "администратор", "модератор", мне нужны такие-же звания для группы людей и чтобы они не зависели от кол-ва сообщений на форуме.
#2 23 декабря 2010 в 13:57
это же есть..
Компоненты — Форум — Звания на форуме (иконка звездочки)

Там и пишете за сколько сообщений присваивать звания)
#3 23 декабря 2010 в 17:21
Умные Интернет Разработки, мне нужно выборочное присвоение, не зависящее от кол-ва сообщений на форуме, как и пишет Mister_i
#4 23 декабря 2010 в 17:24
Например, у нас на сайте есть опытные консультанты, надо чтобы на форуме они выделялись статусом/званием, чтобы было видно, что это консультант, не зависимо от кол-ва его сообщений.
#5 23 декабря 2010 в 17:58
Аналогично, требуется визуальное выделение группы пользователей, без предоставления им особых прав.
#6 24 декабря 2010 в 11:30
Никто не знает, как это сделать?
#7 30 января 2011 в 00:22
Поднимаю тему, до сих пор актуально. Знает кто-нибудь решение?
#8 30 января 2011 в 00:31
Rublyovka, не пойму вчем трудность… так сделай группу консультант и всё… и будет на форуме счастье
#9 30 января 2011 в 01:40
На форуме они всё равно не отображаются, как консультанты, нет статуса "консультант" под ником, статус, как у всех, типа "новичок", "местный" — те, которыя я настраивала от кол-ва сообщений, статуса группы не появляется. Если бы было так, то все пользователи, зарегистрировавшись и перейдя в группу "пользователи", на форуме под ником имели бы статус "пользователи", но ведь так не происходит.
#10 18 апреля 2011 в 20:58
Хммм забавно, но тоже вдруг стало актуально, может кто подскажет в какую сторону копать то хоть?
#11 23 июня 2011 в 14:46
Чтобы вывести название группы над аватаром (своеобразное звание) залез в файл
/components/forum/includes/forumcore.php
в функции forumUserRank

был запрос такой:
  1. $rights = dbGetFields('cms_user_groups g, cms_users u', "u.group_id = g.id AND u.id = $uid", 'g.id, g.access as access');
стал такой:
  1. $rights = dbGetFields('cms_user_groups g, cms_users u', "u.group_id = g.id AND u.id = $uid", 'g.id, g.title, g.access as access');
И ниже добавил вывод названия группы с ID более 10:
  1. if ($rights['id'] > 10) {
  2. $userrank = '<span id="moder">'.$rights['title'].'</span>'; }
В итоге получилось так:
  1. function forumUserRank($uid, $messages, $ranks, $modrank=true){
  2. $inDB = cmsDatabase::getInstance();
  3. $inCore = cmsCore::getInstance();
  4. $inUser = cmsUser::getInstance();
  5. global $_LANG;
  6. $userrank = '';
  7. if ($inUser->id) {
  8. //check is admin
  9. if ($inCore->userIsAdmin($uid)){
  10. $userrank = '<span id="admin">'.$_LANG['ADMINISTRATOR'].'</span>';
  11. } else {
  12. //rank by messages
  13. if(is_array($ranks)){
  14. foreach($ranks as $k=>$rank){
  15. if ($messages >= $rank['msg'] && $rank['msg'] != ''){
  16. $userrank = '<span id="rank">'.$rank['title'].'</span>';
  17. }
  18. }
  19. } else {
  20. $userrank = '<span id="rank">'.$_LANG['USER'].'</span>';
  21. }
  22. //check is moderator
  23. $rights = dbGetFields('cms_user_groups g, cms_users u', "u.group_id = g.id AND u.id = $uid", 'g.id, g.title, g.access as access');
  24. if (strstr($rights['access'], 'forum/moderate')){
  25. if ($modrank){
  26. $userrank .= '<span id="moder">'.$_LANG['MODER'].'</span>';
  27. } else {
  28. $userrank = '<span id="moder">'.$_LANG['MODER'].'</span>';
  29. }
  30. }
  31. if ($rights['id'] > 10) {
  32. $userrank = '<span id="moder">'.$rights['title'].'</span>'; }
  33. }
  34. }
  35. return $userrank;
Посмотреть, как это выглядит можно здесь
www.hyundai-solaris.com/forum/thread197-18.html
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.