1: displayTypes = ['ZSQLExtendFolder','ZSQLBibliography','ECHO_group','ECHO_collection','ECHO_resource','ECHO_link']
2:
3: def checkOnlyOneInGroup(object):
4: """check if object is a group and if it containt only one element it return this element"""
5: displayedObjects=object.ZopeFind(object,obj_metatypes=displayTypes)
6: if len(displayedObjects)==1: # nur ein Object dann redirect auf dieses Object
7: return displayedObjects[0][1]
8: else:
9: return object
10:
11: def getSubCols(self,sortfield="weight",subColTypes= displayTypes):
12:
13:
14: ids=[]
15: displayedObjects=self.ZopeFind(self,obj_metatypes=subColTypes)
16:
17:
18: for entry in displayedObjects:
19: object=entry[1]
20: try:
21: if object.meta_type in subColTypes:
22: ids.append(object)
23:
24: except:
25: """nothing"""
26: try:
27: sortfield=self.sortfield
28: except:
29: """nothing"""
30:
31: tmplist=[]
32: for x in ids:
33: if hasattr(x,sortfield):
34: try:
35: x=int(x)
36: except:
37: """nothing"""
38: tmp=getattr(x,sortfield)
39: else:
40: tmp=10000000
41: tmplist.append((tmp,x))
42: tmplist.sort()
43: return [x for (key,x) in tmplist]
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>