comparison MpdlXmlTextServer.py @ 444:f160791b0074

*** empty log message ***
author abukhman
date Tue, 17 May 2011 15:02:57 +0200
parents ad5c3dedfc18
children 93b9a5dddb8b
comparison
equal deleted inserted replaced
443:ad5c3dedfc18 444:f160791b0074
52 query =pageinfo['query'] 52 query =pageinfo['query']
53 queryType =pageinfo['queryType'] 53 queryType =pageinfo['queryType']
54 viewMode= pageinfo['viewMode'] 54 viewMode= pageinfo['viewMode']
55 tocMode = pageinfo['tocMode'] 55 tocMode = pageinfo['tocMode']
56 characterNormalization = pageinfo['characterNormalization'] 56 characterNormalization = pageinfo['characterNormalization']
57 optionToggle = pageinfo['optionToggle'] 57 #optionToggle = pageinfo['optionToggle']
58 tocPN = pageinfo['tocPN'] 58 tocPN = pageinfo['tocPN']
59 selfurl = self.absolute_url() 59 selfurl = self.absolute_url()
60 data = self.getServerData("doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&sn=%s&viewMode=%s&characterNormalization=%s&optionToggle=%s&highlightQuery=%s"%(docpath, 'text', queryType, urllib.quote(query), pagesize, pn, sn, viewMode,characterNormalization,optionToggle ,urllib.quote(highlightQuery))) 60 data = self.getServerData("doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&sn=%s&viewMode=%s&characterNormalization=%s&highlightQuery=%s"%(docpath, 'text', queryType, urllib.quote(query), pagesize, pn, sn, viewMode,characterNormalization, urllib.quote(highlightQuery)))
61 pagexml = data.replace('?document=%s'%str(docpath),'?url=%s'%url) 61 pagexml = data.replace('?document=%s'%str(docpath),'?url=%s'%url)
62 pagedom = Parse(pagexml) 62 pagedom = Parse(pagexml)
63 63
64 """ 64 """
65 pagedivs = pagedom.xpath("//div[@class='queryResultHits']") 65 pagedivs = pagedom.xpath("//div[@class='queryResultHits']")
83 hrefNode = l.getAttributeNodeNS(None, u"href") 83 hrefNode = l.getAttributeNodeNS(None, u"href")
84 if hrefNode: 84 if hrefNode:
85 href = hrefNode.nodeValue 85 href = hrefNode.nodeValue
86 if href.startswith('page-fragment.xql'): 86 if href.startswith('page-fragment.xql'):
87 selfurl = self.absolute_url() 87 selfurl = self.absolute_url()
88 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)) 88 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s&characterNormalization=%s'%(viewMode,queryType,urllib.quote(query),pagesize,pn,tocMode,pn,tocPN, characterNormalization))
89 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl) 89 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl)
90 #logging.debug("PUREXML :%s"%(serializeNode(pagenode))) 90 #logging.debug("PUREXML :%s"%(serializeNode(pagenode)))
91 return serializeNode(pagenode) 91 return serializeNode(pagenode)
92 if (queryType=="fulltextMorph"): 92 if (queryType=="fulltextMorph"):
93 pagedivs = pagedom.xpath("//div[@class='queryResult']") 93 pagedivs = pagedom.xpath("//div[@class='queryResult']")
98 hrefNode = l.getAttributeNodeNS(None, u"href") 98 hrefNode = l.getAttributeNodeNS(None, u"href")
99 if hrefNode: 99 if hrefNode:
100 href = hrefNode.nodeValue 100 href = hrefNode.nodeValue
101 if href.startswith('page-fragment.xql'): 101 if href.startswith('page-fragment.xql'):
102 selfurl = self.absolute_url() 102 selfurl = self.absolute_url()
103 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)) 103 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s&characterNormalization=%s'%(viewMode,queryType,urllib.quote(query),pagesize,pn,tocMode,pn,tocPN,characterNormalization))
104 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl) 104 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl)
105 if href.startswith('../lt/lemma.xql'): 105 if href.startswith('../lt/lemma.xql'):
106 hrefNode.nodeValue = href.replace('../lt/lemma.xql','%s/template/head_main_query'%(selfurl)) 106 hrefNode.nodeValue = href.replace('../lt/lemma.xql','%s/template/head_main_query'%(selfurl))
107 l.setAttributeNS(None, 'target', '_blank') 107 l.setAttributeNS(None, 'target', '_blank')
108 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;") 108 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;")
116 links=pagenode.xpath("//a") 116 links=pagenode.xpath("//a")
117 for l in links: 117 for l in links:
118 hrefNode = l.getAttributeNodeNS(None, u"href") 118 hrefNode = l.getAttributeNodeNS(None, u"href")
119 if hrefNode: 119 if hrefNode:
120 href = hrefNode.nodeValue 120 href = hrefNode.nodeValue
121 hrefNode.nodeValue=href.replace('mode=text','mode=texttool&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s&optionToggle=%s&characterNormalization=%s'%(viewMode,tocMode,tocPN,pn,optionToggle,characterNormalization)) 121 hrefNode.nodeValue=href.replace('mode=text','mode=texttool&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s&characterNormalization=%s'%(viewMode,tocMode,tocPN,pn,characterNormalization))
122 if href.startswith('../lt/lex.xql'): 122 if href.startswith('../lt/lex.xql'):
123 hrefNode.nodeValue = href.replace('../lt/lex.xql','%s/template/head_main_lex'%selfurl) 123 hrefNode.nodeValue = href.replace('../lt/lex.xql','%s/template/head_main_lex'%selfurl)
124 l.setAttributeNS(None, 'target', '_blank') 124 l.setAttributeNS(None, 'target', '_blank')
125 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;") 125 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;")
126 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();') 126 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();')
183 path = docinfo['textURLPath'] 183 path = docinfo['textURLPath']
184 url = docinfo.get('url',None) 184 url = docinfo.get('url',None)
185 name = docinfo.get('name',None) 185 name = docinfo.get('name',None)
186 pn =pageinfo['current'] 186 pn =pageinfo['current']
187 sn = pageinfo['sn'] 187 sn = pageinfo['sn']
188 optionToggle =pageinfo ['optionToggle'] 188 #optionToggle =pageinfo ['optionToggle']
189 highlightQuery = pageinfo['highlightQuery'] 189 highlightQuery = pageinfo['highlightQuery']
190 #mode = pageinfo ['viewMode'] 190 #mode = pageinfo ['viewMode']
191 tocMode = pageinfo['tocMode'] 191 tocMode = pageinfo['tocMode']
192 characterNormalization=pageinfo['characterNormalization'] 192 characterNormalization=pageinfo['characterNormalization']
193 tocPN = pageinfo['tocPN'] 193 tocPN = pageinfo['tocPN']
195 if mode == "text_dict": 195 if mode == "text_dict":
196 textmode = "textPollux" 196 textmode = "textPollux"
197 else: 197 else:
198 textmode = mode 198 textmode = mode
199 199
200 textParam = "document=%s&mode=%s&pn=%s&characterNormalization=%s&optionToggle=%s"%(docpath,textmode,pn,characterNormalization,optionToggle) 200 textParam = "document=%s&mode=%s&pn=%s&characterNormalization=%s"%(docpath,textmode,pn,characterNormalization)
201 if highlightQuery is not None: 201 if highlightQuery is not None:
202 textParam +="&highlightQuery=%s&sn=%s"%(urllib.quote(highlightQuery),sn) 202 textParam +="&highlightQuery=%s&sn=%s"%(urllib.quote(highlightQuery),sn)
203 203
204 pagexml = self.getServerData("page-fragment.xql",textParam) 204 pagexml = self.getServerData("page-fragment.xql",textParam)
205 dom = Parse(pagexml) 205 dom = Parse(pagexml)
421 def getLex(self, query=None, language=None): 421 def getLex(self, query=None, language=None):
422 #simular words lemma 422 #simular words lemma
423 data = self.getServerData("lt/lex.xql","document=&language="+str(language)+"&query="+urllib.quote(query)) 423 data = self.getServerData("lt/lex.xql","document=&language="+str(language)+"&query="+urllib.quote(query))
424 return data 424 return data
425 425
426 def getQuery (self, docinfo=None, pageinfo=None, query=None, queryType=None, pn=1, optionToggle=None): 426 def getQuery (self, docinfo=None, pageinfo=None, query=None, queryType=None, pn=1):
427 #number of 427 #number of
428 docpath = docinfo['textURLPath'] 428 docpath = docinfo['textURLPath']
429 pagesize = pageinfo['queryPageSize'] 429 pagesize = pageinfo['queryPageSize']
430 pn = pageinfo['searchPN'] 430 pn = pageinfo['searchPN']
431 query =pageinfo['query'] 431 query =pageinfo['query']
484 pn = pageinfo['tocPN'] 484 pn = pageinfo['tocPN']
485 url = docinfo['url'] 485 url = docinfo['url']
486 selfurl = self.absolute_url() 486 selfurl = self.absolute_url()
487 viewMode= pageinfo['viewMode'] 487 viewMode= pageinfo['viewMode']
488 characterNormalization = pageinfo ['characterNormalization'] 488 characterNormalization = pageinfo ['characterNormalization']
489 optionToggle =pageinfo ['optionToggle'] 489 #optionToggle =pageinfo ['optionToggle']
490 tocMode = pageinfo['tocMode'] 490 tocMode = pageinfo['tocMode']
491 tocPN = pageinfo['tocPN'] 491 tocPN = pageinfo['tocPN']
492 492
493 data = self.getServerData("doc-query.xql","document=%s&queryType=%s&queryResultPageSize=%s&queryResultPN=%s&characterNormalization=regPlusNorm&optionToggle=1"%(docpath,queryType, pagesize, pn)) 493 data = self.getServerData("doc-query.xql","document=%s&queryType=%s&queryResultPageSize=%s&queryResultPN=%s&characterNormalization=regPlusNorm"%(docpath,queryType, pagesize, pn))
494 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)) 494 page = data.replace('page-fragment.xql?document=%s'%str(path),'%s?url=%s&viewMode=%s&tocMode=%s&tocPN=%s'%(selfurl,url, viewMode, tocMode, tocPN))
495 text = page.replace('mode=image','mode=texttool') 495 text = page.replace('mode=image','mode=texttool')
496 return text 496 return text
497 497
498 def manage_changeMpdlXmlTextServer(self,title="",serverUrl="http://mpdl-text.mpiwg-berlin.mpg.de/mpdl/interface/",timeout=40,RESPONSE=None): 498 def manage_changeMpdlXmlTextServer(self,title="",serverUrl="http://mpdl-text.mpiwg-berlin.mpg.de/mpdl/interface/",timeout=40,RESPONSE=None):
499 #def manage_changeMpdlXmlTextServer(self,title="",serverUrl="http://mpdl-text.mpiwg-berlin.mpg.de:30030/mpdl/interface/",timeout=40,RESPONSE=None): 499 #def manage_changeMpdlXmlTextServer(self,title="",serverUrl="http://mpdl-text.mpiwg-berlin.mpg.de:30030/mpdl/interface/",timeout=40,RESPONSE=None):