Private category for each user

Hi there everybody :wave:

:dart: What I’m looking for

I’d like that each user of my community have their own private space where they can write whatever topic they want in a private way. To use it as a personal diary, thoughts that maybe they would like to share later, or as they want. Anybody else can neither see any list of topics or reach the content through a direct URL, unless the owner of the topic decides to invite other people to the topic through an invitation to join a specific topic.

:bulb: The solution I’ve thought about

A group and a category for each user following this process:

:spiral_notepad: The process

The following sequence happens when a user is created.

  1. A user named user is created
  2. Automatically a group named user-group is created with the following config.
    • Owner: user
    • Members: user
    • Access: All the 3 checkboxes disabled
    • Visibility: Only owners
    • Mentions and messages: Nobody
  3. Automatically a category named user category is created with the following config:
    • Security: Only group user-group is allowed to see, create and reply.
    • Settings/search priority: Ignore

:chart_with_upwards_trend: The result after applying the described process

I’ve tested this approach manually in a testing environment with 2 users: userA and userB.

The result is that under the categories list both users see the “global” categories but userA also sees the category userA space, and userB also sees userB space, but userA does not see userB space and userB does not see userA space.

userA has created a topic inside userA space. Then, I’ve copied the topic url in the userB session, and the system does not display anything telling that the topic I’m trying to see does not exist or is private.

:green_circle: Pros

  • This is what I am looking for and it is the exact expected behavior for non administrator users.

:red_circle: Cons and concerns

  • Manual process
    The process described above is manual, therefore I should find a way to automate this, otherwise it would be impractical.

  • As many groups as users: May it affect performance?
    This is something that probably depends on the number of users, however I don’t want to reach a point where this decision is a limitation for the community regarding the performance of the forum.

  • Administrator can see all private categories
    The administrator user under the categories page can see all the “private” categories listed, just as the others, and also can see the topics. This is a concern because I would like to guarantee the privacy for the users. So, there is any way to limit this?. I understand that this is a community and privacy within the community is something that you may not expect, so maybe I just must be ok with this limitation and instead login in the community as administrator, I can join as another user and limit myself to use the administrator account only when needed.

:thinking: Workarounds and alternatives

Does it exist any other way to achieve what I’m looking for? There are any workarounds for the described functionality?. Am I overthinking to find out a solution for an use case that is not something that a forum software should deal with? I’m open to see other points of view.

What do you think?
Thank you.

3 Likes

Why not have them just send themselves a PM?

6 Likes

A fascinating potential approach!

1 Like

Because of lack of tagging? Because inbox can be very crowded?

And no, I don’t see ziljon categories be very practical solution.

3 Likes

I’m behind @pfaffman’s suggestion here but for the record, having lots of groups does not affect performance unlike having lots of categories.

I guess pm tags allowed for groups would solve that issue but yeah inboxes… :laughing:

4 Likes

There exists pm tags allowed for groups site setting for that.

We definitely agree there!

2 Likes

If your Self Hosted this plugin should maybe do the trick.

This plugin the Op can only see their topic and a configured group. In your use case create a group if needed add a null user to the group ie Discobot or create an empty user. Activate the user manually disable emails and set user to private. Set group to private.

Here you can disable admin from viewing

With this you only need to create 1 category. Very uncomplicated this method and hands off.

3 Likes

Plugins and components have tendency break every now and then — and if that one fails then everything is visible. Perhaps it is not such big risk but everyone must understand it.

2 Likes

This is the simplest solution. I’ve been playing around with this solution and I think that it is enough for the use case I’m expecting. However there is only a single drawback: Back links functionality seems to not work.

Given this scenario:
Topic 1 references topic 2

Case 1: Normal usage with typical public topics
The user is reading topic 1 and sees a link to topic 2. So the user clicks on the link and goes to read topic 2. At the end of the first message of topic 2 there is a list of links to other topics where topic 2 is referenced, so one of the links in that list is topic 1.

Case 2: Private messages
The user creates topic 2 as a private message to itself. Later it creates topic 1 as a private message to itself as well and makes a reference to topic 2. First of all the linking tool to insert links does not take into account private messages. This is understandable. However once the link is inserted, in topic 2 the list of topics topic 2 is referenced from, doesn’t appear.

This issue is not critical at all although I’d love it to work. Is there in the config any setting that allows it?

I try to avoid plugins, themes and everything that it is not stock because at some point the compatibility breaks. I’m a software engineer and this problem is more common than it should. So I prefer to go as simple as possible, so I think that @Jagster and me are in the same boat:


Summary

PMs to themselves is the simplest solution with 1 big drawback: lack of back linking functionality. And 2 minor issues:

  • Linking tool does not display other private topics
  • The PMs are listed in the “sent” directory and not in the inbox.

There is a way to fix this? Otherwise it is not a big deal.
Thank you guys.

2 Likes

Very true. Though the Dev of this one I have observed is generally very on top of his plugins and I have observed he has had fair number of his works integrated in core. But you are very correct as even Discourse Meta components & plugins at times experience breakage.

The PM system could use some overhaul imho.

With the idea of different topics in PMs likely better to keep them grouped in one pm when related and use links within that pm to bounce between different points of reference.

While you’re mostly wanting to avoid plugins with good reason. One that might work okay would be a fairly recent one that would allow a member to publish the pm as a topic. While it might break the breakage is not likely to cause any leaks.

I would also like to see a book mark manager for ease of finding bookmarks easier. Ie bookmark folders

3 Likes

Hello :blob_wave: and welcome to Discourse Meta :slight_smile:

I just want to reiterate what others have said. you can pretty much achieve what you have described via PMs and tags. I have a personal work inbox setup that does this. I have multiple self-pms that work like cover page to other pms. I use tags like sub-folders but even better, because some posts can be in more than one tag. I have links to what I need in my inbox self-pm tools in my sidebar custom menu.

If your forum is like less than 50 users, sure user categories or subcategories would be sort of manageable. any more and it’s likely going to start getting unwieldily.

6 Likes

I like your approach to use some PMs as entry points to other PMs. The concept is similar to MOCs in the PKMs (Personal Knowledge Management) systems world like Obsidian.

However could you please explain a little bit further this part?

Do you have a custom section in your sidebar menu where you have some links to the PMs that act as entry point for other stuff?

1 Like

Yes, and I just need one link in the sidebar section to go to my private inbox notebook. It’s actually quite easy to set up a virtual folder tree in your inbox, just linked PMs. But it sounds like what you are seeking is a pre-defined user template for users to have their own such setup. This is basically turning Discourse into something it isn’t (in the same way having a designated category for each user would be).

Setting up a private inbox virtual folder system is something that has to be done by the user - I don’t see how an admin could pre-configure such a thing for the members. One could have documented instructions I suppose, but everyone does their own organization differently, so one person’s solution may not work for others in this case. I don’t know what your actual forum purpose or what this use case is, so I can’t comment on that.

No no. Actually I was looking for the limitations in order to be able to create an user guide for my community to explain them how could they use their inbox to have private notes if they don’t know about other tools. I agree that using the PMs like a PKMS is not what Discourse is meant for.

I’m not looking to create any sort of folder system template for the users inboxes. Just to give them the knowledge on how to use the PMs to keep some private notes if they don’t want to dig in more complicated tools.

At this point I’m pretty aware about the limitations and the approach I’m gonna take:

I’m going to write a detailed guide to show the users how they can use their PMs for personal notes with examples.

Thank you everybody for your comments and tips.

1 Like