HTML Logo by World Wide Web Consortium ( Click to learn more about our commitment to accessibility and standards.

Moving forward with Composr

ocPortal has been relaunched as Composr CMS, which is now in beta. ocPortal 9 will be superseded by Composr 10.

Head over to for our new site, and to our migration roadmap. Existing ocPortal member accounts have been mirrored.

Tweak to hide members from the member list

Login / Search

 [ Join | More ]
 Add topic 
#57412 (In Topic #12483)

Fan in action

Applies to 4.2.2

In order to keep some members from showing on the member list, this tweak will hide all members whose primary usergroup is also hidden.  This might not be the best way of managing this for everyone, but it works well for me!

In site/pages/members/php:

First change:


$query='FROM '.$GLOBALS['FORUM_DB']->get_table_prefix().'f_members WHERE id<>'.strval(db_get_first_id());


$query='FROM '.$GLOBALS['FORUM_DB']->get_table_prefix().'f_members INNER JOIN '.$GLOBALS['FORUM_DB']->get_table_prefix().'f_groups ON '.$GLOBALS['FORUM_DB']->get_table_prefix().'f_members.m_primary_group='.$GLOBALS['FORUM_DB']->get_table_prefix().' WHERE '.$GLOBALS['FORUM_DB']->get_table_prefix().'<>'.strval(db_get_first_id());

Then add after that:


if (!has_specific_permission(get_member(),'see_hidden')) $query.=' AND g_hidden<>1';

Finally change:


$rows=$GLOBALS['FORUM_DB']->query('SELECT * '.$query,$max,$start);


$rows=$GLOBALS['FORUM_DB']->query('SELECT '.$GLOBALS['FORUM_DB']->get_table_prefix().'f_members.*,g_hidden '.$query,$max,$start);

Note that this will only hide the user if their PRIMARY usergroup is hidden, if a user is in secondary groups that are hidden they will still appear on the list if their primary usergroup is visible.  Also users with the "see hidden" permission will be able to see everyone.
Back to the top

Interesting, thank you for sharing :).

Become a fan of ocPortal on Facebook or add me as a friend. Add me on on Twitter.
Was I helpful?
  • If not, please let us know how we can do better (please try and propose any bigger ideas in such a way that they are fundable and scalable).
  • If so, please let others know about ocPortal whenever you see the opportunity.
  • If my reply is too Vulcan or expressed too much in business-strategy terms, and not particularly personal, I apologise. As a company & project maintainer, time is very limited to me, so usually when I write a reply I try and make it generic advice to all readers. I'm also naturally a joined-up thinker, so I always express my thoughts in combined business and technical terms. I recognise not everyone likes that, don't let my Vulcan-thinking stop you enjoying ocPortal on fun personal projects.
  • If my response can inspire a community tutorial, that's a great way of giving back to the project as a user.
Back to the top
1 guests and 0 members have just viewed this: None
Control functions:

Quick reply   Contract

Your name:
Your message: