Hi,
I've had a look around the site and havent found anything like what I'm looking for,
sorry if it has been covered already.
I want to implement a large multi-user system, where each user will be in a certain 'club'.
Once they've logged in they should only see nodes associated with THEIR club, possibly some general information.
Each "club" will need access to a few different types of nodes.
For example, a club can have its own forum posts, photos, news etc.
Essentially I want to make it so each person will see various types of nodes (grouped into taxonomies) such as news/photos/etc but ONLY those which are for their club.
They will also only be able to create items for their club, and shouldn't even see other club's categories / taxonomy entries.
How would I go about writing a module (or does one exist) that would allow this sort of functionality?
I have written a basic module already so i have some understanding of how the modules interact with the core, but I cant see a clean way to hide/deny access to taxonomy entries based on a custom field in a users' profile, or an entry in another table linking them to a clubid.
thanks,
-Stephen
Comments
taxonomy_access
I suggest you look and give a try to taxonomy_access module.
Thanks, will do, I wasnt
Thanks, will do, I wasnt sure if there was a more 'all in one' solution, the taxonomy_access module looks like it might do the job though, thanks
Don't forget Organic Groups
the module has some great new features and may work for your needs as well.
Does taxonomy_access allow
Does taxonomy_access allow for letting all users see content, but only admin users posting certain content? I'm having trouble with limiting taxonomy to certain users. For general users I want only a certain vocab appearing as a choice for submitting stories, but I want admin users to be able to create stories using a different vocab. (Hope that makes sense.)
taxonomy hide
In addition to taxonmy access there is also a taxonomy hide module that can simply hide categories from certain roles so they don't post to them.
Yes, i think this is what
Yes, i think this is what I'm looking for, I had a look at organic groups but its not exactly what I'm looking for;
I want the 'group' id to be set in the background and stay hidden; the user shouldnt even know there are other groups.
I think taxonomies is the way to go with this, I'll see how well taxonomy_hide works, and if i can change it to work with custom group id instead of the users role,
Thanks guys
Yes it does !
Taxonomy access will restrict users to view node belonging to terms they don't have access.
On another hand, if you restrict roles to only some taxonomy terms then they won't be able to post stories where they didn't have access.
BTW, for my own purpose, I'd prefer using flexinode with taxonomy_access rather than allowing post with story through various vocab.
Why...
If you allow a story to be posted to both vocab, you need not to force users to select a term of a taxonomy (see option : Required - If enabled, every node must have at least one term in this vocabulary.), so that users can post a story rather to a term from vocab A or from vocab B.
Then when you restrict current users to post only to vocab A, they won't be able to classify story to vocab B, but admin will.
The drawback I see with this is that it will allow users to post without a defined term so post will be outside you taxonomy and I think it's a little mess then...
So I'd prefer to set up a flexinode by vocab with required option set up. And I create as much content type as vocab I need.
Then users will be able to post only to a term from vocab A and I will give the admin the right to post either to vocab A (using my flexinode type A) and vocab B (using my flexinode type B).
I hope I'd been clear. I you need more details, feel free to ask.
Also have a look at the last issues I write regarding taxonomy_access :
- http://drupal.org/node/25998 (you need both update and create grant to be able to edit correctly a node with a defined taxonomy)
- http://drupal.org/node/26004 (little bug that display restricted vocab with an empty list of terms)