--- ECHO_content/ECHO_Nav.py 2005/12/13 12:45:21 1.69 +++ ECHO_content/ECHO_Nav.py 2006/02/03 20:41:29 1.72 @@ -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""" @@ -682,10 +689,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: - label=temp[x][1].getTitle() + 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() @@ -730,9 +741,11 @@ class ECHO_navigation(Folder): """test is path is already selected""" testStr=re.sub("/index_html",'',self.REQUEST.get('URL','')) - + + if len(item)<2: + return 0 #falls exakte Übereinstimmung dann immer 1 - if (testStr==item[1]) and (self.REQUEST.get('QUERY_STRING','')==''): + if (testStr==item[1]) and (self.REQUEST.get('QUERY_STRING','')==''): return 1 @@ -836,7 +849,7 @@ class ECHO_navigation(Folder): #except: # keys="" - + return keys def numberOfMainNavElements(self):