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): |
