I’m trying to require users to join groups in order to post and reply. I did my research and have already configured the groupings and in each individual group, I’ve configured everything in the security section to not allow replies and posts for everyone and only for members. So that part is working.
However, it isn’t clear to users how or where to join the group. Is there a button that I can add, perhaps ‘Join Group’ that will allow them to join the group? Am i missing the button somewhere? I don’t see anything.
I technically can create a button and just link them to /g but that isn’t the best experience for users. Any insights and help would be appreciated!
I can technically do this yes. However, that button will be fixed even if you are already a member of the group which can be confusing.
If for example you are already a member of Group A but you still see a button that says ‘+ Join Group’. I need a more dynamic solution. I find it hard to believe that there isn’t already a native solution to this built in Discourse.
The button changes to ‘Leave’ if you’re already a member of the group, if that helps you out at all? (assuming you also have ‘Allow users to leave the group freely’ set. If not, the join button isn’t present if you are already a member of the group)
This won’t work. I have over 30+ groups. One thing I’d like to do is add a button at the top of each Group to Join. I can add a static “Join” button that goes to the group page but that’s not the experience I am looking to do. I’d like users to join the group that they are on by simply pressing a button on the page without having to unnecessarily load the /g groups page. There’s just so many groups on that /g groups page that it is confusing. Unless there is a way to dynamically insert the button using handlebars or something, perhaps someone can help me with that?
This is a good workaround but I’d rather have the dynamic button that says ‘Join Group’ when a user isn’t part of the group or ‘Leave Group’ when they are. I wonder why this isn’t native to Discourse.
I’d assume that this isn’t a common use-case, and so it wasn’t seen as a needed core feature. I think you could theoretically do something with reverse engineering the discourse API, but I’m not sure.