Having used the Who's Online block in a site using both public and private groups, what would be a profound improvement on its currently all or nothing operation became apparent. All or nothing means that all users in all groups are displayed in who's online, without the ability to opt out in profile settings, or to filter by group. The only way to give private group users privacy with the existing W/O is to disable use Who's Online permanently.
For users of a private group within a given XOOPS installation, knowing who is online in groups other than theirs is irrelevant to them. They say they only want to know who is online in their group, when logged into that group. Their feedback stated that no other group should have access to either knowledge that they are logged in to their group, their IP, or their activity, and that they do not care to have anyone else but their group listed in their whos online display.
And for those in a public commons group, listing users online in their private groups in a public whos' online listing creates a privacy loophole allowing anyone logged into the public to area and keep tabs when people are logged into their private group area as well as their current activity. I have already had one such person.
Since people subscribe to private groups because they want privacy (between only their geographically scattered family members for example), it makes sense to consider modding who's online to function in one or two selectable modes.
1. All or nothing for people who want the classic BBS style who's online.
2. Filtered by group, so that each groups W/O displays its own members exclusively.
Now the situation might arise wherein a user(s) may be enabled for more than one group in the permissions lets say a private group and a public group. Depending on how the system is made capable of handling this, different things can happen.
1. A group only W/O mode with multi group permissions, it would be unavoidable that users in all enabled groups would show up, given the way the system currently operates.
2. If the login process (user.php?) was capable of querying the user at sign in as to what group he wanted to sign into (via a drop down box of available groups for instance), the user could select the desired group and W/O would automatically filter to only that selection. Perhaps a user could go to his profile to access the same dropdown box when he wanted to change from private to public group.
3. Users could also use two logins each being assigned to a separate group, (i.e. JohnDoePublic or JohnDoePrivate) then W/O would filter to the logged in group. The system would have to be enabled for more than one user per IP for this to work.
My intent was not to upset the applecart, I know every one is very busy pushing ahead for the next release. This is only to plant a seed, and idea based on user feedback that could grow over time, or not. If incorporated, this would further extend XOOPS usability in the business realm where multiple business clients, or families in their own groups on the same XOOPS installation each having or wanting nothing to do with the other could have their own private group containers.
All the best