[Erp5-report] r7120 - /erp5/trunk/products/ERP5Type/Document/Folder.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Tue May 9 11:36:44 CEST 2006
Author: jp
Date: Tue May 9 11:36:34 2006
New Revision: 7120
URL: http://svn.erp5.org?rev=7120&view=rev
Log:
Added support for filtering in contentValues
Modified:
erp5/trunk/products/ERP5Type/Document/Folder.py
Modified: erp5/trunk/products/ERP5Type/Document/Folder.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Document/Folder.py?rev=7120&r1=7119&r2=7120&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Document/Folder.py (original)
+++ erp5/trunk/products/ERP5Type/Document/Folder.py Tue May 9 11:36:34 2006
@@ -737,6 +737,24 @@
object_list = sortValueList(object_list, sort_on, sort_order, **kw)
return object_list
+ security.declareProtected( Permissions.AccessContentsInformation, 'contentValues' )
+ def contentValues(self, spec=None, meta_type=None, portal_type=None, sort_on=None, sort_order=None, **kw):
+ """
+ Returns a list containing object contained in this folder.
+ Filter objects with appropriate permissions (as in contentValues
+ """
+ #LOG('contentValues', 0, 'spec = %r, kw = %r' % (spec, kw))
+ if meta_type is not None:
+ spec = meta_type
+ if portal_type is not None: kw['portal_type'] = portal_type
+ object_list = CMFBTreeFolder.contentValues(self, spec=spec, filter = kw)
+ if portal_type is not None:
+ if type(portal_type) == type(''):
+ portal_type = (portal_type,)
+ object_list = filter(lambda x: x.getPortalType() in portal_type, object_list)
+ object_list = sortValueList(object_list, sort_on, sort_order, **kw)
+ return object_list
+
# Override security declaration of CMFCore/PortalFolder (used by CMFBTreeFolder)
security.declareProtected(Permissions.ModifyPortalContent,'setDescription')
security.declareProtected( Permissions.ModifyPortalContent, 'setTitle' )
More information about the Erp5-report
mailing list