Mercurial > hg > documentViewer
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): |