Tag based Visibility of Postings

Topics: General
Developer
Jan 5, 2015 at 2:45 PM
I'm considering using DNN xChange for a public platform that should be used to answer both external and internal questions. For this purpose, I need a way to mark certain questions in a way so that they are only visible to certain users.

The solution that seems to be most promising to me would be to be able to associate tags with portal user groups, and use this information to filter questions only for users of an associated group if the associated tag is present.

What do you think about this? If there's no objections, I could probably implement this within the next few months ...
Coordinator
Jan 5, 2015 at 2:51 PM
Hello @jashan, please carry on with the feature you are planning to implement.
When you mean associating tags, are you referring to the existing tag feature or planning to add a new property for Filter Tags, which will be associated with the groups.
I would suggest you take the latter option. In that way, there will be one set of tags, which can be linked to portal user groups, while the rest which will be commonly available and can be used to create questions.
Let me know your view on the same.
Developer
Jan 5, 2015 at 3:02 PM
For sake of simplicity, I thought of being able to associate any existing tag with one or more portal groups. That way, it's also possible to make questions collectively visible / invisible to groups by simply changing the association of given tags (without having to change any tagging). Tags really associate questions with subjects, and it's the subjects that I want to hide or show. Another benefit of that approach is that the tags themselves could also be filtered by groups: Users would only see tags without an association to any group and those that are associated with groups they are in.

One design question would be whether those associations can either add or remove visibility (that way, it would also be possible that a certain group is not allowed to see questions with certain tags, when that's the kind of association). However, I think while very powerful, that would make things too complicated and be of somewhat limited use (in other words: just to solve a rather rare use case, everyone would have to suffer the increased complexity).

I can see that "filter tags" could also have benefits. Another feature I need is some sort of localization to be able to have a multilingual xChange site. In another Q&A-software I used tags for that purpose (that system also allowed users to set up tags to filter the messages they see - so it was easy for a user to say "I only want to see messages that have the en-tag", which would result in them only seeing English messages). So for that purpose, a separate "kind" of tag could be nice.

On the other hand, what I really like about the concept of tagging in itself is that it's so versatile. Adding a layer of separation could remove some of that versatility.

Let me know what you think about this ...
Coordinator
Jan 5, 2015 at 3:07 PM
How would you plan to implement the tag-usergroup association.

I am online on Skype, my id is babureddyh. we can discuss it online if you wish.
Developer
Jan 5, 2015 at 3:18 PM
I tried contacting you via Skype ... did you see my messages? Here's the content:

[2015-01-05, 5:15:21 PM] Jashan Chittesh: Regarding how to implement the association: from the UI perspective, I think the most elegant approach would be an additional button in the Tag Info screen (which currently has "more" and "improve description") ... this additional button would only appear for admins and maybe be called "associate with portal group"

[2015-01-05, 5:17:34 PM] Jashan Chittesh: on the database level, it would be a simple table, maybe called DNNQA_Terms_Roles that associates tags with roles ... one question there would be if we should keep the existing terminology ("Terms" instead of "Tags") or already use the new term ("tag")
Coordinator
Jan 5, 2015 at 3:25 PM
Adding an additional button in the tag screen would be fine, if we have only few tags to associate. But looking at its usage on the long run, its better to add an additional page where in the user should be able to assign one or more tags to one or more user groups and also with certain types of rights (though the read/write feature can be controlled at the module level), it will be better if its added with this feature.

I did not get your messages. What’s your skypeid/mailed?

Regards,

Babu Reddy

Developer
Jan 5, 2015 at 3:32 PM
My Skype-id is jashanchittesh

Regarding the page with multiple assignments: For the use cases I'm currently seeing, you'd usually only associate specific tags with specific groups. I believe rights should be handled by privileges as they are already, so it would really only be controlling visibility. Otherwise, we'll have quite a few rather complex issues to solve because we introduce a new permissions level with quite some intersections (visibility is orthogonal, so that should not cause much additional complexity).