Diff for /versionedFile/versionedFile.py between versions 1.17 and 1.25

version 1.17, 2004/11/01 18:04:11 version 1.25, 2005/01/12 14:08:19
Line 8  from Products.PageTemplates.PageTemplate Line 8  from Products.PageTemplates.PageTemplate
 from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate  from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate
 from AccessControl import ClassSecurityInfo  from AccessControl import ClassSecurityInfo
 import os.path  import os.path
   
 import time  import time
   try:
       from Products.ECHO_content.ECHO_collection import ECHO_basis
   except:
       print "ECHO Elements not imported"
       class ECHO_basis:
        """leer"""
        manage_options=()
   
   
 def sortv(x,y):  def sortv(x,y):
     return cmp(x[0],y[0])      return cmp(x[0],y[0])
     
 class versionedFileFolder(Folder):  class versionedFileFolder(Folder,ECHO_basis):
     """Folder with versioned files"""      """Folder with versioned files"""
   
           
Line 22  class versionedFileFolder(Folder): Line 31  class versionedFileFolder(Folder):
     security= ClassSecurityInfo()      security= ClassSecurityInfo()
     security.declareProtected('AUTHENTICATED_USER','addFileForm')      security.declareProtected('AUTHENTICATED_USER','addFileForm')
           
     manage_options = Folder.manage_options+(      if ECHO_basis:
           optTMP= Folder.manage_options+ECHO_basis.manage_options
       else:
           optTMP= Folder.manage_options
   
       manage_options =optTMP+(
         {'label':'Generate Index.html','action':'generateIndexHTML'},          {'label':'Generate Index.html','action':'generateIndexHTML'},
                 {'label':'Generate history_template.html','action':'generateHistoryHTML'},                  {'label':'Generate history_template.html','action':'generateHistoryHTML'},
         )          )
   
     
       
     def helpDownload(self):      def helpDownload(self):
         """download help"""          """download help"""
                   
         pt=PageTemplateFile('Products/versionedFile/zpt/helpDownload').__of__(self)          pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','helpDownload')).__of__(self)
         return pt()          return pt()
           
     def generateIndexHTML(self,RESPONSE=None):      def generateIndexHTML(self,RESPONSE=None):
         """lege standard index.html an"""          """lege standard index.html an"""
   
                   
           if not self.ZopeFind(self,obj_ids=['index.html']):
           
         if not hasattr(self,'index.html'):  
             zt=ZopePageTemplate('index.html')              zt=ZopePageTemplate('index.html')
             self._setObject('index.html',zt)              self._setObject('index.html',zt)
             default_content_fn = os.path.join(package_home(globals()),              default_content_fn = os.path.join(package_home(globals()),
Line 59  class versionedFileFolder(Folder): Line 73  class versionedFileFolder(Folder):
   
                   
   
                   if not self.ZopeFind(self,obj_ids=['history_template.html']):
         if not hasattr(self,'history_template.html'):  
             zt=ZopePageTemplate('history_template.html')              zt=ZopePageTemplate('history_template.html')
             self._setObject('history_template.html',zt)              self._setObject('history_template.html',zt)
             default_content_fn = os.path.join(package_home(globals()),              default_content_fn = os.path.join(package_home(globals()),
Line 78  class versionedFileFolder(Folder): Line 91  class versionedFileFolder(Folder):
         """get all versioned files"""          """get all versioned files"""
   
         def sortName(x,y):          def sortName(x,y):
             return cmp(x[1].title,y[1].title)              return cmp(x[1].title.lower(),y[1].title.lower())
   
         def sortDate(x,y):          def sortDate(x,y):
             return cmp(y[1].getLastVersion().getTime(),x[1].getLastVersion().getTime())              return cmp(y[1].getLastVersion().getTime(),x[1].getLastVersion().getTime())
Line 113  class versionedFileFolder(Folder): Line 126  class versionedFileFolder(Folder):
         if ext:          if ext:
             return ext[0][1]()              return ext[0][1]()
                   
         pt=PageTemplateFile('Products/versionedFile/zpt/versionFileFolderMain').__of__(self)          pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','versionFileFolderMain')).__of__(self)
         return pt()          return pt()
   
   
     def addFileForm(self):      def addFileForm(self):
         """add a file"""          """add a file"""
           ext=self.ZopeFind(self,obj_ids=["addFileForm.dtml"])
           if ext:
               return ext[0][1]('',globals(),version='1',AUTHENTICATED_USER=self.REQUEST.AUTHENTICATED_USER)
           
         out=DTMLFile('dtml/newFileAdd', globals(),Kind='VersionedFileObject',kind='versionedFileObject',version='1').__of__(self)          out=DTMLFile('dtml/newFileAdd', globals(),Kind='VersionedFileObject',kind='versionedFileObject',version='1').__of__(self)
         return out()          return out()
   
Line 126  class versionedFileFolder(Folder): Line 143  class versionedFileFolder(Folder):
     def addFile(self,vC,file,author,newName='',content_type='',RESPONSE=None):      def addFile(self,vC,file,author,newName='',content_type='',RESPONSE=None):
         """ add a new file"""          """ add a new file"""
         if newName=='':          if newName=='':
             id=file.filename              filename=file.filename
               id=filename[max(filename.rfind('/'),
                                       filename.rfind('\\'),
                                       filename.rfind(':'),
                                       )+1:]
   
         else:          else:
             id=newName              id=newName
                   
         vC=self.REQUEST.form['vC']          vC=self.REQUEST.form['vC']
         manage_addVersionedFile(self,id,'','')          manage_addVersionedFile(self,id,'','')
           #if (getattr(self,'commentNonEmpty',0)==1) and vC.strip()=="":
               
               
         ob=self._getOb(id)          ob=self._getOb(id)
         ob.title=id          ob.title=id
         file2=file          file2=file
         ob.manage_addVersionedFileObject(id,vC,author,file2,content_type=content_type)          
           obj=ob.manage_addVersionedFileObject(id,vC,author,file2,content_type=content_type)
   
           if obj.getSize()==0:
               pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','errorUploadFile')).__of__(self)
               return pt()
   
         RESPONSE.redirect(self.REQUEST['URL1'])          RESPONSE.redirect(self.REQUEST['URL1'])
   
Line 332  class versionedFile(Folder): Line 362  class versionedFile(Folder):
         if ext:          if ext:
             return getattr(self,ext[0][1].getId())()              return getattr(self,ext[0][1].getId())()
                   
         pt=PageTemplateFile('Products/versionedFile/zpt/versionHistory').__of__(self)          pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','versionHistory')).__of__(self)
         return pt()          return pt()
   
     def getVersions(self):      def getVersions(self):
Line 374  class versionedFile(Folder): Line 404  class versionedFile(Folder):
         author=self.REQUEST['author']          author=self.REQUEST['author']
                   
         if changeName=="yes":          if changeName=="yes":
             self.title=file.filename[0:]              filename=file.filename
               self.title=filename[max(filename.rfind('/'),
                           filename.rfind('\\'),
                           filename.rfind(':'),
                           )+1:]
   
   
         if not newName=='':          if not newName=='':
             self.title=newName[0:]              self.title=newName[0:]
   
         id="V%i"%self.getVersion()+"_"+self.title          id="V%i"%self.getVersion()+"_"+self.title
           
         manage_addVersionedFileObject(self,id,vC,author,file,"V%i"%self.getVersion()+"_"+self.title,precondition, content_type)          manage_addVersionedFileObject(self,id,vC,author,file,"V%i"%self.getVersion()+"_"+self.title,precondition, content_type)
         objs=self.ZopeFind(self,obj_ids=[id])[0][1].setVersionNumber(int(self.getVersion()))          objs=self.ZopeFind(self,obj_ids=[id])[0][1].setVersionNumber(int(self.getVersion()))
   
   
         if RESPONSE:          if RESPONSE:
               if self.ZopeFind(self,obj_ids=[id])[0][1].getSize()==0:
                   pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','errorUploadFile')).__of__(self)
                   return pt()
   
               else:
             RESPONSE.redirect(self.REQUEST['URL2'])              RESPONSE.redirect(self.REQUEST['URL2'])
   
           else:
               return self.ZopeFind(self,obj_ids=[id])[0][1]
           
     security.declareProtected('AUTHENTICATED_USER','downloadLocked')      security.declareProtected('AUTHENTICATED_USER','downloadLocked')
   
     def download(self):      def download(self):
Line 405  class versionedFile(Folder): Line 450  class versionedFile(Folder):
           
 def manage_addVersionedFileForm(self):  def manage_addVersionedFileForm(self):
     """interface for adding the OSAS_root"""      """interface for adding the OSAS_root"""
     pt=PageTemplateFile('Products/versionedFile/zpt/addVersionedFile.zpt').__of__(self)      pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','addVersionedFile.zpt')).__of__(self)
     return pt()      return pt()
   
 def manage_addVersionedFile(self,id,title,lockedBy, author=None, RESPONSE=None):  def manage_addVersionedFile(self,id,title,lockedBy, author=None, RESPONSE=None):

Removed from v.1.17  
changed lines
  Added in v.1.25


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