Отображение группы у имени

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО InstantCMS 1.X

Добавление название группы пользователя к его имени

#1 8 февраля 2017 в 18:57
Доброго времени!

Нужно небольшое дополнение, что бы возле имени пользователя отображалась группа в которой он состоит, например:

Вася Иванов [новичок]

Хорошо, если будет возможность добавить цвет для группы, но не обязательно.
#2 8 февраля 2017 в 20:02
В первой ветке и так выводится группа пользователя на его странице.
Или в списках?
Или в профиле но звание на форуме?
smile
#3 9 февраля 2017 в 06:43
Необходимо, что бы это отображалось в комментариях, статьях и записях блога, то есть везде, где пишет пользователь.
#4 9 февраля 2017 в 19:54
Шляпник, простого ответа в пару строк тут быть не может.
Если вы ищете исполнителя за $, наверно стоит это более конкретно обозначить (бюджет, всё такое), возможно потенциальным исполнителям показалось, что вы просто ищете совета.

Если хотите сами ковырять, то нужно пройтись по model.php нужных компонентов и в запросах к БД добавить выборку title из таблицы cms_user_groups, потому уже добавлять переменную в шаблоны компонентов.

В качестве примера всё тот же профиль пользователя.

Вот здесь

  1. $sql = "SELECT
  2. u.*,
  3. u.status as status_text,
  4. u.rating as user_rating,
  5. p.id as pid, p.city, p.description, p.showmail, p.showbirth, p.showicq, p.showphone,
  6. p.karma, p.imageurl, p.allow_who,
  7. p.gender as gender, p.formsdata, p.signature,
  8. p.email_newmsg, p.cm_subscribe,
  9. g.title as grp,
  10. g.alias as group_alias,
  11. b.user_id as banned,
  12. IFNULL(ui.login, '') as inv_login,
  13. IFNULL(ui.nickname, '') as inv_nickname
  14. FROM cms_users u
  15. INNER JOIN cms_user_profiles p ON p.user_id = u.id
  16. INNER JOIN cms_user_groups g ON g.id = u.group_id
  17. LEFT JOIN cms_banlist b ON b.user_id = u.id AND b.status = 1
  18. LEFT JOIN cms_users ui ON ui.id = u.invited_by
  19. WHERE u.is_locked = 0 AND {$where}
  20. ORDER BY id DESC LIMIT 1";
  21.  

g.title as grp,
.....
INNER JOIN cms_user_groups g ON g.id = u.group_id
....
для этой цели.


А потом в шаблоне {$usr.grp} выводит название группы пользователя

Или можно добавить функцию в cms/classes/user.class.php

Там есть похожая функция

  1. /**
  2.   * Возвращает id группы пользователя
  3.   * @param int $user_id
  4.   * @return int
  5.   */
  6. public static function getGroupIdByUserId($user_id){
  7.  
  8. return cmsDatabase::getInstance()->get_field('cms_users', "id='{$user_id}'", 'group_id');
  9.  
  10. }
Можно создать для получения имени группы и потом уже её использовать
Как то так.
#5 10 февраля 2017 в 08:04
Нет нет, не совета, мне нужен человек, который сделает это качественно. Могли бы вы взяться?
Дополнительно к условию необходимо, что бы название группы была ссылкой на страницу (описание групп).

Спасибо за подсказку ))
#6 10 февраля 2017 в 12:24

Могли бы вы взяться?

Шляпник
Нет, много своей работы.
#7 10 февраля 2017 в 12:28
Интересно для двойки аналогично?
#8 12 февраля 2017 в 07:58

Нет, много своей работы.

Нил™
Жаль конечно.

Возможно кто то сможет взяться за это задание?

Интересно для двойки аналогично?

Гарри Татурон

Без понятия )
#9 12 февраля 2017 в 11:27
Сделал плагинчик, который тупо дописывает группу в никнейм по событиям 'LOAD_USER', 'GET_USER'
Фигня какая-то получилась. laugh

А вот в двойке более-менее прилично получается. smile

#10 13 февраля 2017 в 00:44
Давно пора такое сделать, чтобы все сразу видели кто есть кто, а не только в профиле smile

Хорошо, если будет возможность добавить цвет для группы

Шляпник
#11 14 февраля 2017 в 08:59

Сделал плагинчик, который тупо дописывает группу в никнейм по событиям 'LOAD_USER', 'GET_USER'

Ris
Интересно, а для 1.х в комментариях и записях видно?

Давно пора такое сделать, чтобы все сразу видели кто есть кто, а не только в профиле

Sonat
У меня литературный сайт, поэтому нужно определять сразу кто критик, а кто автор. Появилась такая необходимость с некоторых пор ))
#12 14 февраля 2017 в 13:01

У меня литературный сайт, поэтому нужно определять сразу кто критик, а кто автор.

Шляпник
Если группы выбираются предлагаю повесить цитату Кнышева на стрницу регистрации:

"Всякий образованный человек,
умеющий читать и писать,
в конце концов должен решить для себя:
так что же все-таки делать — читать или писать?
"
crazy
#13 17 февраля 2017 в 14:49
Я так понимаю, что либо задание слишком сложное либо слишком заняты люди.
#14 17 февраля 2017 в 14:53
Так Ris же сказал что все сделал через плагин!
#15 17 февраля 2017 в 15:05

Я так понимаю, что либо задание слишком сложное либо слишком заняты люди.

Шляпник
Задание может и несложное, но очень муторное. Это чуть не все файлы шаблона придется править, чтобы выводить группу пользователей.
Плагин, увы, срабатывает по 'LOAD_USER' или 'GET_USER', поэтому группы видны только в профилях, но не в контенте. sad
Еще есть суровый вариант (для суровых челябинских парней). Написать скриптик для phpmyadmin, который допишет к никам пользователей их группу прямо в таблицу cms_users. shock
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.