Diff for /ECHO_content/ECHO_Nav.py between versions 1.42 and 1.47

version 1.42, 2004/08/31 17:26:05 version 1.47, 2004/09/27 14:39:59
Line 324  class ECHO_pageTemplate(ZopePageTemplate Line 324  class ECHO_pageTemplate(ZopePageTemplate
         pt=PageTemplateFile('Products/ECHO_content/zpt/ChangeECHO_pageTemplateMain.zpt').__of__(self)          pt=PageTemplateFile('Products/ECHO_content/zpt/ChangeECHO_pageTemplateMain.zpt').__of__(self)
         return pt()          return pt()
   
     def changeECHO_pageTemplateMain(self,weight,contentType,label,description,RESPONSE=None):      def changeECHO_pageTemplateMain(self,weight,contentType,label,description,RESPONSE=None,isAlwaysClickable=None,suffix=None,prefix=None):
         """change"""          """change"""
         self.weight=weight          self.weight=weight
         self.contentType=contentType          self.contentType=contentType
         self.label=label          self.label=label
         self.description=description          self.description=description
           self.isAlwaysClickable=isAlwaysClickable
           self.suffix=suffix
           self.prefix=prefix
                   
         if RESPONSE is not None:          if RESPONSE is not None:
             RESPONSE.redirect('manage_main')              RESPONSE.redirect('manage_main')
Line 337  class ECHO_pageTemplate(ZopePageTemplate Line 340  class ECHO_pageTemplate(ZopePageTemplate
     def getLabel(self):      def getLabel(self):
         if hasattr(self,'label'):          if hasattr(self,'label'):
             return self.label.encode('utf-8')              return self.label.encode('utf-8')
           
         else:          else:
             return 0              return 0
                   
Line 438  class ECHO_navigation(Folder): Line 442  class ECHO_navigation(Folder):
         self.setCache(managerName=cacheManagerName)          self.setCache(managerName=cacheManagerName)
                   
         if deleteCache:          if deleteCache:
                   try:
             self.deleteCache()              self.deleteCache()
                   except:
                       for roots in self.ZopeFind(self,obj_metatypes=['ECHO_root'],search_sub=1):
                           roots[1].deleteCache()
                       
   
         print activateCache  
         self.activateCache=activateCache          self.activateCache=activateCache
   
         if RESPONSE is not None:          if RESPONSE is not None:
Line 596  class ECHO_navigation(Folder): Line 604  class ECHO_navigation(Folder):
                 if (temp[x][1].meta_type=="ECHO_sqlElement") or (temp[x][1].meta_type=="ECHO_ZCatalogElement"):                  if (temp[x][1].meta_type=="ECHO_sqlElement") or (temp[x][1].meta_type=="ECHO_ZCatalogElement"):
                           
                     for z in temp[x][1].getNavList():                      for z in temp[x][1].getNavList():
                         listNav.append((z[0],z[1],None))                          listNav.append((z[0],z[1],None,'',''))
                           
                 else:                  else:
                     # add label falls existiert und nicht leer                      # add label falls existiert und nicht leer
                     if hasattr(temp[x][1],'label'):                      if hasattr(temp[x][1],'label'):
                           
                         if not temp[x][1].label=='':                          if not temp[x][1].label=='':
                             try:                              try:
                                 label=temp[x][1].label.encode('utf-8','ignore')                                  label=temp[x][1].getLabel()
                             except:                              except:
                                 label=temp[x][1].label                                  label=temp[x][1].label
                         else:                          else:
Line 614  class ECHO_navigation(Folder): Line 623  class ECHO_navigation(Folder):
                     if location:                      if location:
                         loc=getattr(temp[x][1],'location','top')                          loc=getattr(temp[x][1],'location','top')
                         if (loc==location):                          if (loc==location):
                             listNav.append((label,createPath(self.absolute_url(),temp[x][1].absolute_url()),temp[x][1]))                              listNav.append((label,createPath(self.absolute_url(),temp[x][1].absolute_url()),temp[x][1],getattr(temp[x][1],'prefix',''),getattr(temp[x][1],'suffix','')))
                     else:                      else:
                         listNav.append((label,createPath(self.absolute_url(),temp[x][1].absolute_url()),temp[x][1]))                          listNav.append((label,createPath(self.absolute_url(),temp[x][1].absolute_url()),temp[x][1],getattr(temp[x][1],'prefix',''),getattr(temp[x][1],'suffix','')))
   
         return listNav          return listNav
   
Line 642  class ECHO_navigation(Folder): Line 651  class ECHO_navigation(Folder):
                           
     def isSelectedPath(self,item):      def isSelectedPath(self,item):
         """test is path is already selected"""          """test is path is already selected"""
         found=re.search("\?(.*)/",item[1])  
           testStr=re.sub("/index_html",'',self.REQUEST.get('URL',''))
   
           #falls exakte Übereinstimmung dann immer 1
           if (testStr==item[1]) and (self.REQUEST.get('QUERY_STRING','')==''):
               
               return 1
              
           found=re.search("\?(.*)",item[1])
           
         if found:          if found:
             temp=re.sub(" ","%20",found.group(0))              temp=re.sub(" ","%20",found.group(0))
             
             #print temp+"::"+self.REQUEST['QUERY_STRING']              #print temp+"::"+self.REQUEST['QUERY_STRING']
             if ("?"+self.REQUEST['QUERY_STRING'])==temp:              if ("?"+self.REQUEST['QUERY_STRING'])==temp:
                   if getattr(item[2],'isAlwaysClickable',None): #immer auswaehlbar?
                   
                       return 2
                   else:
                       return 1
   
           if (getattr(item[2],'meta_type','')=="ECHO_pageTemplate") and (re.search(item[1],self.REQUEST['URL'])):
               if getattr(item[2],'isAlwaysClickable',None): #immer auswaehlbar?
                   
                   return 2
               else:
                 return 1                  return 1
   
         if re.search(item[1]+"/",self.REQUEST['URL']):          if re.search(item[1]+"/",self.REQUEST['URL']):
               if getattr(item[2],'isAlwaysClickable',None): #immer auswaehlbar?
                   
                   return 2
               else:
             return 1              return 1
         else:          else:
             return 0              return 0
                   
           
           
       
     def buttonsFromHash(self,hash,start=None,orientation="horizontal"):      def buttonsFromHash(self,hash,start=None,orientation="horizontal"):
                   
         """Generate Buttons"""          """Generate Buttons"""

Removed from v.1.42  
changed lines
  Added in v.1.47


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