Jump to content

Latest activity's can see Forums Club


Go to solution Solved by Joel R,

Recommended Posts

Hi, we have this issue wherein, we have members reported to us that they can see other clubs activities even though they are not part of that club/group.

Is there a work around on this? We need to make sure that members/users don't see any activities of clubs that they are not belong or part of the club.

-Allan

Link to comment
Share on other sites

Let me ask you a quick question: is your admin account in at least 1 club?

 

I have looked at the code, and unless the member editing the stream is in at least 1 club, the field with the club options won't appear. I consider it a bug since IPS shouldn't check if the specific user is in any clubs from the ACP:

	/**
	 * Fetch our clubs and cache
	 *
	 * @return array
	 */
	protected function _getOurClubs()
	{
		if( static::$ourClubs === NULL )
		{
			static::$ourClubs = \IPS\Member\Club::clubs( \IPS\Member::loggedIn(), NULL, 'name', TRUE, array(), \IPS\Settings::i()->clubs_require_approval ? array( 'approved=1' ) : NULL );

			static::$ourClubs = static::$ourClubs ? iterator_to_array( static::$ourClubs ) : array();
		}

		return static::$ourClubs;
	}

 

For the admin dispatcher, they should pass NULL rather than \IPS\Member::loggedIn() as the first parameter.

Link to comment
Share on other sites

3 hours ago, teraßyte said:

Let me ask you a quick question: is your admin account in at least 1 club?

 

I have looked at the code, and unless the member editing the stream is in at least 1 club, the field with the club options won't appear. I consider it a bug since IPS shouldn't check if the specific user is in any clubs from the ACP:

	/**
	 * Fetch our clubs and cache
	 *
	 * @return array
	 */
	protected function _getOurClubs()
	{
		if( static::$ourClubs === NULL )
		{
			static::$ourClubs = \IPS\Member\Club::clubs( \IPS\Member::loggedIn(), NULL, 'name', TRUE, array(), \IPS\Settings::i()->clubs_require_approval ? array( 'approved=1' ) : NULL );

			static::$ourClubs = static::$ourClubs ? iterator_to_array( static::$ourClubs ) : array();
		}

		return static::$ourClubs;
	}

 

For the admin dispatcher, they should pass NULL rather than \IPS\Member::loggedIn() as the first parameter.

Yeah, I agree. Posted a bug report on that

Link to comment
Share on other sites

On 12/30/2023 at 2:35 AM, Marc Stridgen said:

Yeah, I agree. Posted a bug report on that

Thank you for the reply, Marc, I was the one originally posted this using Nigel account, so from now on, I'll be replying or looking on this thread using my own account now.

 

On 12/29/2023 at 11:02 PM, teraßyte said:

Let me ask you a quick question: is your admin account in at least 1 club?

My admin account does not belong to any of the clubs

On 12/30/2023 at 2:35 AM, Marc Stridgen said:

Yeah, I agree. Posted a bug report on that

Hello Marc, what is the bug? What we are after is that, are we able filter all activities except for the club's that I don't belong?

Currently I see all clubs activities in any streams that I use, or this default "latest activities", are we able to fix that or set that somewhere in ACP?

thanks

Edited by Allan - TheTechTribe
Link to comment
Share on other sites

23 minutes ago, Allan - TheTechTribe said:

Hello Marc, what is the bug? What we are after is that, are we able filter all activities except for the club's that I don't belong?

The bug is that menu option that I mentioned only shows in the ACP if you are viewing it from an account that is in a club. 

As a workaround until the bug is fixed, have your admin account join some random club. At that point it should see the option I posted to filter clubs. 

Link to comment
Share on other sites

1 hour ago, Randy Calvert said:

The bug is that menu option that I mentioned only shows in the ACP if you are viewing it from an account that is in a club. 

As a workaround until the bug is fixed, have your admin account join some random club. At that point it should see the option I posted to filter clubs. 

Ok, what about the original topic I posted? wherein you can see other clubs activities that you are not belong to? is that also a bug?

Link to comment
Share on other sites

38 minutes ago, Allan - TheTechTribe said:

Ok, what about the original topic I posted? wherein you can see other clubs activities that you are not belong to? is that also a bug?

Thats by design based on the type of club that was created. If the club is open, the content is discoverable. You can read about the different types of clubs above.

If you don’t want it discoverable, have an admin join some random club (thus working around the bug) and then change the default stream to not include clubs in the result.  That achieves the outcome you are asking about. 

Edited by Randy Calvert
Link to comment
Share on other sites

3 hours ago, Randy Calvert said:

Thats by design based on the type of club that was created. If the club is open, the content is discoverable. You can read about the different types of clubs above.

If you don’t want it discoverable, have an admin join some random club (thus working around the bug) and then change the default stream to not include clubs in the result.  That achieves the outcome you are asking about. 

 

30 minutes ago, Marc Stridgen said:

The above is correct. The permissions on who can see are actually working, based on how you have the club set up. 

just to confirm, if we set the club to CLOSED, then that would fix the problem, right? all closed club activities won't be displayed in the activity streams?

Link to comment
Share on other sites

15 minutes ago, Allan - TheTechTribe said:

just to confirm, if we set the club to CLOSED, then that would fix the problem, right? all closed club activities won't be displayed in the activity streams?

No, it would need to be set to private if you wish to guarantee it to be visible only to its members. Closed clubs 'can' have sections in which the topics are only visible to its members, but it would depend on the owner selecting that option when creating each section in the club

Link to comment
Share on other sites

17 minutes ago, Marc Stridgen said:

No, it would need to be set to private if you wish to guarantee it to be visible only to its members. Closed clubs 'can' have sections in which the topics are only visible to its members, but it would depend on the owner selecting that option when creating each section in the club

Ok, thanks, last question, if we set it to private, is there a way to be auto approved by the admin of that club? Or is there any settings for that if we set the clubs to private?

Link to comment
Share on other sites

Sorry for all the back and forth questions @Randy Calvert @teraßyte & @Marc Stridgen

And, thanks for all your help so far. 

Here's some deeper context for what we're trying to achieve that might hopefully shed some more light on the situation (and maybe help us find a potential solution):

We have a very busy main forum and last year we noticed that there was a LOT of chatter in our main forums around specific products / vendors in our Industry. 

There are about 800 different products / vendors that serve our industry and conversations around these "product / vendor" were filling up the Latest Activity feeds of members for products that they weren't interested in. 

So, we decided to try and find a solution to allow our members to essentially "opt-in" to products / vendors that they were interested in seeing conversations / threads about. 

To do that, one of our (ex) team members started creating Clubs with the following naming convention:

"The <Product Name> User Group"

E.g. "The Microsoft User Group", "The Kaseya User Group" etc. 

Our whole goal for setting up these "User Group" Clubs like this was so that if a member was interested in say Microsoft content or Kaseya content, then they could click the JOIN button for that specific Club and immediately from that point onwards, posts / threads from inside that club would start showing up in their Latest Activity view. 

(without them needing to be approved by an Admin as there is no need to stop people from joining those clubs immediately)

For people that haven't joined the Club, no posts from inside that club will show up in their Latest Activity Feed (ever). 

Up until last week, we thought this system was working as originally intended. 

(I personally don't use the Latest Activity view myself as I use my own Custom Streams, so I didn't know that content from Clubs I wasn't in was showing in my Latest Activity Feed)

However, last week we had a member report to us that they have been seeing posts in their Latest Activity feed from within clubs that they hadn't joined.

They originally thought it was intended behavior so hadn't reported to us before, but were wondering why it was happening. 

Since then, a bunch of other members have joined in saying they are seeing it as well and so we started investigating and realized that it doesn't appear that we've set it up in the way we originally thought it would work. 

(I suspect the ex team member might not have tested it properly when all the first Clubs were rolled out and our members have just "put up with it" since then until recently when some of the clubs started getting quite promotional)

So, our question here is, is there a way to have Clubs that have the following attributes:

1. They can be seen in the Club Listing by anyone who clicks on it
2. Any member can click the JOIN button and immediately be joined to the club (without requiring a manual approval process - we have 100's of clubs and 10,000+ members)
3. If a member is NOT joined to a Club, none of the posts from within that club will show in their Latest Activity feed
4. If a member DOES join a Club, from that moment onwards all posts from within that club will show in their Latest Activity feed

Any help is much appreciated 🙏

Link to comment
Share on other sites

There wouldn't be a way in which to do this without someone having to approve them. However, I do have an alternative idea for you.

Have you thought about using commerce perhaps? This way you can use forums as you intended in the first place, rather than clubs. So using your scenario above you could create either a subscription or a product, with $0 value with the name "Microsoft user group". Create a group that is added as a secondary group when a user "purchases" that item, which also gives access to x forums content.

Link to comment
Share on other sites

Posted (edited)
22 hours ago, Marc Stridgen said:

There wouldn't be a way in which to do this without someone having to approve them.

Darn, ok - thanks for the reply - appreciate it 🙏 

I think the best outcome here is for us to change all the groups to CLOSED and get our dev team to build a way (perhaps via a 60 second cron job) to auto-approve any requests directly via direct DB calls as they happen. 

(understand this wouldn't be supported)

22 hours ago, Marc Stridgen said:

Have you thought about using commerce perhaps? This way you can use forums as you intended in the first place, rather than clubs. So using your scenario above you could create either a subscription or a product, with $0 value with the name "Microsoft user group". Create a group that is added as a secondary group when a user "purchases" that item, which also gives access to x forums content.

Thanks for offering an alternative, however with 100's of existing clubs and the way we've designed and positioned the Clubs (we call them Mini-Tribes as part of our "Tech Tribe" company branding), this would be quite a drastic change.

Clubs have a bunch of additional advantages with all the other Features that can be turned on in individual ones. 

Edited by Nigel Moore
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Upcoming Events

    No upcoming events found
×
×
  • Create New...