[Erp5-report] r43344 arnaud.fontaine - /erp5/trunk/products/ERP5Type/Core/
nobody at svn.erp5.org
nobody at svn.erp5.org
Tue Feb 15 11:34:37 CET 2011
Author: arnaud.fontaine
Date: Tue Feb 15 11:34:37 2011
New Revision: 43344
URL: http://svn.erp5.org?rev=43344&view=rev
Log:
* Fix typos
* Add missing setters
* Fix categories list which contained missing categories
Modified:
erp5/trunk/products/ERP5Type/Core/CategoryProperty.py
erp5/trunk/products/ERP5Type/Core/DynamicCategoryProperty.py
Modified: erp5/trunk/products/ERP5Type/Core/CategoryProperty.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Core/CategoryProperty.py?rev=43344&r1=43343&r2=43344&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Core/CategoryProperty.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/Core/CategoryProperty.py [utf8] Tue Feb 15 11:34:37 2011
@@ -118,6 +118,10 @@ class CategoryProperty(XMLObject):
}
setter_definition_dict = {
# public 'reindexers'
+ 'set%s': Alias.Reindex,
+ 'set%sList': Alias.Reindex,
+ 'setDefault%s': Alias.Reindex,
+ 'set%sSet': Alias.Reindex,
'set%sValue': Alias.Reindex,
'set%sValueList': Alias.Reindex,
'set%sValueSet': Alias.Reindex,
@@ -127,6 +131,14 @@ class CategoryProperty(XMLObject):
'set%sUidSet': Alias.Reindex,
'setDefault%sUid': Alias.Reindex,
# setters
+ '_set%s': Category.Setter,
+ '_categorySet%s': Category.Setter,
+ '_set%sList': Category.ListSetter,
+ '_categorySet%sList': Category.ListSetter,
+ '_setDefault%s': Category.DefaultSetter,
+ '_categorySetDefault%s': Category.DefaultSetter,
+ '_set%sSet': Category.SetSetter,
+ '_categorySet%sSet': Category.SetSetter,
'_set%sValue': Value.Setter,
'_categorySet%sValue': Value.Setter,
'_set%sValueList': Value.ListSetter,
@@ -172,7 +184,7 @@ class CategoryProperty(XMLObject):
StandardProperty.applyPropertyOnAccessorHolder(
accessor_holder=accessor_holder,
- portal=category_tool,
+ portal=category_tool.getPortalObject(),
reference='%s_free_text' % category_id,
elementary_type='text',
multivalued=False,
@@ -188,45 +200,45 @@ class CategoryProperty(XMLObject):
Permissions.ModifyPortalContent)
# Actually create accessors
- uppercase_reference = UpperCase(category_id)
+ uppercase_category_id = UpperCase(category_id)
# three special cases
- accessor = Category.Tester('has' + uppercase_reference, id)
+ accessor = Category.Tester('has' + uppercase_category_id, category_id)
accessor_holder.registerAccessor(accessor, read_permission)
- accessor_name = uppercase_reference[0].lower() + uppercase_reference[1:]
- accessor = Value.ListGetter(accessor_name + 'Values', id)
+ accessor_name = uppercase_category_id[0].lower() + uppercase_category_id[1:]
+ accessor = Value.ListGetter(accessor_name + 'Values', category_id)
accessor_holder.registerAccessor(accessor, read_permission)
- accessor = Value.IdListGetter(accessor_name + 'Ids', id)
+ accessor = Value.IdListGetter(accessor_name + 'Ids', category_id)
accessor_holder.registerAccessor(accessor, read_permission)
# then getters
for id_format, accessor_class in cls.getter_definition_dict.iteritems():
- accessor_name = id_format % uppercase_reference
+ accessor_name = id_format % uppercase_category_id
- public_accessor = accessor_class(accessor_name, id)
+ public_accessor = accessor_class(accessor_name, category_id)
accessor_holder.registerAccessor(public_accessor, read_permission)
# create the private getter on the fly instead of having a definition dict
# that's twice the size for the same info
accessor_name = '_category' + accessor_name[0].upper() + accessor_name[1:]
- private_accessor = accessor_class(accessor_name, id)
+ private_accessor = accessor_class(accessor_name, category_id)
accessor_holder.registerAccessor(private_accessor, read_permission)
# and setters
for id_format, accessor_class in cls.setter_definition_dict.iteritems():
- accessor_name = id_format % uppercase_reference
+ accessor_name = id_format % uppercase_category_id
- accessor = accessor_class(accessor_name, id)
+ accessor = accessor_class(accessor_name, category_id)
accessor_holder.registerAccessor(accessor, write_permission)
+ accessor_holder._categories.append(category_id)
+
security.declareProtected(Permissions.AccessContentsInformation,
'applyOnAccessorHolder')
def applyOnAccessorHolder(self, accessor_holder, expression_context, portal):
reference = self.getReference()
if reference is not None:
- accessor_holder._categories.append(reference)
- category_tool = getattr(portal, 'portal_categories', None)
self.applyPropertyOnAccessorHolder(accessor_holder,
reference,
- category_tool)
+ getattr(portal, 'portal_categories', None))
Modified: erp5/trunk/products/ERP5Type/Core/DynamicCategoryProperty.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Core/DynamicCategoryProperty.py?rev=43344&r1=43343&r2=43344&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Core/DynamicCategoryProperty.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/Core/DynamicCategoryProperty.py [utf8] Tue Feb 15 11:34:37 2011
@@ -86,4 +86,3 @@ class DynamicCategoryProperty(CategoryPr
self.applyPropertyOnAccessorHolder(accessor_holder,
category_id,
category_tool)
- accessor_holder._categories.append(category_id)
More information about the Erp5-report
mailing list