head 1.3; access; symbols; locks; strict; comment @# @; 1.3 date 2007.01.16.04.11.58; author TWikiContributor; state Exp; branches; next 1.2; 1.2 date 2006.10.25.00.21.56; author TWikiContributor; state Exp; branches; next 1.1; 1.1 date 2006.02.01.12.01.24; author TWikiContributor; state Exp; branches; next ; desc @new-topic @ 1.3 log @buildrelease @ text @---+ Package =TWiki::Access= A singleton object of this class manages the access control database. %TOC% ---++ ClassMethod *new* () Construct a new singleton object to manage the permissions database. ---++ ObjectMethod *permissionsSet* ($web) -> $boolean Are there any security restrictions for this Web (ignoring settings on individual pages). ---++ ObjectMethod *getReason* () -> $string Return a string describing the reason why the last access control failure occurred. ---++ ObjectMethod *checkAccessPermission* ($action,$user,$text,$meta,$topic,$web) -> $boolean Check if user is allowed to access topic * =$action= - 'VIEW', 'CHANGE', 'CREATE', etc. * =$user= - User object * =$text= - If undef or '': Read '$theWebName.$theTopicName' to check permissions * =$meta= - If undef, but =$text= is defined, then metadata will be parsed from =$text=. If defined, then metadata embedded in =$text= will be ignored. Always ignored if =$text= is undefined. Settings in =$meta= override * Set settings in plain text. * =$topic= - Topic name to check, e.g. 'SomeTopic' *undef to check web perms only) * =$web= - Web, e.g. 'Know' If the check fails, the reason can be recoveered using getReason. @ 1.2 log @buildrelease @ text @d30 1 @ 1.1 log @buildrelease @ text @d29 1 a29 1 ---++ ObjectMethod *checkAccessPermission* ($action,$user,$text,$topic,$web) -> $boolean d34 1 @