--- documentViewer/MpdlXmlTextServer.py 2010/10/08 12:18:14 1.63 +++ documentViewer/MpdlXmlTextServer.py 2010/10/18 12:02:15 1.180 @@ -42,8 +42,6 @@ class MpdlXmlTextServer(SimpleItem): """get search list""" docpath = docinfo['textURLPath'] url = docinfo['url'] - logging.debug("documentViewer (gettoc) docpath: %s"%(docpath)) - logging.debug("documentViewer (gettoc) url: %s"%(url)) pagesize = pageinfo['queryPageSize'] pn = pageinfo['searchPN'] sn = pageinfo['sn'] @@ -140,20 +138,71 @@ class MpdlXmlTextServer(SimpleItem): docinfo['numPages']=int(getTextFromNode(result[0])) return docinfo - def getGisPlases(self, docinfo): + def getGisPlaces(self, docinfo=None, pageinfo=None): """ Show all Gis Places of whole Page""" xpath='//place' - text=self.getServerData("xpath.xql", "document=%s&xpath=%s"%(docinfo['textURLPath'], xpath)) - pagedom = Parse(text) - result =pagedom.xpath("//result/resultPage/place") - docinfo['place']=getTextFromNode(result[0]) - return docinfo + docpath = docinfo['textURLPath'] + url = docinfo['url'] + selfurl = self.absolute_url() + pn = pageinfo['current'] + hrefList=[] + myList= "" + text=self.getServerData("xpath.xql", "document=%s&xpath=%s&pn=%s"%(docinfo['textURLPath'],xpath,pn)) + dom = Parse(text) + result = dom.xpath("//result/resultPage/place") + for l in result: + hrefNode= l.getAttributeNodeNS(None, u"id") + href= hrefNode.nodeValue + hrefList.append(href) + myList = ",".join(hrefList) + logging.debug("getGisPlaces :%s"%(myList)) + return myList + def getAllGisPlaces (self, docinfo=None, pageinfo=None): + """Show all Gis Places of whole Book """ + xpath ='//echo:place' + docpath =docinfo['textURLPath'] + url = docinfo['url'] + selfurl =self.absolute_url() + pn =pageinfo['current'] + hrefList=[] + myList="" + 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 + hrefList.append(href) + myList = ",".join(hrefList) + logging.debug("getALLGisPlaces :%s"%(myList)) + return myList + + def getOrigPages (self, docinfo=None, pageinfo=None): + """Show original page """ + docpath = docinfo['textURLPath'] + url = docinfo['url'] + selfurl = self.absolute_url() + pn =pageinfo['current'] + + viewMode= pageinfo['viewMode'] + text = self.getServerData("page-fragment.xql","document=%s&mode=%s&pn=%s"%(docinfo['textURLPath'], 'text', pn)) + #text = self.getServerData("page-fragment.xql","document=%s"%(docinfo['textURLPath'])) + logging.debug("TEXTIXAXA:%s"%(text)) + dom =Parse(text) + pagedivs = dom.xpath("//div[@class='pageNumberOrig']") + if len(pagedivs)>0: + originalPage = getTextFromNode(pagedivs[0]) + #return docinfo['originalPage'] + return originalPage + #return docinfo + def getTextPage(self, mode="text", pn=1, docinfo=None, pageinfo=None, highlightQuery=None,sn=None, viewMode=None, tocMode=None, tocPN=None, characterNormalization=""): """returns single page from fulltext""" docpath = docinfo['textURLPath'] path = docinfo['textURLPath'] url = docinfo['url'] + name = docinfo['name'] viewMode= pageinfo['viewMode'] tocMode = pageinfo['tocMode'] characterNormalization=pageinfo['characterNormalization'] @@ -203,9 +252,7 @@ class MpdlXmlTextServer(SimpleItem): if hrefNode: href=hrefNode.nodeValue if href.startswith('http://chinagis.mpiwg-berlin.mpg.de'): - hrefNode.nodeValue =href.replace('chinagis_REST/REST/db/chgis/mpdl','chinagis/REST/db/mpdl/url=%s'%url) - - #hrefNode.nodeValue=href.replace('chgis','') + hrefNode.nodeValue =href.replace('chinagis_REST/REST/db/chgis/mpdl','chinagis/REST/db/mpdl/%s'%name) l.setAttributeNS(None, 'target', '_blank') return serializeNode(pagenode)