# HG changeset patch # User abukhman # Date 1289228646 -3600 # Node ID e6f3fcb2058fec22953a2bfb1ec74cb7e1212722 # Parent ce9fa69f81c33d13f3764250e7b26e243530e30d *** empty log message *** diff -r ce9fa69f81c3 -r e6f3fcb2058f MpdlXmlTextServer.py --- a/MpdlXmlTextServer.py Mon Nov 08 15:59:40 2010 +0100 +++ b/MpdlXmlTextServer.py Mon Nov 08 16:04:06 2010 +0100 @@ -138,10 +138,7 @@ docinfo['numPages']=int(getTextFromNode(result[0])) return docinfo - - #def getQueryResultHits(self, docinfo=None, pageinfo=None): - - + def getGisPlaces(self, docinfo=None, pageinfo=None): """ Show all Gis Places of whole Page""" xpath='//place' @@ -174,6 +171,7 @@ text=self.getServerData("xpath.xql", "document=%s&xpath=%s"%(docinfo['textURLPath'],xpath)) dom =Parse(text) result = dom.xpath("//result/resultPage/place") + for l in result: hrefNode = l.getAttributeNodeNS(None, u"id") href= hrefNode.nodeValue @@ -356,6 +354,63 @@ logging.debug("documentViewer (gettoc) tc: %s"%(tc)) return tc + def getQueryResultHits(self, docinfo=None, pageinfo=None, query=None, queryType=None, pn=1, optionsClose=None): + + """number of hits in Search mode""" + docpath = docinfo['textURLPath'] + pagesize = pageinfo['queryPageSize'] + pn = pageinfo['searchPN'] + query =pageinfo['query'] + queryType =pageinfo['queryType'] + tocSearch = 0 + tocDiv = None + + pagexml = self.getServerData("doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s"%(docpath, 'text', queryType, urllib.quote(query), pagesize, pn)) + #pagexml=self.template.fulltextclient.eval("/mpdl/interface/doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s"%(docpath, 'text', queryType, query, pagesize, pn) ,outputUnicode=False) + pagedom = Parse(pagexml) + numdivs = pagedom.xpath("//div[@class='queryResultHits']") + tocSearch = int(getTextFromNode(numdivs[0])) + return tocSearch + + def getQueryResultHitsText(self, docinfo=None, pageinfo=None): + """number of hits in Text of Contents mode""" + + docpath = docinfo['textURLPath'] + pagesize = pageinfo['queryPageSize'] + pn = pageinfo['searchPN'] + query =pageinfo['query'] + queryType =pageinfo['queryType'] + tocSearch = 0 + tocDiv = None + tocMode = pageinfo['tocMode'] + tocPN = pageinfo['tocPN'] + pagexml=self.getServerData("doc-query.xql", "document=%s&queryType=%s"%(docpath,'toc')) + pagedom = Parse(pagexml) + logging.debug("documentViewer (pagedom) pagedom: %s"%(pagedom)) + numdivs = pagedom.xpath("//div[@class='queryResultHits']") + tocSearch = int(getTextFromNode(numdivs[0])) + return tocSearch + + def getQueryResultHitsFigures(self, docinfo=None, pageinfo=None): + """number of hits in Text of Figures mode""" + + docpath = docinfo['textURLPath'] + pagesize = pageinfo['queryPageSize'] + pn = pageinfo['searchPN'] + query =pageinfo['query'] + queryType =pageinfo['queryType'] + tocSearch = 0 + tocDiv = None + tocMode = pageinfo['tocMode'] + tocPN = pageinfo['tocPN'] + pagexml=self.getServerData("doc-query.xql", "document=%s&queryType=%s"%(docpath,'figures')) + pagedom = Parse(pagexml) + logging.debug("documentViewer (pagedom) pagedom: %s"%(pagedom)) + numdivs = pagedom.xpath("//div[@class='queryResultHits']") + tocSearch = int(getTextFromNode(numdivs[0])) + return tocSearch + + def getToc(self, mode="text", docinfo=None): """loads table of contents and stores in docinfo""" logging.debug("documentViewer (gettoc) mode: %s"%(mode))