Mercurial > hg > documentViewer
comparison documentViewer.py @ 345:c39c252a3186
*** empty log message ***
author | abukhman |
---|---|
date | Mon, 18 Oct 2010 12:33:47 +0200 |
parents | 025e53924ec3 |
children | eadda10efd4a |
comparison
equal
deleted
inserted
replaced
344:3be4180e7b23 | 345:c39c252a3186 |
---|---|
10 from Ft.Xml import EMPTY_NAMESPACE, Parse | 10 from Ft.Xml import EMPTY_NAMESPACE, Parse |
11 import Ft.Xml.Domlette | 11 import Ft.Xml.Domlette |
12 import os.path | 12 import os.path |
13 import sys | 13 import sys |
14 import urllib | 14 import urllib |
15 | |
15 import urllib2 | 16 import urllib2 |
16 import logging | 17 import logging |
17 import math | 18 import math |
18 import urlparse | 19 import urlparse |
19 import cStringIO | 20 import cStringIO |
242 if not self.digilibBaseUrl: | 243 if not self.digilibBaseUrl: |
243 self.digilibBaseUrl = self.findDigilibUrl() or "http://nausikaa.mpiwg-berlin.mpg.de/digitallibrary" | 244 self.digilibBaseUrl = self.findDigilibUrl() or "http://nausikaa.mpiwg-berlin.mpg.de/digitallibrary" |
244 | 245 |
245 docinfo = self.getDocinfo(mode=mode,url=url) | 246 docinfo = self.getDocinfo(mode=mode,url=url) |
246 #pageinfo = self.getPageinfo(start=start,current=pn,docinfo=docinfo) | 247 #pageinfo = self.getPageinfo(start=start,current=pn,docinfo=docinfo) |
247 pageinfo = self.getPageinfo(start=start,current=pn, originalPage=originalPage, docinfo=docinfo) | 248 pageinfo = self.getPageinfo(start=start,current=pn, docinfo=docinfo) |
248 ''' ZDES ''' | 249 ''' ZDES ''' |
249 pt = getattr(self.template, 'thumbs_main_rss') | 250 pt = getattr(self.template, 'thumbs_main_rss') |
250 | 251 |
251 if viewMode=="auto": # automodus gewaehlt | 252 if viewMode=="auto": # automodus gewaehlt |
252 if docinfo.has_key("textURL") or docinfo.has_key('textURLPath'): #texturl gesetzt und textViewer konfiguriert | 253 if docinfo.has_key("textURL") or docinfo.has_key('textURLPath'): #texturl gesetzt und textViewer konfiguriert |
255 viewMode="images" | 256 viewMode="images" |
256 | 257 |
257 return pt(docinfo=docinfo,pageinfo=pageinfo,viewMode=viewMode) | 258 return pt(docinfo=docinfo,pageinfo=pageinfo,viewMode=viewMode) |
258 | 259 |
259 security.declareProtected('View','index_html') | 260 security.declareProtected('View','index_html') |
260 def index_html(self,url,mode="texttool",viewMode="auto",tocMode="thumbs",start=None,pn=1,mk=None, query=None, querySearch=None, characterNormalization="",originalPage=None): | 261 def index_html(self,url,mode="texttool",viewMode="auto",tocMode="thumbs",start=None,pn=1,mk=None, query=None, querySearch=None, characterNormalization=""): |
261 ''' | 262 ''' |
262 view it | 263 view it |
263 @param mode: defines how to access the document behind url | 264 @param mode: defines how to access the document behind url |
264 @param url: url which contains display information | 265 @param url: url which contains display information |
265 @param viewMode: if images display images, if text display text, default is auto (text,images or auto) | 266 @param viewMode: if images display images, if text display text, default is auto (text,images or auto) |
266 @param tocMode: type of 'table of contents' for navigation (thumbs, text, figures, none) | 267 @param tocMode: type of 'table of contents' for navigation (thumbs, text, figures, none) |
267 @param characterNormalization type of text display (reg, norm, none) | 268 @param characterNormalization type of text display (reg, norm, none) |
268 @param querySearch: type of different search modes (fulltext, fulltextMorph, xpath, xquery, ftIndex, ftIndexMorph, fulltextMorphLemma) | 269 @param querySearch: type of different search modes (fulltext, fulltextMorph, xpath, xquery, ftIndex, ftIndexMorph, fulltextMorphLemma) |
269 ''' | 270 ''' |
270 | 271 |
271 logging.debug("documentViewer (index) mode: %s url:%s start:%s pn:%s originalPage:%s"%(mode,url,start,pn,originalPage)) | 272 logging.debug("documentViewer (index) mode: %s url:%s start:%s pn:%s"%(mode,url,start,pn)) |
272 | 273 |
273 if not hasattr(self, 'template'): | 274 if not hasattr(self, 'template'): |
274 # this won't work | 275 # this won't work |
275 logging.error("template folder missing!") | 276 logging.error("template folder missing!") |
276 return "ERROR: template folder missing!" | 277 return "ERROR: template folder missing!" |
288 if docinfo.has_key('textURL') or docinfo.has_key('textURLPath'): #texturl gesetzt und textViewer konfiguriert | 289 if docinfo.has_key('textURL') or docinfo.has_key('textURLPath'): #texturl gesetzt und textViewer konfiguriert |
289 viewMode="text_dict" | 290 viewMode="text_dict" |
290 else: | 291 else: |
291 viewMode="images" | 292 viewMode="images" |
292 | 293 |
293 pageinfo = self.getPageinfo(start=start,current=pn, docinfo=docinfo,viewMode=viewMode,tocMode=tocMode, originalPage=originalPage) | 294 pageinfo = self.getPageinfo(start=start,current=pn, docinfo=docinfo,viewMode=viewMode,tocMode=tocMode) |
294 | 295 |
295 pt = getattr(self.template, 'viewer_main') | 296 pt = getattr(self.template, 'viewer_main') |
296 return pt(docinfo=docinfo,pageinfo=pageinfo,viewMode=viewMode,mk=self.generateMarks(mk)) | 297 return pt(docinfo=docinfo,pageinfo=pageinfo,viewMode=viewMode,mk=self.generateMarks(mk)) |
297 | 298 |
298 def generateMarks(self,mk): | 299 def generateMarks(self,mk): |
745 logging.debug("documentViewer (getdocinfo) docinfo: %s"%docinfo) | 746 logging.debug("documentViewer (getdocinfo) docinfo: %s"%docinfo) |
746 | 747 |
747 self.REQUEST.SESSION['docinfo'] = docinfo | 748 self.REQUEST.SESSION['docinfo'] = docinfo |
748 return docinfo | 749 return docinfo |
749 | 750 |
750 def getPageinfo(self, current, start=None, rows=None, cols=None, docinfo=None, viewMode=None, tocMode=None,characterNormalization="", originalPage=None): | 751 def getPageinfo(self, current, start=None, rows=None, cols=None, docinfo=None, viewMode=None, tocMode=None,characterNormalization="",originalPage=None): |
751 """returns pageinfo with the given parameters""" | 752 """returns pageinfo with the given parameters""" |
752 pageinfo = {} | 753 pageinfo = {} |
753 current = getInt(current) | 754 current = getInt(current) |
754 | 755 |
755 pageinfo ['originalPage'] = originalPage | 756 pageinfo ['originalPage'] = originalPage |