Diff for /ImageArchive/ImageArchive.py between versions 1.65 and 1.69

version 1.65, 2005/10/11 20:08:10 version 1.69, 2005/10/25 19:42:59
Line 1 Line 1
   genericServerPath="http://www.mpiwg-berlin.mpg.de/zogilib_images" #can be changed with main config
   
 #genericServerPath="http://content.mpiwg-berlin.mpg.de/zogilib_images"  
 genericServerPath="http://127.0.0.1:8080/zogilib_images"  
   
   
 from OFS.Folder import Folder  from OFS.Folder import Folder
Line 24  from threading import Thread Line 23  from threading import Thread
 import Queue  import Queue
 import cgi  import cgi
   
 from AccessControl import ClassSecurityInfo  from AccessControl import ClassSecurityInfo, getSecurityManager
   
 try:  try:
     from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder      from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder
Line 278  class ImageDigilib(Folder,Persistent,Imp Line 277  class ImageDigilib(Folder,Persistent,Imp
                   
         )          )
   
       def getAccessRight(self):
           """get the accessright, return is string "extern" or "intern" """
           return self.getRights(self.filename.split('.')[0])
            
    
       def isAccessible(self):
           """gives true if obejct is accessible taking the rights of the user into account"""
           
           #TODO: implement rights, currently  true if external and false if internal, and true if user has role authenticated
       
           username=self.REQUEST['AUTHENTICATED_USER']
           #print username
           #print self.acl_users.getUserNames()
           user=getSecurityManager().getUser()
   
           roles=user.getRoles()
           if 'Authenticated' in roles:
               return True
           
           if self.getAccessRight()=="extern":
               return True
           else:
               return False
           
     def addMetaObject(self,id,RESPONSE=None):      def addMetaObject(self,id,RESPONSE=None):
         """Add an MetaObject"""          """Add an MetaObject"""
         objectType=getattr(self.Control_Panel.Products.ImageMetaData,self.genericMetaDataType)          objectType=getattr(self.Control_Panel.Products.ImageMetaData,self.genericMetaDataType)
Line 599  class ImageCollection(Folder, Persistent Line 622  class ImageCollection(Folder, Persistent
           
     defaultMetaString="http://fm-web.mpiwg-berlin.mpg.de:8050/FMRes/FMPJS?-db=Wissenschaftlerportraits.fp5&-layID=69&-token=25&-max=1&-format=formvwcss.htm&-mode=browse&images::filename=%s&-find" ## TEST FUER IMAGEDATENBANK WP      defaultMetaString="http://fm-web.mpiwg-berlin.mpg.de:8050/FMRes/FMPJS?-db=Wissenschaftlerportraits.fp5&-layID=69&-token=25&-max=1&-format=formvwcss.htm&-mode=browse&images::filename=%s&-find" ## TEST FUER IMAGEDATENBANK WP
   
       def getServerPath(self):
           """get Server path"""
           return getattr(self,'serverPath',genericServerPath)
       
     def getScalerPath(self):      def getScalerPath(self):
         """get ScalerPath"""          """get ScalerPath"""
         path=getattr(self,'serverPath',genericServerPath)+"/scaledImage?fn="          path=getattr(self,'serverPath',genericServerPath)+"/scaledImage?fn="
Line 922  class ImageCollection(Folder, Persistent Line 949  class ImageCollection(Folder, Persistent
         pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','addImage.zpt')).__of__(self)          pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','addImage.zpt')).__of__(self)
         return pt()          return pt()
           
     def addImage2(self,fileupload,meta,use_default=None,RESPONSE=None):      def addImage2(self,fileupload,fileName=None,meta=None,use_default=None,RESPONSE=None):
         """Add"""          """Add"""
   
         #print "FU",fileupload          #print "FU",fileupload
Line 934  class ImageCollection(Folder, Persistent Line 961  class ImageCollection(Folder, Persistent
                 meta=None                  meta=None
         else:          else:
             meta=None              meta=None
           
           if fileName:
               fn=fileName
           else:
         fn=splitPath(fileupload.filename)          fn=splitPath(fileupload.filename)
                   
         manage_AddImageDigilib(self,fn,fileupload,meta=meta)          manage_AddImageDigilib(self,fn,fileupload,meta=meta)
           
           if RESPONSE:
         return RESPONSE.redirect(self.REQUEST['URL1']+'/'+fn)          return RESPONSE.redirect(self.REQUEST['URL1']+'/'+fn)
         #return  self.REQUEST['URL1']+'/'+fileupload.filename          #return  self.REQUEST['URL1']+'/'+fileupload.filename
   
Line 1068  class ImageCollection(Folder, Persistent Line 1101  class ImageCollection(Folder, Persistent
         pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ChangeImageCollectionForm.zpt')).__of__(self)          pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ChangeImageCollectionForm.zpt')).__of__(self)
         return pt()          return pt()
   
     def ChangeImageCollection(self,title,ImageStoragePath,ImageViewerPath,defaultMetaString,RESPONSE=None):      def ChangeImageCollection(self,title,ImageStoragePath,ImageViewerPath,defaultMetaString,serverPath,RESPONSE=None):
         """Change"""          """Change"""
         self.title=title          self.title=title
         self.ImageStoragePath=ImageStoragePath          self.ImageStoragePath=ImageStoragePath
         self.ImageViewerPath=ImageViewerPath          self.ImageViewerPath=ImageViewerPath
         self.defaultMetaString=defaultMetaString          self.defaultMetaString=defaultMetaString
           self.serverPath=serverPath
                   
         if RESPONSE is not None:          if RESPONSE is not None:
             RESPONSE.redirect('manage_main')              RESPONSE.redirect('manage_main')
Line 1533  class ImageCollectionMD(ImageCollection, Line 1567  class ImageCollectionMD(ImageCollection,
     meta_type="ImageCollection MD"      meta_type="ImageCollection MD"
     #scalerPath="http://127.0.0.1:18080/digitallibrary/servlet/Scaler/?fn="      #scalerPath="http://127.0.0.1:18080/digitallibrary/servlet/Scaler/?fn="
     scalerPath="http://nausikaa2.rz-berlin.mpg.de/digitallibrary/servlet/Scaler/?fn="      scalerPath="http://nausikaa2.rz-berlin.mpg.de/digitallibrary/servlet/Scaler/?fn="
       rightsQueryDefault="SELECT accessibility from vision_main where id_image=(SELECT id from vision_images where filename ~ '%s*' )"
       rightsQueryFieldDefault="accessibility"
       
     manage_options=ImageCollection.manage_options+(      manage_options=ImageCollection.manage_options+(
         {'label':'ZSQLExtend','action':'changeZSQLExtendForm'},          {'label':'ZSQLExtend','action':'changeZSQLExtendForm'},
           {'label':'Change Rights Query','action':'changeRightsQueryForm'},
        )         )
   
     try:              try:        
Line 1542  class ImageCollectionMD(ImageCollection, Line 1580  class ImageCollectionMD(ImageCollection,
     except:      except:
       pass        pass
   
       def changeRightsQueryForm(self):
           """change Rights Query"""
           pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ChangeRightsQueryForm.zpt')).__of__(self)
           return pt()
     
       def changeRightsQuery(self,rightsQuery,rightsQueryField,RESPONSE=None):
           """change Rightsquery"""
           
           self.rightsQuery=rightsQuery
           self.rightsQueryField=rightsQueryField
           
           if RESPONSE is not None:
                   RESPONSE.redirect('manage_main')
   
       
           
       def getRightsQuery(self):
           """get Query"""
           return getattr(self,'rightsQuery',self.rightsQueryDefault)
       
       def getRightsQueryField(self):
           """get Query Fiueld"""
           return getattr(self,'rightsQueryField',self.rightsQueryFieldDefault)
       
       
       
     def setGenericSearchStringForm(self):      def setGenericSearchStringForm(self):
         """form setze generischen search string fuer MD"""          """form setze generischen search string fuer MD"""
         pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','setGenericSearchStringForm.zpt')).__of__(self)          pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','setGenericSearchStringForm.zpt')).__of__(self)
Line 1556  class ImageCollectionMD(ImageCollection, Line 1620  class ImageCollectionMD(ImageCollection,
         pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','thumbListMD.zpt')).__of__(self)          pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','thumbListMD.zpt')).__of__(self)
         return pt()          return pt()
   
       def getRights(self,id):
           """get the rights from a database"""
           #print self.rightsQuery%id
           results=self.ZSQLSimpleSearch(self.getRightsQuery()%id)
           if results:
               result = getattr(results[0],self.getRightsQueryField())
           else:
               result = ''
           return result
           
   
 def manage_AddImageCollectionMDForm(self):  def manage_AddImageCollectionMDForm(self):
     """Nothing yet"""      """Nothing yet"""

Removed from v.1.65  
changed lines
  Added in v.1.69


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