From 49a6627de32656a2ba92cfdb91b7c7c1fb5ded20 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bartek=20G=C3=B3rny?= <bartek@gorny.edu.pl>
Date: Sat, 3 Feb 2007 13:07:43 +0000
Subject: [PATCH] do not use all kw for searching (because kw are pulled from
 selection and become persistent)

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@12529 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 .../Base_getAdvancedSearchResultList.xml       | 18 ++++++++----------
 bt5/erp5_dms/bt/revision                       |  2 +-
 2 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Base_getAdvancedSearchResultList.xml b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Base_getAdvancedSearchResultList.xml
index a680f044c8..2d83213e40 100644
--- a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Base_getAdvancedSearchResultList.xml
+++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Base_getAdvancedSearchResultList.xml
@@ -89,8 +89,10 @@ TODO: use catalog to get only the user\'s docs - this implementation is slow.\n
 \n
 # SearchableText can be supplied in request or stored in selection\n
 sstr = context.REQUEST.get(\'SearchableText\')\n
+\n
 if not sstr:\n
   sstr = kw.get(\'SearchableText\')\n
+\n
 if not sstr: return []\n
 \n
 args = context.parseSearchString(sstr)\n
@@ -114,13 +116,11 @@ modemap = {\'natural\':0, \'boolean\':\'in_boolean_mode\', \'expanded\':\'with_q
 if mode and modemap.has_key(mode):\n
   args[\'search_mode\'] = modemap[mode]\n
 \n
-kw.update(args)\n
-\n
 # a hack because SQLCatalog wants table.key now \n
 # dunno if it is a bug or a feature\n
-if kw.has_key(\'SearchableText\'):\n
-  kw[\'full_text.SearchableText\'] = kw[\'SearchableText\']\n
-  kw.pop(\'SearchableText\')\n
+if args.has_key(\'SearchableText\'):\n
+  args[\'full_text.SearchableText\'] = args[\'SearchableText\']\n
+  args.pop(\'SearchableText\')\n
 \n
 cf = kw.get(\'creation_from\')\n
 ct = kw.get(\'creation_to\')\n
@@ -137,17 +137,16 @@ if mf:\n
 if mt:\n
   wheres.append(\'modification_date<"\' + cf.strftime(\'%Y-%m-%d\') + \'"\')\n
 if wheres != []:\n
-  kw[\'where_expression\'] = \' AND \'.join(wheres)\n
+  args[\'where_expression\'] = \' AND \'.join(wheres)\n
 \n
 # now we search\n
 # any language?\n
-if kw.get(\'language\') == \'0\': kw.pop(\'language\')\n
+if args.get(\'language\') == \'0\': args.pop(\'language\')\n
 context.log(\'SEARCH:\',args)\n
-res = context.portal_catalog(**kw)\n
+res = context.portal_catalog(**args)\n
 \n
 # user wants only his documents\n
 if args.get(\'mine\'): \n
-  context.log(\'mine\')\n
   from AccessControl import getSecurityManager\n
   sm = getSecurityManager()\n
   u = sm.getUser()\n
@@ -158,7 +157,6 @@ if args.get(\'mine\'): \n
 #...and now we check for only the newest versions\n
 # but we need to preserve order\n
 if args.get(\'newest\'):\n
-  context.log(\'newest\')\n
   idx = {} # for keeping the last version of every reference\n
   # this way we do reduce the number of docs very fast (without calling catalog)\n
   newest = [] # for keeping order as it was\n
diff --git a/bt5/erp5_dms/bt/revision b/bt5/erp5_dms/bt/revision
index 9301519f58..34c3a209c7 100644
--- a/bt5/erp5_dms/bt/revision
+++ b/bt5/erp5_dms/bt/revision
@@ -1 +1 @@
-483
\ No newline at end of file
+487
\ No newline at end of file
-- 
2.30.9