Пользователи

 
Посетитель
small user social cms
МедальКубок зрительских симпатийПочетный донор проекта
Сообщений: 713
Ну у меня очередной не человеческий прикол )) Уж и не надеюсь на решение, но всеже: можно ли как-то отключить определенную группу пользователей от показа их в разделе "пользователи"?
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2537
наверно да.
найти файл, который делает запрос в базу и создает массив пользователей, выкинуть из этого массива пользователей с определенным ид группы. В теории scratch на практике надо пробовать
Виджеты, поля и компоненты для instantcms 2 http://www.zau4man.ru/
Реклама
cms
Модератор
small user social cms
МедальМедаль за отзывчивостьКубок зрительских симпатий
Сообщений: 435
Уж и не надеюсь на решение.... можно ли ......

Можно. например если известен id группы пользователя (group_id)
(подсмотреть его можно в таблице cms_users)

тогда в файле шаблона com_users_view.tpl можно написать что-то вроде этого:

Код PHP:
  1. {if $usr.group_id!=1}
  2. ......
  3. ......
  4. ......//тут вывод пользователей
  5. ......
  6. ......
  7. {/if}
таким образом мы выводим всех юзеров кроме тех, у которых id группы равен 1

Для дефолтного шаблона вариант с заменой будет следующий:

Вместо

Код PHP:
  1. {foreach key=tid item=usr from=$users}
  2. <tr>
  3. <td width="20" align="left" style="padding:2px;">
  4. <div class="number">{$usr.num}.</div>
  5. </td>
  6. <td width="64" valign="top" align="center" style="padding:2px;">
  7. <div class="avatar">{$usr.avatar}</div>
  8. </td>
  9. <td valign="top">
  10. <div class="nickname">{$usr.nickname}</div>
  11. <div class="karma">{$usr.karma} <span class="rating">{$usr.rating}</span></div>
  12. {if $usr.microstatus}
  13. <div style="clear:both">&mdash; {$usr.microstatus}</div>
  14. {/if}
  15. <div class="status">{$usr.status}</div>
  16. </td>
  17. {/foreach}
  18.  
Будет

Код PHP:
  1.  
  2. {foreach key=tid item=usr from=$users}
  3. {if $usr.group_id!=1}
  4. <tr>
  5. <td width="20" align="left" style="padding:2px;">
  6. <div class="number">{$usr.num}.</div>
  7. </td>
  8. <td width="64" valign="top" align="center" style="padding:2px;">
  9. <div class="avatar">{$usr.avatar}</div>
  10. </td>
  11. <td valign="top">
  12. <div class="nickname">{$usr.nickname}</div>
  13. <div class="karma">{$usr.karma} <span class="rating">{$usr.rating}</span></div>
  14. {if $usr.microstatus}
  15. <div style="clear:both">&mdash; {$usr.microstatus}</div>
  16. {/if}
  17. <div class="status">{$usr.status}</div>
  18. </td>
  19. {/if}
  20. {/foreach}
Посетитель
small user social cms
МедальКубок зрительских симпатийПочетный донор проекта
Сообщений: 713
Ой спасибо хорошо! Щас попробую.

Урра! Заработало! Ато небожители в общей массе - не красиво. Зачмарят еще...
Редактировалось: 2 раз (Последний: 5 января 2011 в 06:54)
Посетитель
small user social cms
МедальКубок зрительских симпатийПочетный донор проекта
Сообщений: 713
Александр, хелп! В 1.7 это не срабатывает - показываются все юзеры. Что делать?
Редактировалось: 1 раз (Последний: 5 января 2011 в 06:54)
Посетитель
small user social cms
МедальКубок зрительских симпатийПочетный донор проекта
Сообщений: 713
Ну мож кто подскажет? Оч надо!
Модератор
small user social cms
МедальМедаль за отзывчивостьКубок зрительских симпатий
Сообщений: 435
Не проверял. но чисто так, навскидку попробуй в components\users\frontend.php
исправить SQL запросы

Код PHP:
  1. if ($do=='search'){
  2. ..........
  3. ........
  4. .......
Код PHP:
  1.  
  2. $querysql = "SELECT
  3. u.id as id,
  4. u.login,
  5. u.nickname,
  6. u.group_id,
  7. u.logdate as flogdate,
  8. u.is_deleted as is_deleted,
  9. u.birthdate, u.rating,
  10. u.status as microstatus,
  11. p.city, p.karma as karma, p.imageurl,
  12. p.gender as gender
  13. FROM cms_users u
  14. LEFT JOIN cms_user_profiles p ON p.user_id = u.id
  15. WHERE u.is_deleted = 0 AND u.is_locked = 0 AND u.group_id != 2 $s
  16. ORDER BY city DESC";
  17.  
Код PHP:
  1. if ($do=='view'){
  2. ..........
  3. ..........
  4. .............
  5.  

Код PHP:
  1. $sql = "SELECT
  2. u.id as id,
  3. u.login,
  4. u.nickname,
  5. u.group_id,
  6. u.logdate as flogdate,
  7. u.is_deleted as is_deleted,
  8. u.birthdate, u.rating,
  9. u.status as microstatus,
  10. p.city, p.karma as karma, p.imageurl,
  11. p.gender as gender
  12. FROM cms_users u
  13. LEFT JOIN cms_user_profiles p ON p.user_id = u.id
  14. WHERE u.is_locked = 0 AND u.is_deleted = 0 AND u.group_id != 2
  15. ORDER BY ".$orderby." ".$orderto."
  16. LIMIT ".(($page-1)*$perpage).", $perpage";
  17. } else {
  18.  
  19. $sql = "SELECT
  20. o.user_id as id,
  21. u.login,
  22. u.nickname,
  23. u.group_id,
  24. u.logdate as flogdate,
  25. u.is_deleted as is_deleted,
  26. u.birthdate, u.rating,
  27. u.status as microstatus,
  28. p.city, p.karma as karma, p.imageurl,
  29. p.gender as gender
  30. FROM cms_online o
  31. LEFT JOIN cms_users u ON u.id = o.user_id
  32. LEFT JOIN cms_user_profiles p ON p.user_id = u.id
  33. WHERE u.is_locked = 0 AND u.is_deleted = 0 AND u.group_id != 2
  34. GROUP BY o.user_id
  35. ORDER BY ".$orderby." ".$orderto."
  36. LIMIT ".(($page-1)*$perpage).", $perpage";
Модератор
small user social cms
МедальМедаль за отзывчивостьКубок зрительских симпатий
Сообщений: 435
ну тут само собой group_id - тот который пытаемся закрыть. в шаблонах ничего не правим...
Посетитель
small user social cms
МедальКубок зрительских симпатийПочетный донор проекта
Сообщений: 713
Александр, колдун! Опять работает!
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.