Mercurial > hg > documentViewer
comparison MpdlXmlTextServer.py @ 161:1e1733fbe286
characterNormalization
author | abukhman |
---|---|
date | Tue, 24 Aug 2010 12:17:06 +0200 |
parents | 4f4fe4e56ffe |
children | e6f0553ad176 |
comparison
equal
deleted
inserted
replaced
160:db9bcbbd5868 | 161:1e1733fbe286 |
---|---|
50 highlightQuery = pageinfo['highlightQuery'] | 50 highlightQuery = pageinfo['highlightQuery'] |
51 query =pageinfo['query'] | 51 query =pageinfo['query'] |
52 queryType =pageinfo['queryType'] | 52 queryType =pageinfo['queryType'] |
53 viewMode= pageinfo['viewMode'] | 53 viewMode= pageinfo['viewMode'] |
54 tocMode = pageinfo['tocMode'] | 54 tocMode = pageinfo['tocMode'] |
55 characterNormalization = pageinfo ['characterNormalization'] | 55 #characterNormalization = pageinfo ['characterNormalization'] |
56 tocPN = pageinfo['tocPN'] | 56 tocPN = pageinfo['tocPN'] |
57 selfurl = self.absolute_url() | 57 selfurl = self.absolute_url() |
58 | 58 |
59 data = self.getServerData("doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&sn=%s&viewMode=%s&highlightQuery=%s"%(docpath, 'text', queryType, query, pagesize, pn, sn, viewMode,highlightQuery)) | 59 data = self.getServerData("doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&sn=%s&viewMode=%s&highlightQuery=%s"%(docpath, 'text', queryType, query, pagesize, pn, sn, viewMode,highlightQuery)) |
60 #page=self.template.fulltextclient.eval("/mpdl/interface/doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&sn=%s&viewMode=%s&highlightQuery=%s"%(docpath, 'text', queryType, query, pagesize, pn, sn, viewMode,highlightQuery) ,outputUnicode=False) | 60 #page=self.template.fulltextclient.eval("/mpdl/interface/doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&sn=%s&viewMode=%s&highlightQuery=%s"%(docpath, 'text', queryType, query, pagesize, pn, sn, viewMode,highlightQuery) ,outputUnicode=False) |
70 hrefNode = l.getAttributeNodeNS(None, u"href") | 70 hrefNode = l.getAttributeNodeNS(None, u"href") |
71 if hrefNode: | 71 if hrefNode: |
72 href = hrefNode.nodeValue | 72 href = hrefNode.nodeValue |
73 if href.startswith('page-fragment.xql'): | 73 if href.startswith('page-fragment.xql'): |
74 selfurl = self.absolute_url() | 74 selfurl = self.absolute_url() |
75 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,query,pagesize,pn,tocMode,pn,tocPN,characterNormalization)) | 75 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s'%(viewMode,queryType,query,pagesize,pn,tocMode,pn,tocPN)) |
76 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl) | 76 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl) |
77 return serializeNode(pagenode) | 77 return serializeNode(pagenode) |
78 if (queryType=="fulltextMorph"): | 78 if (queryType=="fulltextMorph"): |
79 pagedivs = pagedom.xpath("//div[@class='queryResult']") | 79 pagedivs = pagedom.xpath("//div[@class='queryResult']") |
80 if len(pagedivs)>0: | 80 if len(pagedivs)>0: |
84 hrefNode = l.getAttributeNodeNS(None, u"href") | 84 hrefNode = l.getAttributeNodeNS(None, u"href") |
85 if hrefNode: | 85 if hrefNode: |
86 href = hrefNode.nodeValue | 86 href = hrefNode.nodeValue |
87 if href.startswith('page-fragment.xql'): | 87 if href.startswith('page-fragment.xql'): |
88 selfurl = self.absolute_url() | 88 selfurl = self.absolute_url() |
89 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,query,pagesize,pn,tocMode,pn,tocPN,characterNormalization)) | 89 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s'%(viewMode,queryType,query,pagesize,pn,tocMode,pn,tocPN)) |
90 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl) | 90 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl) |
91 if href.startswith('../lt/lemma.xql'): | 91 if href.startswith('../lt/lemma.xql'): |
92 hrefNode.nodeValue = href.replace('../lt/lemma.xql','%s/template/head_main_lemma_New'%(selfurl)) | 92 hrefNode.nodeValue = href.replace('../lt/lemma.xql','%s/template/head_main_lemma_New'%(selfurl)) |
93 l.setAttributeNS(None, 'target', '_blank') | 93 l.setAttributeNS(None, 'target', '_blank') |
94 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;") | 94 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;") |
102 links=pagenode.xpath("//a") | 102 links=pagenode.xpath("//a") |
103 for l in links: | 103 for l in links: |
104 hrefNode = l.getAttributeNodeNS(None, u"href") | 104 hrefNode = l.getAttributeNodeNS(None, u"href") |
105 if hrefNode: | 105 if hrefNode: |
106 href = hrefNode.nodeValue | 106 href = hrefNode.nodeValue |
107 hrefNode.nodeValue=href.replace('mode=text','mode=texttool&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s&characterNormalization=%s'%(viewMode,tocMode,tocPN,pn,characterNormalization)) | 107 hrefNode.nodeValue=href.replace('mode=text','mode=texttool&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s'%(viewMode,tocMode,tocPN,pn)) |
108 if href.startswith('../lt/lex.xql'): | 108 if href.startswith('../lt/lex.xql'): |
109 hrefNode.nodeValue = href.replace('../lt/lex.xql','%s/template/head_main_voc'%selfurl) | 109 hrefNode.nodeValue = href.replace('../lt/lex.xql','%s/template/head_main_voc'%selfurl) |
110 l.setAttributeNS(None, 'target', '_blank') | 110 l.setAttributeNS(None, 'target', '_blank') |
111 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;") | 111 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;") |
112 l.setAttributeNS(None, 'onClick', 'popupWin.focus();') | 112 l.setAttributeNS(None, 'onClick', 'popupWin.focus();') |
128 text = self.getServerData("xquery.xql","document=%s&xquery=%s"%(docinfo['textURLPath'],xquery)) | 128 text = self.getServerData("xquery.xql","document=%s&xquery=%s"%(docinfo['textURLPath'],xquery)) |
129 #text = self.template.fulltextclient.eval("/mpdl/interface/xquery.xql", "document=%s&xquery=%s"%(docinfo['textURLPath'],xquery)) | 129 #text = self.template.fulltextclient.eval("/mpdl/interface/xquery.xql", "document=%s&xquery=%s"%(docinfo['textURLPath'],xquery)) |
130 docinfo['numPages'] = text.count("<pb ") | 130 docinfo['numPages'] = text.count("<pb ") |
131 return docinfo | 131 return docinfo |
132 | 132 |
133 def getTextPage(self, mode="text", pn=1, docinfo=None, pageinfo=None, highlightQuery=None,sn=None, viewMode=None, tocMode=None, tocPN=None, characterNormalization="reg"): | 133 def getTextPage(self, mode="text", pn=1, docinfo=None, pageinfo=None, highlightQuery=None,sn=None, viewMode=None, tocMode=None, tocPN=None, characterNormalization=None): |
134 """returns single page from fulltext""" | 134 """returns single page from fulltext""" |
135 docpath = docinfo['textURLPath'] | 135 docpath = docinfo['textURLPath'] |
136 path = docinfo['textURLPath'] | 136 path = docinfo['textURLPath'] |
137 url = docinfo['url'] | 137 url = docinfo['url'] |
138 viewMode= pageinfo['viewMode'] | 138 viewMode= pageinfo['viewMode'] |