version 1.69, 2006/10/11 10:00:27
|
version 1.73, 2010/02/15 19:09:38
|
Line 1
|
Line 1
|
from OFS.Folder import Folder |
from OFS.Folder import Folder |
from OFS.Image import File |
from OFS.Image import File |
from OFS.Image import cookId |
from OFS.Image import cookId |
|
from OFS.DTMLDocument import DTMLDocument |
from Globals import DTMLFile, InitializeClass,package_home |
from Globals import DTMLFile, InitializeClass,package_home |
from Products.PageTemplates.PageTemplateFile import PageTemplateFile |
from Products.PageTemplates.PageTemplateFile import PageTemplateFile |
from AccessControl import getSecurityManager |
from AccessControl import getSecurityManager |
Line 22 import shutil
|
Line 23 import shutil
|
import tempfile |
import tempfile |
import os.path |
import os.path |
import urllib |
import urllib |
|
import logging |
import time |
import time |
try: |
try: |
from Products.ECHO_content.ECHO_collection import ECHO_basis |
from Products.ECHO_content.ECHO_collection import ECHO_basis |
Line 72 class generateDownloadZip:
|
Line 73 class generateDownloadZip:
|
|
|
savePath=os.path.join(tmpPath,lastV.title) |
savePath=os.path.join(tmpPath,lastV.title) |
fh=file(savePath,"w") |
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() |
fh.close() |
|
|
self.response+="<h3>2. step: creating the downloadable file</h3>" |
self.response+="<h3>2. step: creating the downloadable file</h3>" |
Line 132 class versionedFileFolder(Folder,ECHO_ba
|
Line 142 class versionedFileFolder(Folder,ECHO_ba
|
{'label':'Generate Index.html','action':'generateIndexHTML'}, |
{'label':'Generate Index.html','action':'generateIndexHTML'}, |
{'label':'Generate Image Index.html','action':'generateIndexHTML_image'}, |
{'label':'Generate Image Index.html','action':'generateIndexHTML_image'}, |
{'label':'Generate history_template.html','action':'generateHistoryHTML'}, |
{'label':'Generate history_template.html','action':'generateHistoryHTML'}, |
{'label':'Import Folder','action':'impor<olderForm'}, |
{'label':'Generate addFileForm','action':'generateAddFileForm'}, |
|
{'label':'Import Folder','action':'importFolderForm'}, |
{'label':'Export Folder','action':'exportFolder'}, |
{'label':'Export Folder','action':'exportFolder'}, |
{'label':'Position of version number','action':'changeHistoryFileNamesForm'}, |
{'label':'Position of version number','action':'changeHistoryFileNamesForm'}, |
) |
) |
Line 306 class versionedFileFolder(Folder,ECHO_ba
|
Line 317 class versionedFileFolder(Folder,ECHO_ba
|
"""lege standard addfileform an""" |
"""lege standard addfileform an""" |
#TODO: write generateaddfileform only a dummy at them moment |
#TODO: write generateaddfileform only a dummy at them moment |
|
|
if not self.ZopeFind(self,obj_ids=['addFileForm.dtml']): |
if not self.ZopeFind(self,obj_ids=['addFileForm.html']): |
zt=ZopePageTemplate('index.html') |
zt=ZopePageTemplate('addFileForm.html') |
self._setObject('index.html',zt) |
self._setObject('addFileForm.html',zt) |
default_content_fn = os.path.join(package_home(globals()), |
default_content_fn = os.path.join(package_home(globals()), |
'zpt/versionFileFolderMain.zpt') |
'zpt/fileAdd_template.zpt') |
text = open(default_content_fn).read() |
text = open(default_content_fn).read() |
zt.pt_edit(text, 'text/html') |
zt.pt_edit(text, 'text/html') |
|
|
Line 422 class versionedFileFolder(Folder,ECHO_ba
|
Line 433 class versionedFileFolder(Folder,ECHO_ba
|
|
|
|
|
def header_html(self): |
def header_html(self): |
"""zusätzlicher header""" |
"""zusaetzlicher header""" |
ext=self.ZopeFind(self,obj_ids=["header.html"]) |
ext=self.ZopeFind(self,obj_ids=["header.html"]) |
if ext: |
if ext: |
return ext[0][1]() |
return ext[0][1]() |
Line 444 class versionedFileFolder(Folder,ECHO_ba
|
Line 455 class versionedFileFolder(Folder,ECHO_ba
|
|
|
def addFileForm(self): |
def addFileForm(self): |
"""add a file""" |
"""add a file""" |
ext=self.ZopeFind(self,obj_ids=["addFileForm.dtml"]) |
ext=getattr(self,'addFileForm.html',None) |
|
logging.error("Found %s"%ext) |
if ext: |
if ext: |
return ext[0][1]('',globals(),version='1',AUTHENTICATED_USER=self.REQUEST.AUTHENTICATED_USER) |
out=ext |
|
else: |
|
|
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 652 class versionedFileObject(File):
|
Line 665 class versionedFileObject(File):
|
"""get version""" |
"""get version""" |
return self.versionNumber |
return self.versionNumber |
|
|
security.declarePublic('getVersionComment') |
|
def getVersionComment(self): |
|
"""get version""" |
|
return self.versionComment |
|
|
|
|
|
|
|
Line 858 class versionedFile(CatalogAware,Folder)
|
Line 867 class versionedFile(CatalogAware,Folder)
|
lastVersion.versionNumber=1 |
lastVersion.versionNumber=1 |
return lastVersion |
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): |
def diff(self,data): |
"""differenz between lastversion and data""" |
"""differenz between lastversion and data""" |
d=Differ() |
d=Differ() |