[Erp5-report] r26950 - /erp5/trunk/products/ERP5Form/SelectionTool.py

nobody at svn.erp5.org nobody at svn.erp5.org
Wed May 13 13:56:31 CEST 2009


Author: kazuhiko
Date: Wed May 13 13:56:30 2009
New Revision: 26950

URL: http://svn.erp5.org?rev=26950&view=rev
Log:
remove ignore_layout parameter from cancel_url otherwise we will have two ignore_layout parameters after clicking cancel button (r.26607 is not enough, i.e. that does not work in the case where ignore_layout parameter is the first parameter).

Modified:
    erp5/trunk/products/ERP5Form/SelectionTool.py

Modified: erp5/trunk/products/ERP5Form/SelectionTool.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Form/SelectionTool.py?rev=26950&r1=26949&r2=26950&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Form/SelectionTool.py [utf8] (original)
+++ erp5/trunk/products/ERP5Form/SelectionTool.py [utf8] Wed May 13 13:56:30 2009
@@ -41,6 +41,7 @@
 from ZPublisher.HTTPRequest import FileUpload
 import md5
 import string, re
+from urlparse import urlsplit, urlunsplit
 from zLOG import LOG, INFO
 from Acquisition import aq_base
 from Products.ERP5Type.Message import translateString
@@ -1172,9 +1173,11 @@
         # remove ignore_layout parameter from cancel_url otherwise we
         # will have two ignore_layout parameters after clicking cancel
         # button.
-        kw['cancel_url'] = '&'.join([x for x in \
-                                     REQUEST.get('HTTP_REFERER').split('&') \
+        split_referer = list(urlsplit(REQUEST.get('HTTP_REFERER')))
+        split_referer[3] = '&'.join([x for x in \
+                                     split_referer[3].split('&') \
                                      if not re.match('^ignore_layout[:=]', x)])
+        kw['cancel_url'] = urlunsplit(split_referer)
 
         proxy_listbox_ids = field.get_value('proxy_listbox_ids')
         REQUEST.set('proxy_listbox_ids', proxy_listbox_ids)




More information about the Erp5-report mailing list