comparison MpdlXmlTextServer.py @ 428:672f8857ece8

bibliograpfical info
author abukhman
date Mon, 14 Feb 2011 15:41:12 +0100
parents 70db19d7b3b1
children 630a4581992a
comparison
equal deleted inserted replaced
427:70db19d7b3b1 428:672f8857ece8
83 href = hrefNode.nodeValue 83 href = hrefNode.nodeValue
84 if href.startswith('page-fragment.xql'): 84 if href.startswith('page-fragment.xql'):
85 selfurl = self.absolute_url() 85 selfurl = self.absolute_url()
86 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s&optionToggle=%s&characterNormalization=%s'%(viewMode,queryType,urllib.quote(query),pagesize,pn,tocMode,pn,tocPN,optionToggle,characterNormalization)) 86 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s&optionToggle=%s&characterNormalization=%s'%(viewMode,queryType,urllib.quote(query),pagesize,pn,tocMode,pn,tocPN,optionToggle,characterNormalization))
87 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl) 87 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl)
88 logging.debug("PUREXML :%s"%(serializeNode(pagenode)))
88 return serializeNode(pagenode) 89 return serializeNode(pagenode)
89 if (queryType=="fulltextMorph"): 90 if (queryType=="fulltextMorph"):
90 pagedivs = pagedom.xpath("//div[@class='queryResult']") 91 pagedivs = pagedom.xpath("//div[@class='queryResult']")
91 if len(pagedivs)>0: 92 if len(pagedivs)>0:
92 pagenode=pagedivs[0] 93 pagenode=pagedivs[0]
173 myList = ",".join(hrefList) 174 myList = ",".join(hrefList)
174 logging.debug("getALLGisPlaces :%s"%(myList)) 175 logging.debug("getALLGisPlaces :%s"%(myList))
175 return myList 176 return myList
176 177
177 178
178 def getTextPage(self, docinfo=None, pageinfo=None): 179 def getTextPage(self, mode="text", pn=1, docinfo=None, pageinfo=None):
179 """returns single page from fulltext""" 180 """returns single page from fulltext"""
180 docpath = docinfo['textURLPath'] 181 docpath = docinfo['textURLPath']
181 path = docinfo['textURLPath'] 182 path = docinfo['textURLPath']
182 url = docinfo.get('url',None) 183 url = docinfo.get('url',None)
183 name = docinfo.get('name',None) 184 name = docinfo.get('name',None)
184 pn =pageinfo['current'] 185 pn =pageinfo['current']
185 viewMode= pageinfo['viewMode'] 186 viewMode= pageinfo['viewMode']
186 sn = pageinfo['sn'] 187 sn = pageinfo['sn']
187 highlightQuery = pageinfo['highlightQuery'] 188 highlightQuery = pageinfo['highlightQuery']
188 mode = pageinfo ['viewMode'] 189 #mode = pageinfo ['viewMode']
189 tocMode = pageinfo['tocMode'] 190 tocMode = pageinfo['tocMode']
190 characterNormalization=pageinfo['characterNormalization'] 191 characterNormalization=pageinfo['characterNormalization']
191 tocPN = pageinfo['tocPN'] 192 tocPN = pageinfo['tocPN']
192 selfurl = self.absolute_url() 193 selfurl = self.absolute_url()
193 if mode == "text_dict": 194 if mode == "text_dict":
360 l.setAttributeNS(None, 'onClick', 'popupWin.focus();') 361 l.setAttributeNS(None, 'onClick', 'popupWin.focus();')
361 if href.startswith('#note-'): 362 if href.startswith('#note-'):
362 hrefNode.nodeValue = href.replace('#note-',"?url=%s&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s#note-"%(url,viewMode,tocMode,tocPN,pn)) 363 hrefNode.nodeValue = href.replace('#note-',"?url=%s&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s#note-"%(url,viewMode,tocMode,tocPN,pn))
363 return serializeNode(pagenode) 364 return serializeNode(pagenode)
364 return "no text here" 365 return "no text here"
365 366
367 def getText(self, mode="text", pn=1, docinfo=None, pageinfo=None):
368 data = self.getTextPage(mode="text", pn=1 ,docinfo=docinfo, pageinfo=pageinfo)
369 logging.debug("TEXT ALL data: %s"%(data))
370 return data
371
372 def getXML(self, mode="xml", pn=1, docinfo=None, pageinfo=None):
373 data = self.getTextPage(mode="xml", pn=1 ,docinfo=docinfo, pageinfo=pageinfo)
374 logging.debug("TEXT ALL data: %s"%(data))
375 return data
376
377 def getDictionary(self, mode="text_dict", pn=1, docinfo=None, pageinfo=None):
378 data = self.getTextPage(mode="text_dict", pn=1 ,docinfo=docinfo, pageinfo=pageinfo)
379 logging.debug("TEXT ALL data: %s"%(data))
380 return data
381
366 def getTranslate(self, query=None, language=None): 382 def getTranslate(self, query=None, language=None):
367 """translate into another languages""" 383 """translate into another languages"""
368 data = self.getServerData("lt/lex.xql","document=&language="+str(language)+"&query="+urllib.quote(query)) 384 data = self.getServerData("lt/lex.xql","document=&language="+str(language)+"&query="+urllib.quote(query))
369 #pagexml=self.template.fulltextclient.eval("/mpdl/interface/lt/lex.xql","document=&language="+str(language)+"&query="+url_quote(str(query))) 385 #pagexml=self.template.fulltextclient.eval("/mpdl/interface/lt/lex.xql","document=&language="+str(language)+"&query="+url_quote(str(query)))
370 return data 386 return data
453 469
454 data = self.getServerData("doc-query.xql","document=%s&queryType=%s&queryResultPageSize=%s&queryResultPN=%s&characterNormalization=regPlusNorm&optionToggle=1"%(docpath,queryType, pagesize, pn)) 470 data = self.getServerData("doc-query.xql","document=%s&queryType=%s&queryResultPageSize=%s&queryResultPN=%s&characterNormalization=regPlusNorm&optionToggle=1"%(docpath,queryType, pagesize, pn))
455 page = data.replace('page-fragment.xql?document=%s'%str(path),'%s?url=%s&viewMode=%s&tocMode=%s&tocPN=%s&optionToggle=1'%(selfurl,url, viewMode, tocMode, tocPN)) 471 page = data.replace('page-fragment.xql?document=%s'%str(path),'%s?url=%s&viewMode=%s&tocMode=%s&tocPN=%s&optionToggle=1'%(selfurl,url, viewMode, tocMode, tocPN))
456 text = page.replace('mode=image','mode=texttool') 472 text = page.replace('mode=image','mode=texttool')
457 #logging.debug("documentViewer (characterNormalization) characterNormalization: %s"%(characterNormalization)) 473 #logging.debug("documentViewer (characterNormalization) characterNormalization: %s"%(characterNormalization))
458 474 logging.debug("TEXT %s"%(text))
459 return text 475 return text
460 476
461 def manage_changeMpdlXmlTextServer(self,title="",serverUrl="http://mpdl-proto.mpiwg-berlin.mpg.de/mpdl/interface/",timeout=40,RESPONSE=None): 477 def manage_changeMpdlXmlTextServer(self,title="",serverUrl="http://mpdl-proto.mpiwg-berlin.mpg.de/mpdl/interface/",timeout=40,RESPONSE=None):
462 """change settings""" 478 """change settings"""
463 self.title=title 479 self.title=title