--- versionedFile/versionedFile.py 2007/04/03 13:18:47 1.70
+++ versionedFile/versionedFile.py 2010/05/12 10:58:21 1.74
@@ -73,7 +73,16 @@ class generateDownloadZip:
savePath=os.path.join(tmpPath,lastV.title)
fh=file(savePath,"w")
- fh.write(lastV.data)
+ logging.debug("writing file %1 data in %s"%(lastV.title,savePath))
+ # loop to get OFS.Image.File data
+ data=lastV.data
+ if isinstance(data, str):
+ fh.write(data)
+ else:
+ while data is not None:
+ fh.write(data.data)
+ data=data.next
+
fh.close()
self.response+="
2. step: creating the downloadable file
"
@@ -424,7 +433,7 @@ class versionedFileFolder(Folder,ECHO_ba
def header_html(self):
- """zusätzlicher header"""
+ """zusaetzlicher header"""
ext=self.ZopeFind(self,obj_ids=["header.html"])
if ext:
return ext[0][1]()
@@ -858,7 +867,20 @@ class versionedFile(CatalogAware,Folder)
lastVersion.versionNumber=1
return lastVersion
-
+ def getVersionNr(self,nr):
+ """Last Version"""
+ tmp=0
+ lastVersion=None
+
+
+ for version in self.ZopeFind(self):
+
+ if hasattr(version[1],'versionNumber'):
+
+ if int(version[1].versionNumber) ==nr :
+ return version[1]
+
+ return None
def diff(self,data):
"""differenz between lastversion and data"""
d=Differ()
@@ -959,7 +981,7 @@ class versionedFile(CatalogAware,Folder)
if str(self.REQUEST['AUTHENTICATED_USER']) in ["Anonymous User"]:
return "please login first"
- if (self.lockedBy==self.REQUEST['AUTHENTICATED_USER']) or (self.lockedBy==''):
+ if (self.lockedBy==self.REQUEST['AUTHENTICATED_USER']) or (self.lockedBy=='') or (self.lockedBy==None):
ext=self.ZopeFind(self.aq_parent,obj_ids=["addNewVersion.dtml"])
if ext:
return ext[0][1]('',globals(),version=self.getVersion(),lastComment=self.getLastVersion().getVersionComment(),AUTHENTICATED_USER=self.REQUEST.AUTHENTICATED_USER)