[Erp5-report] r11356 - /erp5/trunk/products/ERP5Type/ObjectMessage.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Fri Nov 17 16:02:01 CET 2006
Author: romain
Date: Fri Nov 17 16:01:56 2006
New Revision: 11356
URL: http://svn.erp5.org?rev=11356&view=rev
Log:
Wrap divergent object in the object message (in order to make them more listbox friendly).
Modified:
erp5/trunk/products/ERP5Type/ObjectMessage.py
Modified: erp5/trunk/products/ERP5Type/ObjectMessage.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/ObjectMessage.py?rev=11356&r1=11355&r2=11356&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/ObjectMessage.py (original)
+++ erp5/trunk/products/ERP5Type/ObjectMessage.py Fri Nov 17 16:01:56 2006
@@ -31,7 +31,7 @@
class ObjectMessage:
"""
- Object Message is used for notifications to user.
+ Object Message is used for notifications to user.
"""
def __init__(self, object_relative_url='', message='', mapping={}, **kw):
@@ -46,13 +46,14 @@
Return the message translated
"""
from Products.ERP5Type.Message import Message
- return Message(domain='erp5_ui', message=self.message, mapping=self.mapping)
+ return Message(domain='erp5_ui', message=self.message,
+ mapping=self.mapping)
getMessage = getTranslatedMessage
def edit(self, **kw):
"""
- set all parameters
+ Set all parameters
"""
self.__dict__.update(kw)
@@ -62,6 +63,19 @@
"""
return getattr(self, value, None)
+ def __getattr__(self, name):
+ """
+ Wrap the message with the object
+ """
+ if name.startswith('__') :
+ raise AttributeError, name
+ else:
+ obj = self.getObject()
+ if obj is not None:
+ return getattr(obj, name)
+ else:
+ raise AttributeError, name
+
def getObject(self):
"""
Get the Object
@@ -70,7 +84,7 @@
request = get_request()['PARENTS']
if request is not None:
for item in request:
- if item.meta_type == 'ERP5 Site':
+ if item.meta_type == 'ERP5 Site':
return item.restrictedTraverse(self.object_relative_url)
return None
More information about the Erp5-report
mailing list