[Erp5-report] r19773 - /erp5/trunk/products/ERP5Type/Base.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Mon Mar 10 11:42:54 CET 2008
Author: alex
Date: Mon Mar 10 11:42:53 2008
New Revision: 19773
URL: http://svn.erp5.org?rev=19773&view=rev
Log:
* _getDefaultAcquiredProperty: null_value is a list, return its first element
instead of returning the list.
* getCompactTitle: look for a "getCompactTitle" type based method, and return
its value if found.
* getCompactTranslatedTitle: same as getCompactTitle, but look for a
"getTranslatedCompactTitle" type based method first.
* getIntId: if int conversion does not work in base 10, try in base 16.
Modified:
erp5/trunk/products/ERP5Type/Base.py
Modified: erp5/trunk/products/ERP5Type/Base.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Base.py?rev=19773&r1=19772&r2=19773&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Base.py (original)
+++ erp5/trunk/products/ERP5Type/Base.py Mon Mar 10 11:42:53 2008
@@ -1063,7 +1063,7 @@
accessor_id, depends, storage_id, alt_accessor_id, is_list_type, is_tales_type,
checked_permission)
if acquisition_key in tv:
- return null_value
+ return null_value[0]
tv[acquisition_key] = 1
@@ -2388,19 +2388,24 @@
'getCompactTitle')
def getCompactTitle(self):
"""
- Returns the translated short title or the reference or
- the translated title or the ID by order of priority
-
- NOTE: It could be useful to make this method overridable
- with a type methode.
- """
+ Returns the first non-null value from the following:
+ - "getCompactTitle" type based method
+ - short title
+ - reference
+ - title
+ - id
+ """
+ method = self._getTypeBasedMethod('getCompactTitle')
+ if method is not None:
+ r = method()
+ if r: return r
if self.hasShortTitle():
r = self.getShortTitle()
if r: return r
if self.hasReference():
r = self.getReference()
if r: return r
- r = self.getTitle() # No need to test existence since all Base instances have this method
+ r = self._baseGetTitle() # No need to test existence since all Base instances have this method
if r: return r # Also useful whenever title is calculated
return self.getId()
@@ -2408,12 +2413,24 @@
'getCompactTranslatedTitle')
def getCompactTranslatedTitle(self):
"""
- Returns the translated short title or the reference or
- the translated title or the ID by order of priority
-
- NOTE: It could be useful to make this method overridable
- with a type methode.
- """
+ Returns the first non-null value from the following:
+ - "getTranslatedCompactTitle" type based method
+ - "getCompactTitle" type based method
+ - translated short title
+ - short title
+ - reference
+ - translated title
+ - title
+ - id
+ """
+ method = self._getTypeBasedMethod('getTranslatedCompactTitle')
+ if method is not None:
+ r = method()
+ if r: return r
+ method = self._getTypeBasedMethod('getCompactTitle')
+ if method is not None:
+ r = method()
+ if r: return r
if self.hasShortTitle():
r = self.getTranslatedShortTitle()
if r: return r
@@ -2422,7 +2439,7 @@
if self.hasReference():
r = self.getReference()
if r: return r
- r = self.getTranslatedTitle() # No need to test existence since all Base instances have this method
+ r = self._baseGetTranslatedTitle() # No need to test existence since all Base instances have this method
if r: return r # Also useful whenever title is calculated
return self.getId()
@@ -2430,9 +2447,13 @@
security.declareProtected(Permissions.AccessContentsInformation, 'getIntId')
def getIntId(self):
try:
- return int(self.getId())
+ id_string = self.getId()
+ return int(id_string)
except (ValueError, TypeError):
- return None
+ try:
+ return int(id_string, 16)
+ except (ValueError, TypeError):
+ return None
# Default views - the default security in CMFCore
# is View - however, security was not defined on
More information about the Erp5-report
mailing list