diff --git a/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_editRelation.xml b/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_editRelation.xml index 049f0a9d13f3a9b4bce28e5e9fc4a52649ffcb34..c60b61bfa4e4d282ad342bb7f789ee0ef491b25c 100644 --- a/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_editRelation.xml +++ b/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_editRelation.xml @@ -70,6 +70,10 @@ if listbox_uid is not None:\n uids = selection_tool.getSelectionCheckedUidsFor(selection_name)\n \n old_request = dict(saved_form_data)\n +for k, v in old_request.items():\n + if isinstance(v, str):\n + old_request[k] = v.decode(\'base64\')\n +\n \n field = getattr(context, form_id).get_field(field_id)\n field_key = field.generate_field_key()\n @@ -154,19 +158,21 @@ return edit_method(form_id,\n <string>selected_uids</string> <string>dict</string> <string>old_request</string> + <string>_getiter_</string> + <string>k</string> + <string>v</string> + <string>isinstance</string> + <string>str</string> + <string>_write_</string> <string>getattr</string> <string>field</string> <string>field_key</string> <string>len</string> <string>_getitem_</string> <string>sub_field_key</string> - <string>str</string> - <string>_write_</string> <string>container</string> <string>request</string> <string>request_form</string> - <string>_getiter_</string> - <string>k</string> <string>edit_method</string> <string>True</string> </tuple> diff --git a/product/ERP5/bootstrap/erp5_core/bt/revision b/product/ERP5/bootstrap/erp5_core/bt/revision index 98be9308d1a8d9c913d60ee6f2aa821c727c0a8b..8978c61ab0abff86e0129b07fcc38a214e966f65 100644 --- a/product/ERP5/bootstrap/erp5_core/bt/revision +++ b/product/ERP5/bootstrap/erp5_core/bt/revision @@ -1 +1 @@ -1517 \ No newline at end of file +1518 \ No newline at end of file diff --git a/product/ERP5Form/Tool/SelectionTool.py b/product/ERP5Form/Tool/SelectionTool.py index b9784a27350ca031e9f254e18cb46fefdb710621..29f33df3d3c67b799275a61c48a8d289cc70a4b4 100644 --- a/product/ERP5Form/Tool/SelectionTool.py +++ b/product/ERP5Form/Tool/SelectionTool.py @@ -1207,7 +1207,9 @@ class SelectionTool( BaseTool, UniqueObject, SimpleItem ): saved_form_data = {} for key, value in REQUEST.form.items(): if not isinstance(value, FileUpload): - saved_form_data[key] = value + if isinstance(value, basestring): + value = value.encode('base64') + saved_form_data[key] = value base_category = None kw = {}