diff --git a/product/ERP5Type/Base.py b/product/ERP5Type/Base.py index 7a1862d08325daf84e5624b1a51d64a55ae7049d..76d3acc9e72fd66e22d14a3cba2483f3ca935403 100755 --- a/product/ERP5Type/Base.py +++ b/product/ERP5Type/Base.py @@ -137,7 +137,7 @@ def initializePortalTypeDynamicProperties(self, klass, ptype, recursive=0): # Because of the order we generate accessors, it is still possible # to overload data access for some accessors ps_list = tuple(ps_list) + getClassPropertyList(klass) - #LOG('ps_list',0, str(ps_list)) + LOG('ps_list',0, str(ps_list)) else: ps_list = getClassPropertyList(klass) for base in ps_list: @@ -159,7 +159,7 @@ def initializePortalTypeDynamicProperties(self, klass, ptype, recursive=0): else: prop_holder.security = ClassSecurityInfo() # Is this OK for security XXX ? from Utils import initializeDefaultProperties - #LOG('initializeDefaultProperties: %s' % ptype, 0, str(prop_holder.__dict__)) + LOG('initializeDefaultProperties: %s' % ptype, 0, str(prop_holder.__dict__)) initializeDefaultProperties([prop_holder], object=self) #LOG('initializeDefaultProperties: %s' % ptype, 0, str(prop_holder.__dict__)) # We should now make sure workflow methods are defined @@ -279,9 +279,11 @@ class Base( CopyContainer, PortalContent, ActiveObject, ERP5PropertyManager ): """ Method overload - properties are now defined on the ptype """ global aq_portal_type ptype = self.portal_type - self._aq_dynamic(None) # Make sure aq_dynamic has been called once + #LOG('_propertyMap',0,ptype) + self._aq_dynamic('id') # Make sure aq_dynamic has been called once if aq_portal_type.has_key(ptype): - return tuple(list(getattr(aq_portal_type[ptype], '_properties', None)) + + #LOG('_propertyMap ptype',0,list(getattr(aq_portal_type[ptype], '_properties', ()))) + return tuple(list(getattr(aq_portal_type[ptype], '_properties', ())) + list(getattr(self, '_local_properties', ()))) return ERP5PropertyManager._propertyMap(self) diff --git a/product/ERP5Type/Document/Folder.py b/product/ERP5Type/Document/Folder.py index d644fc7ea6978bf59f976750f9fa95bcac3b3a11..dd3831ba3262b6e40e5ae14f778037a4006bea62 100755 --- a/product/ERP5Type/Document/Folder.py +++ b/product/ERP5Type/Document/Folder.py @@ -108,6 +108,8 @@ class FolderMixIn(ExtensionClass.Base): my_id = 1 while self.hasContent(str(my_id)): my_id = my_id + 1 + #LOG('_setLastId', 0, str(self)) + #LOG('_setLastId', 0, str(self.aq_base)) self._setLastId(str(my_id)) # Make sure no reindexing happens else: my_id = self.portal_ids.generateNewId(id_group=id_group,default=default,method=method) @@ -247,7 +249,8 @@ be a problem).""" security.declareProtected( Permissions.ModifyPortalContent, '_edit' ) _edit = Base._edit _setPropValue = Base._setPropValue - + _propertyMap = Base._propertyMap # are there any others XXX ? + #security.declareProtected( Permissions.DeletePortalContent, 'manage_delObjects' ) #manage_delObjects = CopyContainer.manage_delObjects