diff documentViewer.py @ 455:0a53fea83df7 elementtree

more work renovating
author casties
date Fri, 15 Jul 2011 21:34:41 +0200
parents 73e3273c7624
children 9fb231ad0bd2
line wrap: on
line diff
--- a/documentViewer.py	Fri Jul 15 11:02:26 2011 +0200
+++ b/documentViewer.py	Fri Jul 15 21:34:41 2011 +0200
@@ -354,21 +354,26 @@
         if tocMode != "thumbs":
             # get table of contents
             docinfo = self.getToc(mode=tocMode, docinfo=docinfo)
-            
-        if viewMode=="auto": # automodus gewaehlt
-            if docinfo.has_key('textURL') or docinfo.get('textURLPath',None): #texturl gesetzt und textViewer konfiguriert
+
+        # auto viewMode: text_dict if text else images
+        if viewMode=="auto": 
+            if docinfo.get('textURL', None) or docinfo.get('textURLPath', None): 
+                #texturl gesetzt und textViewer konfiguriert
                 viewMode="text_dict"
             else:
                 viewMode="images"
                 
-        pageinfo = self.getPageinfo(start=start,current=pn, docinfo=docinfo,viewMode=viewMode,tocMode=tocMode)
+        pageinfo = self.getPageinfo(start=start, current=pn, docinfo=docinfo, viewMode=viewMode, tocMode=tocMode)
         
-        if (docinfo.get('textURLPath',None)):
-            page = self.getTextPage(mode=viewMode, docinfo=docinfo, pageinfo=pageinfo)
+        if viewMode != 'images' and docinfo.get('textURLPath', None):
+            # get full text page
+            page = self.getTextPage(mode=viewMode, pn=pn, docinfo=docinfo, pageinfo=pageinfo)
             pageinfo['textPage'] = page
-        tt = getattr(self, 'template')   
-        pt = getattr(tt, 'viewer_main')               
-        return pt(docinfo=docinfo,pageinfo=pageinfo,viewMode=viewMode,mk=self.generateMarks(mk))
+            
+        # get template /template/viewer_main
+        pt = getattr(self.template, 'viewer_main')
+        # and execute with parameters
+        return pt(docinfo=docinfo, pageinfo=pageinfo, viewMode=viewMode, mk=self.generateMarks(mk))
   
     def generateMarks(self,mk):
         ret=""
@@ -866,15 +871,21 @@
             docinfo = self.REQUEST.SESSION['docinfo']
             # check if its still current
             if docinfo is not None and docinfo.get('mode') == mode and docinfo.get('url') == url:
-                logging.debug("documentViewer (getdocinfo) docinfo in session: %s"%docinfo)
+                logging.debug("documentViewer (getdocinfo) docinfo in session. keys=%s"%docinfo.keys())
                 return docinfo
+            
         # new docinfo
         docinfo = {'mode': mode, 'url': url}
-        if mode=="texttool": #index.meta with texttool information
+        # add self url
+        docinfo['viewerUrl'] = self.getDocumentViewerURL()
+        if mode=="texttool": 
+            # index.meta with texttool information
             docinfo = self.getDocinfoFromTextTool(url, docinfo=docinfo)
         elif mode=="imagepath":
+            # folder with images, index.meta optional
             docinfo = self.getDocinfoFromImagePath(url, docinfo=docinfo)
         elif mode=="filepath":
+            # filename
             docinfo = self.getDocinfoFromImagePath(url, docinfo=docinfo,cut=1)
         else:
             logging.error("documentViewer (getdocinfo) unknown mode: %s!"%mode)