[Erp5-report] r18447 - /erp5/trunk/products/CMFCategory/Category.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Dec 20 11:44:53 CET 2007
Author: nicolas
Date: Thu Dec 20 11:44:49 2007
New Revision: 18447
URL: http://svn.erp5.org?rev=18447&view=rev
Log:
Add new displaying Method indented_title_and_id
Modified:
erp5/trunk/products/CMFCategory/Category.py
Modified: erp5/trunk/products/CMFCategory/Category.py
URL: http://svn.erp5.org/erp5/trunk/products/CMFCategory/Category.py?rev=18447&r1=18446&r2=18447&view=diff
==============================================================================
--- erp5/trunk/products/CMFCategory/Category.py (original)
+++ erp5/trunk/products/CMFCategory/Category.py Thu Dec 20 11:44:49 2007
@@ -212,6 +212,30 @@
return ''.join(logical_title_list)
security.declareProtected(Permissions.AccessContentsInformation,
+ 'getIndentedTitleAndId')
+ def getIndentedTitleAndId(self, item_method='getTitleAndId'):
+ """
+ Returns title or id, indented from base_category.
+ """
+ path_len = 0
+ base = self.getBaseCategory()
+ current = self
+ while not current is base :
+ path_len += 1
+ current = aq_parent(current)
+
+ # it s better for the user to display something than only ''...
+ logical_title_list = []
+
+ if path_len >= 2:
+ logical_title_list.append(' ' * 4 * (path_len - 1))
+ logical_title = getattr(self, item_method)()
+ if logical_title in [None, '']:
+ logical_title = self.getId()
+ logical_title_list.append(logical_title)
+ return ''.join(logical_title_list)
+
+ security.declareProtected(Permissions.AccessContentsInformation,
'getTranslatedIndentedTitle')
def getTranslatedIndentedTitle(self):
"""
@@ -429,6 +453,17 @@
"""
return self.getCategoryChildItemList(recursive=recursive,
display_id='indented_title', base=base, **kw)
+
+ security.declareProtected(Permissions.AccessContentsInformation,
+ 'getCategoryChildIndentedTitleAndIdItemList')
+ def getCategoryChildIndentedTitleAndIdItemList(self,
+ recursive=1, base=0, **kw):
+ """
+ Returns a list of tuples by parsing recursively all categories in a
+ given list of base categories. Uses getIndentedTitle as default method
+ """
+ return self.getCategoryChildItemList(recursive=recursive,
+ display_id='indented_title_and_id', base=base, **kw)
security.declareProtected(Permissions.AccessContentsInformation,
'getCategoryChildTranslatedIndentedTitleItemList')
@@ -832,4 +867,3 @@
InitializeClass( Category )
InitializeClass( BaseCategory )
-
More information about the Erp5-report
mailing list