Diff for /documentViewer/documentViewer.py between versions 1.112 and 1.139

version 1.112, 2010/10/08 13:49:44 version 1.139, 2010/10/18 10:43:44
Line 5  from Products.PageTemplates.PageTemplate Line 5  from Products.PageTemplates.PageTemplate
 from AccessControl import ClassSecurityInfo  from AccessControl import ClassSecurityInfo
 from AccessControl import getSecurityManager  from AccessControl import getSecurityManager
 from Globals import package_home  from Globals import package_home
   from Products.zogiLib.zogiLib import browserCheck
   
 from Ft.Xml import EMPTY_NAMESPACE, Parse  from Ft.Xml import EMPTY_NAMESPACE, Parse
 import Ft.Xml.Domlette  import Ft.Xml.Domlette
 import os.path  import os.path
 import sys  import sys
 import urllib  import urllib
   
 import urllib2  import urllib2
 import logging  import logging
 import math  import math
Line 18  import urlparse Line 20  import urlparse
 import cStringIO  import cStringIO
 import re  import re
   
   
 def logger(txt,method,txt2):  def logger(txt,method,txt2):
     """logging"""      """logging"""
     logging.info(txt+ txt2)      logging.info(txt+ txt2)
Line 49  def serializeNode(node, encoding='utf-8' Line 52  def serializeNode(node, encoding='utf-8'
     buf.close()      buf.close()
     return s      return s
   
   def getBrowserType(self):
           """get browser type object"""
           if self.REQUEST.SESSION.has_key('browserType'):
               return self.REQUEST.SESSION['browserType']
           else:
               bt = browserCheck(self)
               self.REQUEST.SESSION.set('browserType', bt)    
               logging.debug("documentViewer (BROWSER TYPE) bt %s"%bt)                    
               return bt
   
                   
 def getParentDir(path):  def getParentDir(path):
     """returns pathname shortened by one"""      """returns pathname shortened by one"""
Line 174  class documentViewer(Folder): Line 187  class documentViewer(Folder):
         """get search"""          """get search"""
         return self.template.fulltextclient.getSearch(**args)          return self.template.fulltextclient.getSearch(**args)
   
       def getGisPlaces(self, **args):
           """get gis places"""
           return self.template.fulltextclient.getGisPlaces(**args)
    
       def getAllGisPlaces(self, **args):
           """get all gis places """
           return self.template.fulltextclient.getAllGisPlaces(**args)
       
       def getOrigPages(self, **args):
           """get original page number """
           return self.template.fulltextclient.getOrigPages(**args)
       
     def getNumPages(self, docinfo):      def getNumPages(self, docinfo):
         """get numpages"""          """get numpages"""
         return self.template.fulltextclient.getNumPages(docinfo)          return self.template.fulltextclient.getNumPages(docinfo)
Line 219  class documentViewer(Folder): Line 244  class documentViewer(Folder):
             self.digilibBaseUrl = self.findDigilibUrl() or "http://nausikaa.mpiwg-berlin.mpg.de/digitallibrary"              self.digilibBaseUrl = self.findDigilibUrl() or "http://nausikaa.mpiwg-berlin.mpg.de/digitallibrary"
                           
         docinfo = self.getDocinfo(mode=mode,url=url)          docinfo = self.getDocinfo(mode=mode,url=url)
           #pageinfo = self.getPageinfo(start=start,current=pn,docinfo=docinfo)
         pageinfo = self.getPageinfo(start=start,current=pn,docinfo=docinfo)          pageinfo = self.getPageinfo(start=start,current=pn,docinfo=docinfo)
           ''' ZDES '''
         pt = getattr(self.template, 'thumbs_main_rss')          pt = getattr(self.template, 'thumbs_main_rss')
                   
         if viewMode=="auto": # automodus gewaehlt          if viewMode=="auto": # automodus gewaehlt
Line 531  class documentViewer(Folder): Line 558  class documentViewer(Folder):
                 docinfo['lang']=getTextFromNode(dom.xpath("//bib/lang")[0])                  docinfo['lang']=getTextFromNode(dom.xpath("//bib/lang")[0])
             except:              except:
                 docinfo['lang']=''                  docinfo['lang']=''
             try:  
                 docinfo['name']=getTextFromNode(dom.xpath("//%s"%bibmap['name'][0])[0])  
             except: pass  
                           
         return docinfo          return docinfo
           
Line 548  class documentViewer(Folder): Line 572  class documentViewer(Folder):
                 path=getParentDir(path)                  path=getParentDir(path)
             dom = self.getDomFromIndexMeta(path)              dom = self.getDomFromIndexMeta(path)
                   
         #docinfo['indexMetaPath']=self.getIndexMetaPath(path);          docinfo['name']=getTextFromNode(dom.xpath("/resource/name")[0])
                   logging.debug("documentViewer docinfo[name] %s"%docinfo['name'])
         #result= dom.xpath("//result/resultPage")  
         #docinfo['numPages']=int(getTextFromNode(result[0]))  
           
         if len(name) > 0:  
             try:  
                 result =dom.xpath("//name")  
                 docinfo['name']=getTextFromNode(result[0])  
                 logging.debug("documentViewer docinfo[name] %s"%docinfo[name])  
             except: pass    
                 #logging.debug("documentViewer (getbibinfofromindexmeta) using mapping for %s"%bibtype)  
         return docinfo          return docinfo
           
     def getDocinfoFromTextTool(self, url, dom=None, docinfo=None):      def getDocinfoFromTextTool(self, url, dom=None, docinfo=None):
Line 648  class documentViewer(Folder): Line 662  class documentViewer(Folder):
                     
         presentationUrls = dom.xpath("//texttool/presentation")          presentationUrls = dom.xpath("//texttool/presentation")
         docinfo = self.getBibinfoFromIndexMeta(url, docinfo=docinfo, dom=dom)   # get info von bib tag          docinfo = self.getBibinfoFromIndexMeta(url, docinfo=docinfo, dom=dom)   # get info von bib tag
         #docinfo = self.getNameFromIndexMeta(url, docinfo=docinfo, dom=dom)          docinfo = self.getNameFromIndexMeta(url, docinfo=docinfo, dom=dom)
           docinfo =self.getOrigPages(docinfo=docinfo)
                   
         if presentationUrls and (len(presentationUrls) > 0): # ueberschreibe diese durch presentation informationen           if presentationUrls and (len(presentationUrls) > 0): # ueberschreibe diese durch presentation informationen 
              # presentation url ergiebt sich ersetzen von index.meta in der url der fuer die Metadaten               # presentation url ergiebt sich ersetzen von index.meta in der url der fuer die Metadaten
Line 682  class documentViewer(Folder): Line 697  class documentViewer(Folder):
             docinfo['year']=getTextFromNode(dom.xpath("//date")[0])              docinfo['year']=getTextFromNode(dom.xpath("//date")[0])
         except:          except:
             pass              pass
         try:  
             docinfo['name']=getTextFromNode(dom.xpath("//name")[0])  
         except:  
             pass  
         return docinfo          return docinfo
           
     def getDocinfoFromImagePath(self,path,docinfo=None,cut=0):      def getDocinfoFromImagePath(self,path,docinfo=None,cut=0):
Line 733  class documentViewer(Folder): Line 744  class documentViewer(Folder):
             raise ValueError("Unknown mode %s! Has to be one of 'texttool','imagepath','filepath'."%(mode))              raise ValueError("Unknown mode %s! Has to be one of 'texttool','imagepath','filepath'."%(mode))
                                                   
         logging.debug("documentViewer (getdocinfo) docinfo: %s"%docinfo)          logging.debug("documentViewer (getdocinfo) docinfo: %s"%docinfo)
          
         self.REQUEST.SESSION['docinfo'] = docinfo          self.REQUEST.SESSION['docinfo'] = docinfo
         return docinfo          return docinfo
                                 
     def getPageinfo(self, current, start=None, rows=None, cols=None, docinfo=None, viewMode=None, tocMode=None,characterNormalization=""):      def getPageinfo(self, current, start=None, rows=None, cols=None, docinfo=None, viewMode=None, tocMode=None,characterNormalization="",originalPage=None):
         """returns pageinfo with the given parameters"""          """returns pageinfo with the given parameters"""
         pageinfo = {}          pageinfo = {}
         current = getInt(current)          current = getInt(current)
       
           pageinfo ['originalPage'] = self.REQUEST.get('originalPage','')
         pageinfo['current'] = current          pageinfo['current'] = current
         rows = int(rows or self.thumbrows)          rows = int(rows or self.thumbrows)
         pageinfo['rows'] = rows          pageinfo['rows'] = rows
Line 772  class documentViewer(Folder): Line 786  class documentViewer(Folder):
         toc = int (pageinfo['tocPN'])          toc = int (pageinfo['tocPN'])
         pageinfo['textPages'] =int (toc)          pageinfo['textPages'] =int (toc)
                   
           logging.debug("originalPage: %s"%originalPage)
           
         if 'tocSize_%s'%tocMode in docinfo:          if 'tocSize_%s'%tocMode in docinfo:
             tocSize = int(docinfo['tocSize_%s'%tocMode])              tocSize = int(docinfo['tocSize_%s'%tocMode])
             tocPageSize = int(pageinfo['tocPageSize'])              tocPageSize = int(pageinfo['tocPageSize'])

Removed from v.1.112  
changed lines
  Added in v.1.139


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>