[Erp5-report] r20010 - /experimental/Experimental/patches/ERP5Form_ListBox_line_marking.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Tue Mar 18 22:11:43 CET 2008
Author: bartek
Date: Tue Mar 18 22:11:43 2008
New Revision: 20010
URL: http://svn.erp5.org?rev=20010&view=rev
Log:
a bit crude and copy-and-paste support for editable fields in boxover
Modified:
experimental/Experimental/patches/ERP5Form_ListBox_line_marking.py
Modified: experimental/Experimental/patches/ERP5Form_ListBox_line_marking.py
URL: http://svn.erp5.org/experimental/Experimental/patches/ERP5Form_ListBox_line_marking.py?rev=20010&r1=20009&r2=20010&view=diff
==============================================================================
--- experimental/Experimental/patches/ERP5Form_ListBox_line_marking.py (original)
+++ experimental/Experimental/patches/ERP5Form_ListBox_line_marking.py Tue Mar 18 22:11:43 2008
@@ -249,18 +249,25 @@
# translate column label
label = translation_service.translate('ui', line[1]).encode('utf8')
# get data in a similar way to normal listbox cells
- _marker = []
- prop = ob.getProperty(line[0], _marker)
- if prop is _marker:
- try:
- prop = getattr(ob, line[0])
- except AttributeError:
- prop = ''
- if callable(prop):
- try:
- prop = prop()
- except (AttributeError, KeyError, Unauthorized):
- prop = 'N/A'
+ # XXX should be improved and refactored so as to remove code duplication
+ editable_field = self.getEditableField(line[0])
+ if editable_field is not None:
+ tales = editable_field.tales.get('default', '')
+ if tales:
+ prop = editable_field.__of__(ob).get_value('default', cell=ob)
+ else:
+ _marker = []
+ prop = ob.getProperty(line[0], _marker)
+ if prop is _marker:
+ try:
+ prop = getattr(ob, line[0])
+ except AttributeError:
+ prop = ''
+ if callable(prop):
+ try:
+ prop = prop()
+ except (AttributeError, KeyError, Unauthorized):
+ prop = 'N/A'
if prop is None: prop = ''
return '<b>%s: </b>%s' % (label, prop)
data = {}
More information about the Erp5-report
mailing list