[Erp5-report] r15891 - in /erp5/trunk/products: ERP5/tests/testERP5HR.py ERP5Type/Base.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Aug 29 11:06:14 CEST 2007
Author: jerome
Date: Wed Aug 29 11:06:14 2007
New Revision: 15891
URL: http://svn.erp5.org?rev=15891&view=rev
Log:
Implement a getTranslatedId method to display translation of meaningfull IDs like "default_address" or "default_career".
Modified:
erp5/trunk/products/ERP5/tests/testERP5HR.py
erp5/trunk/products/ERP5Type/Base.py
Modified: erp5/trunk/products/ERP5/tests/testERP5HR.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testERP5HR.py?rev=15891&r1=15890&r2=15891&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testERP5HR.py (original)
+++ erp5/trunk/products/ERP5/tests/testERP5HR.py Wed Aug 29 11:06:14 2007
@@ -869,8 +869,17 @@
# asURL method works on email
pers = self.getPersonModule().newContent(portal_type='Person')
pers.setDefaultEmailText('nobody at example.com')
- email = per.getDefaultEmailValue()
+ email = pers.getDefaultEmailValue()
self.assertEquals('mailto:nobody at example.com', email.asURL())
+
+
+ def test_getTranslatedId(self):
+ pers = self.getPersonModule().newContent(
+ portal_type='Person', id='default_email')
+ self.assertEquals(None, pers.getTranslatedId())
+ pers.setDefaultEmailText('nobody at example.com')
+ email = pers.getDefaultEmailValue()
+ self.assertEquals('Default Email', str(email.getTranslatedId()))
def test_suite():
Modified: erp5/trunk/products/ERP5Type/Base.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Base.py?rev=15891&r1=15890&r2=15891&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Base.py (original)
+++ erp5/trunk/products/ERP5Type/Base.py Wed Aug 29 11:06:14 2007
@@ -66,6 +66,7 @@
from Products.CMFActivity.ActiveObject import ActiveObject
from Products.ERP5Type.Accessor.Accessor import Accessor as Method
from Products.ERP5Type.Accessor.TypeDefinition import asDate
+from Products.ERP5Type.Message import Message
from string import join
import sys, re
@@ -2126,6 +2127,43 @@
return title
return self.getId()
+ security.declarePublic('getIdTranslationDict')
+ def getIdTranslationDict(self):
+ """Returns the mapping which is used to translate IDs.
+ """
+ return {
+ 'Address': dict(default_address='Default Address'),
+ 'Telephone': dict(default_telephone='Default Telephone',
+ mobile_telephone='Mobile Telephone',),
+ 'Fax': dict(default_fax='Default Fax'),
+ 'Email': dict(default_email='Default Email',
+ alternate_email='Alternate Email'),
+ 'Career': dict(default_career='Default Career'),
+ 'Payment Condition': dict(default_payment_condition=
+ 'Default Payment Condition'),
+ 'Image': dict(default_image='Default Image'),
+ 'Purchase Supply Line': dict(purchase_supply_line=
+ 'Default Purchase Supply Line'),
+ 'Sale Supply Line': dict(sale_supply_line=
+ 'Default Sale Supply Line'),
+ }
+
+
+ security.declareProtected(Permissions.AccessContentsInformation,
+ 'getTranslatedId')
+ def getTranslatedId(self):
+ """Returns the translated ID, if the ID of the current document has a
+ special meaning, otherwise returns None.
+ """
+ global_translation_dict = self.getIdTranslationDict()
+ ptype_translation_dict = global_translation_dict.get(
+ self.portal_type, None)
+ if ptype_translation_dict is not None:
+ id_ = self.getId()
+ if id_ in ptype_translation_dict:
+ return Message('erp5_ui', ptype_translation_dict[id_])
+
+
security.declareProtected(Permissions.AccessContentsInformation,
'getCompactTitle')
def getCompactTitle(self):
More information about the Erp5-report
mailing list