Annotation of ECHO_content/ECHO_helpers.py, revision 1.12

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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>