--- ECHO_content/ECHO_Nav.py 2006/01/16 16:25:18 1.70 +++ ECHO_content/ECHO_Nav.py 2006/02/13 16:41:49 1.73 @@ -96,7 +96,14 @@ class ECHO_ZCatalogElement(SimpleItem): if RESPONSE is not None: RESPONSE.redirect('manage_main') def getKeywordList(self): - return getattr(self,self.catalogId).uniqueValuesFor(self.field) + try: + return getattr(self,self.catalogId).uniqueValuesFor(self.field) + except: + #return getattr(self,self.catalogId).query(self.field) + + list= [x for x in getattr(getattr(self,self.catalogId),self.field).words()] + list.sort() + return list def getNavList(self): """ausgabe der treffer list fuer navigation""" @@ -482,8 +489,10 @@ class ECHO_navigation(Folder): if not str: return "" if type(str) is StringType: - - return str.decode('utf-8') + try: + return str.decode('utf-8') + except: + return str.decode('latin-1') else: return str @@ -682,13 +691,14 @@ class ECHO_navigation(Folder): # add label falls existiert und nicht leer if hasattr(temp[x][1],'label'): - if not temp[x][1].label=='': + if not temp[x][1].getLabel()=='': label=temp[x][1].getLabel() else: - try: - label=temp[x][1].getTitle() - except: - return "ERROR" + try: + label=temp[x][1].getTitle() + except: + zLOG.LOG("ECHO_Nav",zLOG.ERROR,"%s has neither getLabel nor getTile implemented"%temp[x][1].getId()) + label="" else: label=temp[x][1].getTitle() @@ -841,7 +851,7 @@ class ECHO_navigation(Folder): #except: # keys="" - + return keys def numberOfMainNavElements(self):