Skip to:
Content
Pages
Categories
Search
Top
Bottom

Per Forum Permissions by Group


  • childofnewlight
    Participant

    @childofnewlight

    After having exhaustively searched for the last few nights for information on this topic, I have not been able to find an answer.

    I’m currently using the most up-to-date versions of both WP and bbPress. My current website uses Joomla, rokbridge, and phpbb3.

    However, I’m trying to setup a new site based on WordPress and bbPress seems like an awesome alternative to having to mess around with forum bridges for phpbb3.

    I was well on my way to adopting bbPress as our new forum software. Successfully imported the phpbb forum. Just fixing things up after the import like setting categories and moving forums around into their proper place. Then I realized that private forums were now public.

    ‘No problem’, I though. I went to each forum settings to be amazingly disappointed that there was only three options: hidden, private, and open.

    With our current phpbb setup I can create a group. Add people to it. Then go to the forum (or their group) and give them permission to see the group.

    This is especially important as we are a Christian gaming clan. We have a private guild forum that allows members of our clan to discuss things privately amongst each other (like private vent login info). We also have an officer forum that lets us candidly discuss potential applicants.

    I would like to allow officers access to certain forums. Guild members to certain other forums. As far as I can tell, bbpress excludes this very basic ability.

    I tried using the Members plugin for WordPress that is suppose to have bbpress integration. It wouldn’t work properly. At times it wouldn’t allow a role to see certain forums and other times it didn’t matter what permissions were set, it’d see it anyway.

    I’m going to look at support for the Members mod, but it seems kind of silly that this wouldn’t be an integral part of a modern forum software.

    Unless I’m missing something, I’ll have to stick with messing around with phpbb for now.

Viewing 25 replies - 101 through 125 (of 132 total)

  • Tom Dyer
    Participant

    @trymedo

    Haha I appreciate this very much @robin-w I’ll try that now and let you know how I get on :)
    Have a nice weekend!


    Tom Dyer
    Participant

    @trymedo

    That’s fixed it for now – I’m happy to use that solution for the meantime unless you come up with a better fix for it. Thanks for all the help @robin-w and @netweb


    Robin W
    Moderator

    @robin-w

    Need to work out why those lines are there, they seem to do a sort and then the next lines do as well. I’ll look next week !


    Tom Dyer
    Participant

    @trymedo

    as a side note, it’s probably worth utilising the bbp_get_forum_post_type(), bbp_get_topic_post_type() and bbp_get_reply_post_type() from bbPress instead of hard-coding the ‘forum’, ‘topic’ and ‘reply’ in there. It’s not affecting what I’m doing right now, but you can bet it’s going to upset somebody sometime ;)

    - You may already have that in mind but I just figured, since you want people testing it, that it’s worth pointing out.


    Robin W
    Moderator

    @robin-w

    @trymedo

    yes that’s on my list together with a bunch of other code wrangling ! It always a balance between whether you release something because it’s good enough and whether you make it perfect, then release only to find that it still needs changing !

    Given limited time to work on these things, if I got it how I think it will eventually look, it would be another 3-4 months before I released version 1.

    But please keep feedback coming !


    Tom Dyer
    Participant

    @trymedo

    @robin-w I fully understand that, and I’m grateful that you released it before making it ‘perfect’ because that definition to you might be somewhat different to what it is to me.
    The minor issues I have had with this plugin have been completely outweighed by the perks and it’s saved me a LOT of time had I needed to build something similar myself – not to mention the fact that I would have overlooked a lot of things and ended up with something much less functional. So I apologise if any of my feedback seems negative because that’s not my intention at all – at the end of the day, the plugin (from day one, without any improvements) is exactly what I needed.

    Thanks for going out of your way to help the WordPress community – it’s very much appreciated. And say thanks to your wife also for being cool about the hours you put into it :) This developer right here certainly appreciates it :)


    Robin W
    Moderator

    @robin-w

    @trymedo – great really pleased !

    When you get a moment can you just try http://www.mysite.com/topics without my plugin. I just want to confirm that it is my ‘double sort’ that is causing your issue. If it is, then I’ll probably just add a keymaster and moderator check to ignore the ‘get col’ part so that it doesn’t do that if not needed. It would then mean that the server isn’t having to check every post for these groups, so would speed response for large forums such as yours. Then the code within the move.php could be re-instated, and I wouldn’t need to spend time working out what it does !

    At the moment keymasters & moderators can see all posts and forums, although I suspect that someone will want a moderator to only see and moderate a sub group of forums. I plan therefore to do the check to say if ‘keymaster’ or if ‘moderator without a group set’ then skip the for the ‘get_col’ filters, which would speed sorts for large forums such as yours and get round the issue of the double sort. Moderators with a group set would still go into the double sort, so would fall foul of the double sort if that’s how you would want them set. Give me feedback on this please, so I can work on what I should do !


    Tom Dyer
    Participant

    @trymedo

    @robin-w I’ve just tried that and can confirm that *unfortunately* the error only occurs when your plugin is enabled.

    I’m not entirely sure that the solution you suggest would work for the site I’m using. You see, the private groups plugin has been installed in order for us to add moderators to a specific group so we can lock a few forums off to the moderators only. Normal users will not be part of any groups – and all moderators should be able to see all forums.
    The aim here is to give moderators a place to post ideas and discussions about managing and/or improving the forums.

    In short, All ‘keymasters’ and ‘moderators’ will have access to ALL forums, but standard users will not be able to see these ‘moderator’ discussions.

    Hope this helps.


    Tom Dyer
    Participant

    @trymedo

    *sorry if I’ve just throw another spanner in the works*


    Robin W
    Moderator

    @robin-w

    ok, so the planned logic would be

    if you don’t set a moderator to any group, then they will see all forums and moderate in all.
    if you set a moderator to a group, they would only be able to moderate that group

    For your setup, you would then set up forums a, b & c to be set to say group 1 users.

    So that would stop all users at participant or spectator level without group 1 permission from accessing – in you case all participant or spectator users, you just give no-one access to that.

    The you would just set your moderators to moderate but with no group role, so they would be able to access all forums, creating forums for just the moderators.

    That work for you?


    Tom Dyer
    Participant

    @trymedo

    @robin-w it’s getting late here and it took me a while to comprehend that… but yes, if I understand you correctly, then that would work. So just to confirm (for my own sanity), you’re saying that:

    • Normal forums (for all users/roles) would NOT belong to any group.
    • The Moderator-only forums would belong to Group 1
    • All users (of any role) would NOT belong to any group

    This would mean that ‘technically’, group 1 isn’t linked to any users per-say, but would hide those forums from users because they don’t belong to the group. Moderators and keymasters however, would be able to see it since they have higher permissions.

    Is that correct? If so, then yes I’m sure that would work well.


    Robin W
    Moderator

    @robin-w

    yes, that’s what I am saying – it does take a minute or two to think about, – in effect it’s what you have at the moment, as the plugin ignores any group setting for moderators. The extra code would just allow a limitation for those who would like to limit moderators, whilst saving running unnecessary code for keymaster and moderators without forum restrictions.

    Anyway I’ll take a look at it, in the meantime you currently have a workable solution with the code mod to move.php.


    Tom Dyer
    Participant

    @trymedo

    Ok that’s perfect! The temporary fix is fine for now, and I have a bunch of other things I need to get on with next week anyway. I’m afraid I’m not able to donate anything until I get some cash in June but if I was able, I’d at least buy you a beer in the meantime! :)


    Robin W
    Moderator

    @robin-w

    ok, I’ll get to work on it next week


    Robin W
    Moderator

    @robin-w

    @smileyriley21 did this do what you needed? latest version is at

    http://www.rewweb.co.uk/bbp-private-groups/


    Tom Dyer
    Participant

    @trymedo

    @robin-w – I see there is an update! :)

    1.7 Moderators can now be set to moderate all forums or just their group ones (plus any open forums)
    Improved topic filtering to speed performance
    allow Super sticky topics to be seen by all forums

    Does this mean I can remove the custom reply-move.php file? Is there anything else I need to know about it?

    All the best,
    Tom


    Robin W
    Moderator

    @robin-w

    @trymedo – yes please try it and let me know if it works !

    Now if you have moderators with no groups, then they can moderate across all forums. If you set a moderator to a group, then they can just moderate that group and all open forums.


    Tom Dyer
    Participant

    @trymedo

    @robin-w Hi, I’m back! :P (and I haven’t forgotten about my promise to donate – I’m still waiting for my invoice to be paid!)

    I’ve been testing this plugin, and although the updates seem to have improved a few things, I’m still having issues when trying to list topics.

    If I look at http://www.mysite.com/topics as an administrator/keymaster, I can see all topics fine.
    If I look at http://www.mysite.com/topics as any other user then I just get a white page

    This appears to be the same error as before, with the query timing out due to the large amount of topics it’s trying to check privileges for.
    Is there a way to use the ‘Topics Per Page’ value from bbpress as the limit on the query? I understand this might screw up the pagination slightly, but I’d rather the page count was wrong than the topics listing being unavailable.

    I was looking into adding this myself, but I don’t know where I can pull the current page information from in order to set the query offset…

    Do you think this would be a viable option to reduce the amount of work the database/php is doing each time?

    *edit* Pagination would be an issue if I did the above wouldn’t it… Hmmmm [scratches head].

    Would a JOIN sql statement be an option in order to do the matching of groups-to-users-to-topics bit while grabbing the topics, rather than grabbing all topics and then checking each one individually?


    Tom Dyer
    Participant

    @trymedo

    Looking at this again, I think something is really broken :/

    I have created a user who does NOT belong to any groups.
    I have a forum called ‘Moderators forum’ which belongs to Group1.

    If I add a limit to the SQL statement for the topics list (which I did in order to check it was the statement that was timing out) – I then see a list of topics limited to that amount, but I also see the moderators forum in there too, but I shouldn’t because I’m currently logged in as the user with no privileges…

    Any idea what might be going wrong here?


    Tom Dyer
    Participant

    @trymedo

    Further digging:

    When I try to look at the “Moderators Forum” I get the following results:

    Viewing as Moderator/Keymaster : Forum is VISIBLE (expected)
    Viewing as user not in group : Forum is HIDDEN (expected)

    When viewing a topic that is within the “Moderators Forum”, I get the following results:

    Viewing as Moderators/Keymaster : Topic is VISIBLE (expected)
    Viewing as user not in group : Topic is VISIBLE (NOT expected)

    I believe this is an issue for anyone since even non-logged-in users would be able to see this topic if they had the URL for it, which could be generated from a sitemap or something – yet to be confirmed.


    Robin W
    Moderator

    @robin-w

    Tom,

    am struggling to keep up with your testing :-)

    Ok, so can you let me have your ‘private group’ settings for

    forum visibility
    general settings

    so that I can replicate what you are seeing


    Tom Dyer
    Participant

    @trymedo

    @robin – sorry, I’m jumping between different tasks at the moment so my replies are a little fragmented…

    Ok, so I have

    – Group 1 (named Moderators)
    – Three forums which belong to Group 1, all ‘public’ visibility – but could/should be private I guess…
    – BuddyPress is installed (only for private messages and the user profiles that comes with it)
    – In total, we have 72 Forums, 70,728 Topics, and 564,456 Replies.

    Having looked at our setup and the errors I’m having with it, I’m wondering if (for my case) it might be worth editing your plugin to change the query; so instead of looking up where posts__in, I look up posts__not_in instead. I think for my case, where there’s a vast amount of forums, but only 3 ‘hidden’ moderator forums, it might work better for me to do it that way.

    Does that makes sense? – Do you need any other settings/options to be lists above to replicate my case?


    Robin W
    Moderator

    @robin-w

    Tom, thanks, and I’ll do a delve.

    yes you could do a post not in, I’ll take a look at the same time


    Robin W
    Moderator

    @robin-w

    Tom, what version are you currently on, V1.9.1 fixes a bug for people with moderator privilege that was causing display issues. Just need to check that your issue with what people are seeing is still current with this version.

    The white screen of death – I’m not sure if the memory issue is with the post__in result being big, or the need to process each one, so yes I’ll work on a post not in to see if this makes a difference, or if I can reduce the check. Can you remind me if this was just with http://www.mysite.com/topics, or whether it cropped up elsewhere, eg searches, or seleting forums etc.


    Tom Dyer
    Participant

    @trymedo

    Hi, I’m on v1.9.1 – I’ve been regularly keeping this plugin up to date in the hope that my issues magically disappear ;)

    It’s anywhere that lists the topics, so /topics or on a buddyPress members profile under ‘forum’ (which I think is just trying to list topics that the user has started or replied to).
    Originally, happened on the ‘move’ action too, but you fixed that by adding the moderator/keymaster exception :)

Viewing 25 replies - 101 through 125 (of 132 total)

You must be logged in to reply to this topic.