"View" and "Read" Permission

Golem07 - February 7, 2009 - 15:42
Project:Forum Access
Version:6.x-1.x-dev
Component:Miscellaneous
Category:feature request
Priority:normal
Assigned:Unassigned
Status:active
Description

Before this topic gets closed right away I'd like to say that I am aware that this feature request might not perfectly fit the AF module. But since most users interested in using drupal's forums are likely to use AF and since (as I understood) you are in charge of the forums module for D7 I thought it might be better to ask here. Most importantly, the existing access modules seem to not really see this as a thing of importance and from what I can tell neither module will have such an option in the forseeable future:

As close as AF has already come to be a perfect forums module, there is one feature still missing in Drupal that I consider vital to sites with forums as a main feature (and that Drupal lacks compared to e.g. phpbb): This is the option to differentiate between a "view" and a "read" permission.

If I understand correctly from the dozens of threads that I have read on this site, then the current situation is as follows: If you want to have forums that are not accessible to any users (or any role) then you have no choice but hide those forums completely from any other role. In other words: Users without that very permission will never be able to even know about the existence of (additional) forums that they might be interested in participating in.

I personally consider it vital to a site to be able show those users what options he will have if he registers or joins group x. This could be achieved by simply allowing those users to see the containers/forums (titles and description) as well as maybe how many posts there are and when the last entry was posted. As soon as they try to enter the forum in question, they will be told that they do not have the right permission and are given a hint on what they need to do to get those permissions.

You can tell the visitors about those options as much as you like: This still won't ever have the same teasing effect on users like the chance to actually see what they might be missing.

1. Am I right with the assumption that such permissions are not possible with the currently available modules on Drupal?
2. If so: Is there any way that you Michelle might be able to influence the future development of D7 or access modules to convince them of this permission's importance?
3. If not: Is there any chance something like this could be implemented to at least forums via the AF module?

Please accept my apologies for possibly posting on the wrong project page. But since you show so much enthusiasm and skill with enhancing forums, I consider this as my last hope for having such a permission setting in Drupal sometime in the future.

#1

Michelle - February 7, 2009 - 16:03
Project:Advanced Forum» Forum Access
Version:6.x-1.x-dev» 6.x-1.x-dev

I am not in charge of the D7 forum module. I had hoped to get some patches in, but I'm unlikely to have time before code freeze. There is no one person in charge of core forum; anyone can submit patches.

This feature request belongs to the forum access module. AF does not have any sort of access control built into it. If the FA maintainer(s) are not willing to do it, you might want to consider hiriing someone. Or perhaps they would be interested in being hired to do it.

This isn't something I am interested in writing. Personally, it drives me absolutely batty when people use this "tease" method and I'm far more likely to leave the site and never come back than join it.

Michelle

#2

Golem07 - February 7, 2009 - 16:51

Thanks for the info Michelle

Personally, it drives me absolutely batty when people use this "tease" method and I'm far more likely to leave the site and never come back than join it.

I know what you mean.
But sometimes it is just impossible to allow everybody access to all of the forums before they have actually shown that they are qualified for it. For example if you offer forums for certain professions an have to make sure that they actually belong to that profession before you allow them full access. Ideally they should still be able to see what the site offers before they decide to actually sign up for it. So sometimes this tease method is simply needed if you want to show some features but at the same time you are forced to keep info confidential. It is not always used with bad intention.

Anyway I understand that this is not related to AF.

#3

Michelle - February 7, 2009 - 19:19

I don't think it's necessarily "bad intention". Usually the intention is to tempt people to sign up so they can see the rest. Which isn't bad, just a form of advertising that doesn't get me to "bite".

Anyway, good luck with getting the feature. If FA needs something in AF to get it to work right, I'll certainly consider patches. But, yeah, the bulk of this is really out of scope for AF.

Michelle

#4

salvis - February 8, 2009 - 07:10

Thanks, Michelle.

This could be done in Forum Access, at least most of it, but I don't see it as a high priority.

@Golem07: What you describe is more realistic than #279584: Read Vs. View Permissions because you're not asking to show topic titles. However, it involves a fair amount of work, and we have open tasks that are higher up on the list, e.g. comment moderation and default access rights.

#5

Golem07 - February 8, 2009 - 13:45

Thanks to both of you for the assistance and clarification.

It basically comes down to showing (yet) unauthorized visitors that there actually are active forums (instead of "no forums have been setup..."). Nothing more.

I perfectly understand now that this is not of a high priority to you salvis and that it is technically not a part of AF. It would be great though if this might be possible sometime in the future and I would really like to pay my share of money if this helped to make it happen. However I am sure I would not be able to come up with enough money to support such a relatively exclusive feature request. So what, in your opinions, would be the best way to do now for me? Leave the status like it is or open up a new feature request in the FA project page, asking other people that re interested to also chip in?

Thanks again to both of you for your replies.

#6

salvis - February 8, 2009 - 15:53

Michelle has already moved your feature request to the FA queue (see #1 above).

You've made a good case and there is some interest in this, though not overwhelming. I agree that it might be desirable functionality, but it's unlikely that I'll get to it in a reasonable time frame. I do contract work, but my rates are steep and I'm not actively seeking bids. Contact me through my contact form if you want to pursue that option.

Ideally, you'll find a developer who is sufficiently interested in this functionality to work on a patch. Anyone?

#7

salvis - February 25, 2009 - 13:17

(Just closed #286453: Add another access option, which brought this up before.)

#8

Eidolon Night - July 12, 2009 - 23:02

I just wanted to add that I too am interested in this functionality. I agree with Michelle that this is a sort of advertising, but some of us do intend to make money with our Drupal sites. I currently don't have time to work on this, but consider this my +1

#9

Apollo610 - July 24, 2009 - 19:47

I would also be interested in such functionality - for social sites implementing something like, say, age or gender-restricted forums, it would be nice to show that these forums do exist and are not just "hidden".

A use-case example, someone may have a site discussing movies and wants to restrict the discussions based on the movie rating, therefore G is open to everyone, PG/PG-13 is open to anyone 13 and over, R/NC-17 is 17+ only. A teen may be discussing Transformers in the PG-13 group and tell their parents that hey, there's a lot of cool people on the site and there's a forum specifically for the movies they watch.

The advertising aspect in this use case is that people will tell friends that these forums exist because they could "view" them, even if they themselves are not eligible to "access" them.

#10

stephthegeek - August 2, 2009 - 01:54

+1 for this feature. For sites where access to a private forum is a paid/registration-only enticement, being able to "see what you're missing" is an important persuasive technique and reduces the need for more copy elsewhere explaining it. I'm using Forum Access for the first time and this is the first feature I went looking for. I seem to remember something similar in Taxonomy Access Control, but was trying to avoid the complication of that module just for some simple forum access control.

In the meantime I think I'll put a block at the bottom of the top level forum page for non-privileged users only, mentioning the forum they're not seeing.

#11

einkahumor.com - August 8, 2009 - 14:35

+1

I've done sites where I used (not so pretty) workarounds for this. This feature would be great.

#12

salvis - August 9, 2009 - 15:50

Ok, you've convinced me that there is interest... :-)

Let's talk about how it should work then:

This could be achieved by simply allowing those users to see the containers/forums (titles and description) as well as maybe how many posts there are and when the last entry was posted. As soon as they try to enter the forum in question, they will be told that they do not have the right permission and are given a hint on what they need to do to get those permissions.

Wouldn't we need some visual differentiation between available and unavailable forums? Making the user click on each one to find out whether they can enter or not is not so great IMO. How?

What should we do when the user cannot enter? Let the admin specify a nid where the user should be redirected? The same nid for all unavailable forums? One nid per forum? One nid per role that has only View but not Read access?

@Michelle: Can you give me a hint on how to remove the "by !author" part, without disturbing AF?

#13

Michelle - August 9, 2009 - 18:10

Can you give me a hint on how to remove the "by !author" part, without disturbing AF?

Er... You lost me. I thought we were talking about denying access to nodes? What "by !author" are you talking about?

Michelle

#14

salvis - August 9, 2009 - 20:25

We're talking about renaming the current View permission to Read and introducing a new View permission which would only affect the forums list: Forums that can be viewed but not read would show up in the list, but the user wouldn't be able to enter them.

The list entry would have to display Forum name, description, topics, posts, and date of last post, but the author of the last post would need to be removed.

#15

Michelle - August 9, 2009 - 21:14

I'm not very clear on why you need to remove the author of the latest post but, hmm... The only way you could do that would be to set forum access to a higher weight than AF and then empty out the variables in the preprocess.

Michelle

#16

salvis - August 9, 2009 - 21:56

The names of the posters in a forum are part of the forum content, and they must not be exposed, if the forum content should be protected.

As someone recently wrote in the issues queue of another module:

The bug is that the overview listings for each Content Type, such as ".../blog" and ".../event/1" are themselves exposed. In fact, Google has picked them up, so the world can see sensitive things like the names of some users.

We must avoid that!

FA already has a weight of 2 — I keep forgetting which way the module weights are working...

#17

Michelle - August 10, 2009 - 01:53

Ah, ok. I don't have any experience with private forums so I didn't realize. AF has a weight of 15, so you'd need to be higher than that. Then you'd need something like:

<?php
forum_access_preprocess_forum_submitted
($variables) {
  if (
$this_forum_is_private) {
   
$variables['author'] = 'Private';
  }
}
?>

Michelle

#18

stephthegeek - August 10, 2009 - 03:40

A few thoughts:
- adding a CSS class to the row of any private forum would allow for adding an icon/shading/border or target any fields within
- in the case of advanced forum, where the listing is a view, exposing "is private" to views would also be helpful for adding some kind of flag, or sorting
- an option in the module to add a text prefix/suffix to private forums
- an option in the module to mask the name of the forum, or change the description to different text for a non-privileged user

#19

Michelle - August 10, 2009 - 03:46

Only the topic lists are views in AF. The main forum listing isn't because it's not really well suited to views at this point.

Michelle

#20

salvis - August 10, 2009 - 07:12

Thanks Michelle and stephthegeek. Yes, we're only talking about the forum page here.

#21

stephthegeek - August 10, 2009 - 07:36

Ah thanks, my bad.. too much stream-of-consciousness :)

#22

Michelle - August 10, 2009 - 12:59

If you're wanting a lot of changes to that template and also want it to work with AF, a simple API of, for example, forum_access_is_private_forum($tid) would be good. Then AF can check if FA is installed and check that function and add what's needed.

Patches to AF 2.x would speed things along as well since I've already got my hands full with stuff I'm trying to get done by September and I don't actually have any use for this myself.

Michelle

 
 

Drupal is a registered trademark of Dries Buytaert.