version 1.55, 2005/04/29 09:45:57
|
version 1.58, 2005/05/03 11:00:30
|
Line 55 class generateSet:
|
Line 55 class generateSet:
|
"""generateSetThread""" |
"""generateSetThread""" |
|
|
|
|
def __init__(self,filenames,filenamesIds,ImageViewerPath,ids,url,local=None,version="full"): |
def __init__(self,filenames,filenamesIds,ImageViewerPath,ids,url,local=None,version="working"): |
"""init generateSet""" |
"""init generateSet""" |
self.filenames=filenames |
self.filenames=filenames |
self.filenamesIds=filenamesIds |
self.filenamesIds=filenamesIds |
Line 74 class generateSet:
|
Line 74 class generateSet:
|
tempfile.tempdir=tdir |
tempfile.tempdir=tdir |
|
|
tmpPath=tempfile.mktemp() |
tmpPath=tempfile.mktemp() |
tmpZip=tempfile.mktemp()+".zip" |
tmpZip=tempfile.mktemp()+".gtz" |
tmpFn=os.path.split(tmpZip)[1] |
tmpFn=os.path.split(tmpZip)[1] |
|
|
if not os.path.exists(tempfile.tempdir): |
if not os.path.exists(tempfile.tempdir): |
Line 98 class generateSet:
|
Line 98 class generateSet:
|
self.response+=str("<p>Get File: %s<br>\n"%filename) |
self.response+=str("<p>Get File: %s<br>\n"%filename) |
|
|
if self.local: |
if self.local: |
|
|
if self.version=="working": |
if self.version=="working": |
|
|
sourcePath="/mpiwg/temp/online/scaled/small/"+self.ImageViewerPath+"/"+os.path.splitext(id[0])[0]+".jpg" |
sourcePath="/mpiwg/temp/online/scaled/small/"+self.ImageViewerPath+"/"+os.path.splitext(id[0])[0]+".jpg" |
else: |
else: |
sourcePath="/mpiwg/online/"+self.ImageViewerPath+"/"+id[0] |
sourcePath="/mpiwg/online/"+self.ImageViewerPath+"/"+id[0] |
Line 128 class generateSet:
|
Line 130 class generateSet:
|
try: |
try: |
nr=self.ids.index(id[0]) |
nr=self.ids.index(id[0]) |
except: |
except: |
self.reponse+=str("<p>Error in File: %s (possible missing)<br>\n"%id[0]) |
self.response+=str("<p>Error in File: %s (possible missing)<br>\n"%id[0]) |
|
|
|
|
nr=0 |
nr=0 |
Line 144 class generateSet:
|
Line 146 class generateSet:
|
self.response+=str("<p>Get File: %s<br>\n"%filename) |
self.response+=str("<p>Get File: %s<br>\n"%filename) |
|
|
if self.local: |
if self.local: |
sourcePath="/mpiwg/online/"+self.ImageViewerPath+"/"+self.ids[nr+1] |
sourcePath="/mpiwg/online/"+self.ImageViewerPath+"/"+self.ids[nr+i] |
targetPath=tmpPath+"/"+filename |
targetPath=tmpPath+"/"+filename |
try: |
try: |
shutil.copyfile(sourcePath,targetPath) |
shutil.copyfile(sourcePath,targetPath) |
|
|
except: |
except: |
self.response+=str("<p>Error in File: %s (missing?)<br>\n"%filename) |
self.response+=str("<p>Error in File: %s (missing?)<br>\n"%filename) |
|
|
Line 162 class generateSet:
|
Line 165 class generateSet:
|
fh.close() |
fh.close() |
|
|
self.response+="<h3>2. step: creating the downloadable file</h3>" |
self.response+="<h3>2. step: creating the downloadable file</h3>" |
self.response+="<p>Create Zip<br>" |
self.response+="<p>Create gtar<br>" |
self.response+="<p>This can take a while....<br>\n" |
self.response+="<p>This can take a while....<br>\n" |
|
|
fh=os.popen2("zip -u %s %s/*"%(tmpZip,tmpPath),1)[1] |
fh=os.popen2("gnutar zcvf %s %s/*"%(tmpZip,tmpPath),1)[1] |
self.response+="<br>" |
self.response+="<br>" |
for c in fh.read(): |
for c in fh.read(): |
self.response+=c |
self.response+=c |
Line 599 class ImageCollection(Folder, Persistent
|
Line 602 class ImageCollection(Folder, Persistent
|
filename=os.path.join(tdir,fn) |
filename=os.path.join(tdir,fn) |
|
|
|
|
self.REQUEST.RESPONSE.setHeader("Content-Disposition","""attachement; filename="%s" """%"image.zip") |
self.REQUEST.RESPONSE.setHeader("Content-Disposition","""attachement; filename="%s" """%"image.tgz") |
self.REQUEST.RESPONSE.setHeader("Content-Type","application/octet-stream") |
self.REQUEST.RESPONSE.setHeader("Content-Type","application/octet-stream") |
len=os.stat(filename)[6] |
len=os.stat(filename)[6] |
self.REQUEST.RESPONSE.setHeader("Content-Length",len) |
self.REQUEST.RESPONSE.setHeader("Content-Length",len) |
Line 1380 class ImageCollection(Folder, Persistent
|
Line 1383 class ImageCollection(Folder, Persistent
|
return filename |
return filename |
else: |
else: |
return fn |
return fn |
def index_html(self): |
def index_html(self,fn=None): |
"""main template collection""" |
"""main template collection""" |
|
print |
|
if fn: |
|
ret=[] |
|
|
|
if type(fn) is ListType: |
|
"""experimentell mehr als ein filename""" |
|
for filename in fn: |
|
ret.append((filename,'',1)) |
|
else: |
|
ret.append((fn,'',1)) |
|
|
|
self.REQUEST.SESSION['filenames']=ret |
|
#self.REQUEST.SESSION['filenamesIds']=fnIds |
|
|
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','overview_selected.zpt')).__of__(self) |
|
return pt() |
|
|
if self.REQUEST.has_key('filename'): |
if self.REQUEST.has_key('filename'): |
filen=self.REQUEST['filename'] |
filen=self.REQUEST['filename'] |
else: |
else: |