From: Giancarlo P. <gia...@ya...> - 2009-04-30 22:37:07
|
Giancarlo Pinerolo wrote: > I seriously think we have to move the > permission logic out of the scripts.... > ... > Already we have, in every script: > 1) check for tiki_p_admin or tiki_p_admin_xxx, and give priority for it > 2) check local object perm, and give priority for it, except for case 1) > 3) check for category perm, and give priority except for case 1) and 2) > 4) check for group perm > ... > Except for 1), normally for cases 2) 3) 4) a programmer is not > interested in knowing where the permission is coming from, if from > group, object or category. He just wants to know if he has it. > But the returned permissions array (for that user for that object) could > contain a third field that states where that perm for that object comes > from: group,object,category,admin I found now a function that seems to do almost all of this, and return either an array, or globalize the $tiki_p_xxx variables: tikilib->get_perm_object($objectId, $objectType, $info='', $global=true) It seems that, by calling this function once in a script, one will have all the $tiki_p_xxx variables, for himself on that object, globalized. No matter if they come from his group, the category, or the objectperms itself. If I am right, this should be the preferred method to check for perms anywhere... Giancarlo pingus |