Mercurial > hg > documentViewer
diff documentViewer.py @ 591:5850689ecfac
ocrsearch layer for images.
author | casties |
---|---|
date | Fri, 16 Nov 2012 13:41:02 +0100 |
parents | ed4485d2748e |
children | eb46138db658 |
line wrap: on
line diff
--- a/documentViewer.py Fri Nov 16 11:44:21 2012 +0100 +++ b/documentViewer.py Fri Nov 16 13:41:02 2012 +0100 @@ -66,6 +66,14 @@ return default +def getPfForPn(docinfo, pn, default=None): + """returns image file name for image number or default""" + if 'imgFileIndexes' in docinfo: + pn = docinfo['imgFileIndexes'].get(pn, default) + return pn + + return default + ## ## documentViewer class @@ -104,6 +112,7 @@ layer_text_gis = PageTemplateFile('zpt/layer_text_gis', globals()) layer_text_pundit = PageTemplateFile('zpt/layer_text_pundit', globals()) layer_image_annotator = PageTemplateFile('zpt/layer_image_annotator', globals()) + layer_image_ocrsearch = PageTemplateFile('zpt/layer_image_ocrsearch', globals()) layer_index_extended = PageTemplateFile('zpt/layer_index_extended', globals()) # toc templates toc_thumbs = PageTemplateFile('zpt/toc_thumbs', globals()) @@ -777,12 +786,15 @@ # save list of image names and numbers imgNames = {} + imgIndexes = {} for f in dir: fn = f.findtext('name') - pn = f.findtext('index') - imgNames[fn] = getInt(pn) + pn = getInt(f.findtext('index')) + imgNames[fn] = pn + imgIndexes[pn] = fn docinfo['imgFileNames'] = imgNames + docinfo['imgFileIndexes'] = imgIndexes return docinfo @@ -848,6 +860,8 @@ self.REQUEST.form['pn'] = pn else: pn = getInt(pn, 1) + pf = getPfForPn(docinfo, pn) + pageinfo['pf'] = pf pageinfo['pn'] = pn rows = int(rows or self.thumbrows) @@ -890,10 +904,10 @@ pageinfo['pageNumberOrigNorm'] = pageNumber['non'] # cache search results - pageinfo['resultPageSize'] = getInt(self.REQUEST.get('resultPageSize', 10)) query = self.REQUEST.get('query',None) pageinfo['query'] = query - if query: + if query and viewMode == 'text': + pageinfo['resultPageSize'] = getInt(self.REQUEST.get('resultPageSize', 10)) queryType = self.REQUEST.get('queryType', 'fulltextMorph') pageinfo['queryType'] = queryType pageinfo['resultStart'] = getInt(self.REQUEST.get('resultStart', '1')) @@ -910,7 +924,7 @@ def getPageBatch(self, start=1, rows=10, cols=2, pageFlowLtr=True, pageZero=False, minIdx=1, maxIdx=0): - """returns dict with array of page informations for one screenfull of thumbnails""" + """returns dict with array of page information for one screenfull of thumbnails""" batch = {} grpsize = rows * cols if maxIdx == 0: