From 87e74846fd49a4cc1242b45165ec8322fa92e224 Mon Sep 17 00:00:00 2001
From: Sebastien Robin <seb@nexedi.com>
Date: Thu, 29 Apr 2004 09:05:42 +0000
Subject: [PATCH] check in a better way if the selection has changed

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@766 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5/skins/erp5_core/base_view_dialog.py | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/product/ERP5/skins/erp5_core/base_view_dialog.py b/product/ERP5/skins/erp5_core/base_view_dialog.py
index 0a2a838b2f..c7db2b9c0f 100755
--- a/product/ERP5/skins/erp5_core/base_view_dialog.py
+++ b/product/ERP5/skins/erp5_core/base_view_dialog.py
@@ -1,4 +1,4 @@
-##parameters=form_id,cancel_url,dialog_method,selection_name,dialog_id,md5_object_uid_list=None
+##parameters=form_id,cancel_url,dialog_method,selection_name,dialog_id,previous_md5_object_uid_list=None
 
 # Updates attributes of an Zope document
 # which is in a class inheriting from ERP5 Base
@@ -35,12 +35,13 @@ try:
   kw['dialog_id'] = dialog_id
   kw['selection_name'] = selection_name
   # Check if the selection did not changed
-  if md5_object_uid_list is not None:
+  if previous_md5_object_uid_list is not None:
     selection_list = context.portal_selections.callSelectionFor(selection_name, context=context)
-    object_uid_list = map(lambda x:x.getObject().getUid(),selection_list)
-    error = context.portal_selections.selectionHasChanged(md5_object_uid_list,object_uid_list)
-    if error:
-      error_message = 'Sorry+your+selection+has+changed'
+    if selection_list is not None:
+      object_uid_list = map(lambda x:x.getObject().getUid(),selection_list)
+      error = context.portal_selections.selectionHasChanged(previous_md5_object_uid_list,object_uid_list)
+      if error:
+        error_message = 'Sorry+your+selection+has+changed'
   url_params_string = make_query(**kw)
 except FormValidationError, validation_errors:
   # Pack errors into the request
-- 
2.30.9