Commit ab3c4d27 authored by Tres Seaver's avatar Tres Seaver

Backport LP #245649 fix.

parent 6a96c204
......@@ -8,7 +8,10 @@ Zope Changes
Bugs fixed
- fixed outdated transaction.commit(1) call in
- Launchpad #245649: the Products package is now a proper
"namespace package" under the rules specified by setuptools.
- Fixed outdated transaction.commit(1) call in
ZODBMountPoint.SimpleTrailblazer
- Launchpad #239636: Ensure that HEAD requests lock an empty body
......
......@@ -129,8 +129,9 @@ def registerPermissions(permissions, defaultDefault=('Manager',)):
else:
perm, methods, default = setting
_registeredPermissions[perm]=1
Products_permissions = getattr(Products, '__ac_permissions__', ())
Products.__ac_permissions__=(
Products.__ac_permissions__+((perm,(),default),))
Products_permissions + ((perm, (), default),))
mangled=pname(perm) # get mangled permission name
if not hasattr(Globals.ApplicationDefaultPermissions, mangled):
setattr(Globals.ApplicationDefaultPermissions,
......
......@@ -250,7 +250,8 @@ class ObjectManager(
return meta_types
def _subobject_permissions(self):
return (Products.__ac_permissions__+
Products_permissions = getattr(Products, '__ac_permissions__', ())
return (Products_permissions +
self.aq_acquire('_getProductRegistryData')('ac_permissions')
)
......
......@@ -10,8 +10,6 @@
# FOR A PARTICULAR PURPOSE
#
##############################################################################
__ac_permissions__=()
# See http://peak.telecommunity.com/DevCenter/setuptools#namespace-packages
try:
__import__('pkg_resources').declare_namespace(__name__)
......
......@@ -189,9 +189,10 @@ class ZClassPermissionsSheet(OFS.PropertySheets.PropertySheet,
manage=Globals.DTMLFile('dtml/classPermissions', globals())
def possible_permissions(self):
Products_permissions = getattr(Products, '__ac_permissions__', ())
r=map(
lambda p: p[0],
Products.__ac_permissions__+
Products_permissions +
self.aq_acquire('_getProductRegistryData')('ac_permissions')
)
r.sort()
......@@ -199,9 +200,10 @@ class ZClassPermissionsSheet(OFS.PropertySheets.PropertySheet,
def manage_edit(self, selected=[], REQUEST=None):
"Remove some permissions"
Products_permissions = getattr(Products, '__ac_permissions__', ())
r=[]
for p in (
Products.__ac_permissions__+
Products_permissions +
self.aq_acquire('_getProductRegistryData')('ac_permissions')):
if p[0] in selected:
r.append(p)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment