From c91edaaff2829e631f0fdc87f1b6f1fc845fba14 Mon Sep 17 00:00:00 2001 From: Sebastien Robin <seb@nexedi.com> Date: Wed, 7 Apr 2004 15:22:37 +0000 Subject: [PATCH] added MultiItemsWidget.render_items patch git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@654 20353a03-c40f-0410-a6d1-a30d3c3de9de --- product/ERP5Form/FormulatorPatch.py | 39 +++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/product/ERP5Form/FormulatorPatch.py b/product/ERP5Form/FormulatorPatch.py index 784b551cbd..994d3329e6 100755 --- a/product/ERP5Form/FormulatorPatch.py +++ b/product/ERP5Form/FormulatorPatch.py @@ -322,6 +322,7 @@ def FloatValidator_validate(self, field, key, REQUEST): return value try: + LOG('FloatValidator.validate, value:', 0, value) if value.find(',') >= 0: value = value.replace(',','.') value = float(value) @@ -330,3 +331,41 @@ def FloatValidator_validate(self, field, key, REQUEST): return value FloatValidator.validate = FloatValidator_validate + +from Products.Formulator.Widget import MultiItemsWidget + +def MultiItemsWidget_render_items(self, field, key, value, REQUEST): + # need to deal with single item selects + if type(value) is not type([]): + value = [value] + + items = field.get_value('items',REQUEST=REQUEST) # The only thing changes, added request + css_class = field.get_value('css_class') + extra_item = field.get_value('extra_item') + rendered_items = [] + for item in items: + try: + item_text, item_value = item + except ValueError: + item_text = item + item_value = item + + if item_value in value: + rendered_item = self.render_selected_item(item_text, + item_value, + key, + css_class, + extra_item) + else: + rendered_item = self.render_item(item_text, + item_value, + key, + css_class, + extra_item) + + rendered_items.append(rendered_item) + + return rendered_items + +MultiItemsWidget.render_items = MultiItemsWidget_render_items + -- 2.30.9