[Checkins]
SVN: z3c.securitytool/trunk/src/z3c/securitytool/securitytool.py
Only granted roles now show on page, will add denied soon
Daniel Blackburn
blackburnd at gmail.com
Thu Feb 7 13:51:01 EST 2008
Log message for revision 83645:
Only granted roles now show on page, will add denied soon
Changed:
U z3c.securitytool/trunk/src/z3c/securitytool/securitytool.py
-=-
Modified: z3c.securitytool/trunk/src/z3c/securitytool/securitytool.py
===================================================================
--- z3c.securitytool/trunk/src/z3c/securitytool/securitytool.py 2008-02-07 18:45:44 UTC (rev 83644)
+++ z3c.securitytool/trunk/src/z3c/securitytool/securitytool.py 2008-02-07 18:51:00 UTC (rev 83645)
@@ -160,16 +160,6 @@
ifaces = tuple(providedBy(self.context))
-
- #settingList = [val for val, val in settingsForObject(viewInstance)]
- #
- ##For each item in our list we will update the settings dict
- #for setting in settingList:
- # for key,val in setting.items():
- # if not settings.has_key(key):
- # settings[key] = []
- # settings[key].extend(val)
-
for iface in ifaces:
for view_reg in getViews(iface, IBrowserRequest):
view = self.getView(view_reg, skin)
@@ -191,7 +181,6 @@
if PrinSettings['groups']:
prinPermSettings['groups'].update(PrinSettings['groups'])
-
return prinPermSettings
@@ -200,8 +189,10 @@
def policyPermissions(self, principal, settings):
""" this method recursively populates the principal permissions
dict and is only used by principalPermissions """
+
prinPermSettings = {'permissions': [],
'roles': {},
+ 'deniedRoles': {},
'groups': {}}
principals = zapi.principals()
@@ -236,9 +227,15 @@
_setting = rolePerms['setting'].getName()
mapping = {'permission': permission,
'setting': _setting}
- perms = prinPermSettings['roles'].setdefault(
- role, [])
+ if prinRoles.get('setting','') == Allow:
+ perms = prinPermSettings['roles'].setdefault(
+ role, [])
+ else:
+ perms = prinPermSettings['deniedRoles'].setdefault(
+ role, [])
+
+
if not mapping in perms:
perms.append(mapping)
# Here we loop through the groups and recursively call this method
More information about the Checkins
mailing list