diff MpdlXmlTextServer.py @ 509:9d05befdd462 elementtree

try to get characterNormalization in search result working.
author casties
date Mon, 27 Feb 2012 21:57:18 +0100
parents d5a47f82e755
children 4fb35343d2e7
line wrap: on
line diff
--- a/MpdlXmlTextServer.py	Mon Feb 27 21:26:52 2012 +0100
+++ b/MpdlXmlTextServer.py	Mon Feb 27 21:57:18 2012 +0100
@@ -270,7 +270,7 @@
         return None
     
 
-    def getSearchResults(self, mode, query=None, docinfo=None):
+    def getSearchResults(self, mode, query=None, pageinfo=None, docinfo=None):
         """loads list of search results and stores XML in docinfo"""
         logging.debug("getSearchResults mode=%s query=%s"%(mode, query))
         if mode == "none":
@@ -281,16 +281,15 @@
             return docinfo
         
         docpath = docinfo['textURLPath']
-        # we need to set a result set size
-        pagesize = 1000
-        pn = 1
+        
         # fetch full results
         params = {'document': docpath,
                   'mode': 'text',
                   'queryType': mode,
                   'query': query,
                   'queryResultPageSize': 1000,
-                  'queryResultPN': 1}
+                  'queryResultPN': 1,
+                  'characterNormalization': pageinfo.get('characterNormalization', 'reg')}
         pagexml = self.getServerData("doc-query.xql",urllib.urlencode(params))
         #pagexml = self.getServerData("doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&s=%s&viewMode=%s&characterNormalization=%s&highlightElementPos=%s&highlightElement=%s&highlightQuery=%s"%(docpath, 'text', queryType, urllib.quote(query), pagesize, pn, s, viewMode,characterNormalization, highlightElementPos, highlightElement, urllib.quote(highlightQuery)))
         dom = ET.fromstring(pagexml)
@@ -321,7 +320,7 @@
         # check for cached TOC
         #TODO: cache only one search
         if not docinfo.has_key('resultXML_%s_%s'%(mode,query)):
-            self.getSearchResults(mode=mode, query=query, docinfo=docinfo)
+            self.getSearchResults(mode=mode, query=query, pageinfo=pageinfo, docinfo=docinfo)
             
         resultxml = docinfo.get('resultXML_%s_%s'%(mode,query), None)
         if not resultxml: