--- ImageArchive/ImageArchive.py 2004/01/06 15:44:13 1.8
+++ ImageArchive/ImageArchive.py 2004/01/12 13:25:26 1.13
@@ -208,44 +208,50 @@ class ImageCollection(Folder, Persistent
def nextImage(self,request,selected=None):
"""show nextimage"""
- ids=self.show_thumbs()
- if request.SESSION.has_key("filename"):
- filename=request.SESSION["filename"]
- try:
- nr=ids.index(filename)
- except:
+ try:
+ ids=self.show_thumbs()
+ if request.SESSION.has_key("filename"):
+ filename=request.SESSION["filename"]
+ try:
+ nr=ids.index(filename)
+ except:
+ nr=0
+ else:
nr=0
- else:
- nr=0
- if nr==len(ids)-1:
- return ""
- else:
- if selected:
- return "next image"
+ if nr==len(ids)-1:
+ return ""
else:
- return "next image"
-
+ if selected:
+ return "next image"
+ else:
+ return "next image"
+ except:
+ return ""
+
def prevImage(self,request,selected=None):
"""show nextimage"""
#return self.getId()
- ids=self.show_thumbs()
- if request.SESSION.has_key("filename"):
- filename=request.SESSION["filename"]
- try:
- nr=ids.index(filename)
- except:
+ try:
+ ids=self.show_thumbs()
+ if request.SESSION.has_key("filename"):
+ filename=request.SESSION["filename"]
+ try:
+ nr=ids.index(filename)
+ except:
+ nr=0
+ else:
nr=0
- else:
- nr=0
- if nr==0:
- return ""
- else:
- if selected:
- return "previous image"
+ if nr==0:
+ return ""
else:
- return "previous image"
+ if selected:
+ return "previous image"
+ else:
+ return "previous image"
+ except:
+ return ""
def meta_default(self,filename):
"""url der metadaten"""
@@ -400,27 +406,29 @@ class ImageCollection(Folder, Persistent
def firstSets(self,selected=None):
ids=self.show_thumbs()
- if selected:
- return "first sets"
- else:
- return "first sets"
+ if ids:
+ if selected:
+ return "first sets"
+ else:
+ return "first sets"
def lastSets(self,selected=None):
ids=self.show_thumbs()
- colRows=self.getColTimesRow()
-
- if colRows[1]:
- nr=len(ids)-colRows[0]*colRows[1]
- else:
- nr=0
-
- if nr<0:
- nr=0
-
- if selected:
- return "last set"
- else:
- return "last sets"
+ if ids:
+ colRows=self.getColTimesRow()
+
+ if colRows[1]:
+ nr=len(ids)-colRows[0]*colRows[1]
+ else:
+ nr=0
+
+ if nr<0:
+ nr=0
+
+ if selected:
+ return "last set"
+ else:
+ return "last sets"
@@ -428,26 +436,27 @@ class ImageCollection(Folder, Persistent
"""show nextimage"""
ids=self.show_thumbs()
colRows=self.getColTimesRow()
- if colRows[1]:
-
- if self.REQUEST.SESSION.has_key("filename"):
- filename=self.REQUEST.SESSION["filename"]
- try:
- nr=ids.index(filename)+colRows[0]*colRows[1]
- if nr>=len(ids):
- nr=len(ids)-1
- except:
+ if ids:
+ if colRows[1]:
+
+ if self.REQUEST.SESSION.has_key("filename"):
+ filename=self.REQUEST.SESSION["filename"]
+ try:
+ nr=ids.index(filename)+colRows[0]*colRows[1]
+ if nr>=len(ids):
+ nr=len(ids)-1
+ except:
+ nr=0
+ else:
nr=0
- else:
- nr=0
- if nr==len(ids)-1:
- return ""
- else:
- if selected:
- return "next set"
+ if nr==len(ids)-1:
+ return ""
else:
- return "next set"
+ if selected:
+ return "next set"
+ else:
+ return "next set"
def prevSets(self,selected=None):
@@ -455,27 +464,32 @@ class ImageCollection(Folder, Persistent
#return self.getId()
ids=self.show_thumbs()
colRows=self.getColTimesRow()
- if colRows[1]:
- if self.REQUEST.SESSION.has_key("filename"):
- filename=self.REQUEST.SESSION["filename"]
- try:
- nr=ids.index(filename)-colRows[0]*colRows[1]
- if nr<0:
+ if ids:
+ if colRows[1]:
+ if self.REQUEST.SESSION.has_key("filename"):
+ filename=self.REQUEST.SESSION["filename"]
+ try:
+ nr=ids.index(filename)-colRows[0]*colRows[1]
+ if nr<0:
+ nr=0
+ except:
nr=0
- except:
+ else:
nr=0
- else:
- nr=0
+ try:
+ num=ids.index(filename)
+ except:
+ num=0
- if ids.index(filename)==0:
- return ""
- else:
- if selected:
- return "previous sets"
+ if num==0:
+ return ""
else:
- return "previous sets"
- else:
- return ""
+ if selected:
+ return "previous sets"
+ else:
+ return "previous sets"
+ else:
+ return ""
def show_thumbs_selected_rows(self,numberOfColumns):
"""Ausgabe anzahl"""
@@ -499,13 +513,19 @@ class ImageCollection(Folder, Persistent
def setColTimesRow(self,cols,rows):
"""set coltimes row"""
RESPONSE=self.REQUEST.RESPONSE
-
- RESPONSE.setCookie("ImageViewerRows",rows)
+ if not rows:
+ rows=None
+ if rows=="":
+ rows=None
+
+ if rows:
+ RESPONSE.setCookie("ImageViewerRows",rows)
RESPONSE.setCookie("ImageViewerCols",cols)
RESPONSE.redirect(self.REQUEST['URL1']+"/setDone")
def getColTimesRow(self):
+ """coltimesrow"""
REQUEST=self.REQUEST
"""matrix"""
@@ -519,11 +539,15 @@ class ImageCollection(Folder, Persistent
rows=None
if REQUEST.cookies.has_key("ImageViewerCols"):
- print "COLS",REQUEST.cookies["ImageViewerCols"]
+ #print "COLS",REQUEST.cookies["ImageViewerCols"]
cols=int(REQUEST.cookies["ImageViewerCols"])
else:
cols=4
- print cols,rows
+
+ idsnumber=len(self.show_thumbs())
+ if rows:
+ if cols*rows >idsnumber:
+ rows=int(idsnumber/cols)+1
return (cols,rows)
@@ -545,9 +569,12 @@ class ImageCollection(Folder, Persistent
print "NOR:",numberOfRows
if numberOfRows:
- startPic=idsAll.index(startId)
- endPic=startPic+numberOfColumns*numberOfRows
- ids=idsAll[startPic:endPic]
+ try:
+ startPic=idsAll.index(startId)
+ endPic=startPic+numberOfColumns*numberOfRows
+ ids=idsAll[startPic:endPic]
+ except:
+ ids=idsAll
else:
ids=idsAll