File:  [Repository] / ECHO_content / ECHO_helpers.py
Revision 1.18: download - view: text, annotated - select for diffs - revision graph
Thu Sep 2 11:29:29 2004 UTC (19 years, 9 months ago) by dwinter
Branches: MAIN
CVS tags: HEAD
added zpts

    1: import socket
    2: import urllib
    3: 	
    4: def urlopen(url):
    5: 	"""urlopen mit timeout"""
    6: 	socket.setdefaulttimeout(5)
    7: 	return urllib.urlopen(url)
    8: #	urlopener = urllib.URLopener()
    9: #
   10: #	try:		
   11: #		con = urlopener.open(url)
   12: #		return con
   13: #	except timeoutsocket.Timeout:
   14: #		return None
   15: 
   16: 
   17: displayTypes = ['ZSQLExtendFolder','ZSQLBibliography','ECHO_group','ECHO_collection','ECHO_resource','ECHO_link','ECHO_sqlElement','ECHO_pageTemplate','ImageCollectionIFrame','VLP_resource','VLP_collection','VLP_essay','ECHO_ZCatalogElement']
   18: 
   19: 
   20: def checkOnlyOneInGroup(object): 
   21: 	"""check if object is a group and if it containt only one element it return this element"""
   22: 	displayedObjects=object.ZopeFind(object,obj_metatypes=displayTypes)
   23: 	if len(displayedObjects)==1: # nur ein Object dann redirect auf dieses Object
   24: 
   25: 		return displayedObjects[0][1]
   26: 	else:
   27: 		return object
   28: 
   29: def getSubCols(self,sortfield="weight",subColTypes= displayTypes):
   30: 
   31:         
   32:         ids=[]
   33: 	displayedObjects=self.ZopeFind(self,obj_metatypes=subColTypes)
   34: 	
   35: 	
   36: 	for entry in displayedObjects:
   37:             object=entry[1]
   38:             try:
   39:                 if object.meta_type in subColTypes:
   40: 			ids.append(object)
   41:                     
   42:             except:
   43:                 """nothing"""
   44:         try:
   45:             sortfield=self.sortfield
   46:         except:
   47:             """nothing"""
   48:             
   49:         tmplist=[]
   50:         for x in ids:
   51:             if hasattr(x,sortfield):
   52:                 try:
   53: 
   54:                     x=int(x)
   55:                 except:
   56:                     """nothing"""
   57:                 tmp=getattr(x,sortfield)
   58:             else:
   59:                 tmp=10000000
   60:             tmplist.append((tmp,x))
   61:         tmplist.sort()
   62:         return [x for (key,x) in tmplist]

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