[development] Proposed user_access / $user->roles hook

Gerhard Killesreiter gerhard at killesreiter.de
Thu Mar 29 07:03:08 UTC 2007


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ron Parker schrieb:
> I'm re-posting this because the last time I got no response.  I'm like
> THISCLOSE to making this work if I can just figure out this last little
> bit.  If anyone has any notion, please share.  It might just be the
> little bit I need to get over the hump.  Thanks.
> 
> -------- Original Message --------
> 
> I am proposing a new project: OG User Roles. I have written to this list
> before and what I discovered was that I really needed to formulate a
> proposal for some sort of user_access hook that would include
> permissions granted from other modules to the final list of permissions
> for a user during a particular process.
> 
> That, essentially, is the modification to user_access that I have
> created so that my module would work.  Briefly, my OG User Roles module
> is designed to assign role(s) to a user restricted to the OG group he is
> in.  Details on it are here: http://drupal.org/node/87679.

IMO you are trying to use the role system for something it wasn't
designed for: Dynamically asigned roles. Drupal roles are always static.

> What I have found is that my modified user_access (and therefore my
> proposed hook) works for node listing/view/updating/deleting, but NOT
> creating.  I am able to create nodes with  the modified user_access only
> if I call the node_add() function directly.  Not a real good solution.
> 
> So, I'm back here to ask:
> 
> What else, besides user_access, does the default node/add mechanism call
> for permissions checks?

Nothing. You probably need to rebuild the user's menu to get your
changed permisions to "take".

Since rebuilding the menu is a costly operation (in Drupal5) I am not
too excited about dynamically assigned roles.

Cheers,
	Gerhard
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFGC2Ssfg6TFvELooQRAvbFAJsFypcHqfFhzozmsz1li+wOlCYZgwCcDVfe
nT76eu2rwrSv4SGMYPqAu7s=
=piOg
-----END PGP SIGNATURE-----


More information about the development mailing list