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

version 1.37, 2004/07/21 16:36:18 version 1.42, 2004/08/31 17:26:05
Line 193  class ECHO_sqlElement(SimpleItem): Line 193  class ECHO_sqlElement(SimpleItem):
     meta_type="ECHO_sqlElement"      meta_type="ECHO_sqlElement"
     baseUrl=""      baseUrl=""
           
   
       
     def __init__(self,id,title,query,field,searchField,baseUrl,weight,contentType):      def __init__(self,id,title,query,field,searchField,baseUrl,weight,contentType):
         """init"""          """init"""
         self.id=id          self.id=id
Line 204  class ECHO_sqlElement(SimpleItem): Line 206  class ECHO_sqlElement(SimpleItem):
         else:          else:
             self.searchField=searchField              self.searchField=searchField
         self.baseUrl=baseUrl          self.baseUrl=baseUrl
         self.weight=weight  
         self.content=contentType          self.content=contentType
   
     manage_options= SimpleItem.manage_options+(      manage_options= SimpleItem.manage_options+(
Line 254  class ECHO_sqlElement(SimpleItem): Line 256  class ECHO_sqlElement(SimpleItem):
   
     def searchQuery(self,query=None,obj=None):      def searchQuery(self,query=None,obj=None):
         #presently a hack, tests if search is of the search method, if not look at the next level.          #presently a hack, tests if search is of the search method, if not look at the next level.
           #
           #return self.ZSQLsimpleSearch(var=self.query)
         if not query:          if not query:
             query=self.query              query=self.query
                           
Line 266  class ECHO_sqlElement(SimpleItem): Line 270  class ECHO_sqlElement(SimpleItem):
                 return []                  return []
   
           
           
       
     def getNavList(self):      def getNavList(self):
         """ausgabe der treffer list für navigation"""          """ausgabe der treffer list für navigation"""
                   
Line 306  class ECHO_pageTemplate(ZopePageTemplate Line 312  class ECHO_pageTemplate(ZopePageTemplate
                                        'html/ECHO_pageTemplateDefault.html')                                         'html/ECHO_pageTemplateDefault.html')
   
     manage_options=ZopePageTemplate.manage_options+(      manage_options=ZopePageTemplate.manage_options+(
         {'label':'Main Config','action':'changeECHO_pageTemplateWeightForm'},          {'label':'Main Config','action':'changeECHO_pageTemplateMainForm'},
         )          )
   
     def content_html(self):      def content_html(self):
     """content_html"""      """content_html"""
     return content_html(self,'pageTemplate')      return content_html(self,'pageTemplate')
   
     def changeECHO_pageTemplateWeightForm(self):      def changeECHO_pageTemplateMainForm(self):
         """change"""          """change"""
         pt=PageTemplateFile('Products/ECHO_content/zpt/ChangeECHO_pageTemplateWeight.zpt').__of__(self)          pt=PageTemplateFile('Products/ECHO_content/zpt/ChangeECHO_pageTemplateMain.zpt').__of__(self)
         return pt()          return pt()
   
     def changeECHO_pageTemplateWeight(self,weight,contentType,label,RESPONSE=None):      def changeECHO_pageTemplateMain(self,weight,contentType,label,description,RESPONSE=None):
         """change"""          """change"""
         self.weight=weight          self.weight=weight
         self.contentType=contentType          self.contentType=contentType
         self.label=label          self.label=label
           self.description=description
                   
         if RESPONSE is not None:          if RESPONSE is not None:
             RESPONSE.redirect('manage_main')              RESPONSE.redirect('manage_main')
Line 410  class ECHO_navigation(Folder): Line 417  class ECHO_navigation(Folder):
     """Navigations Element"""      """Navigations Element"""
     meta_type="ECHO_Navigation"      meta_type="ECHO_Navigation"
   
       def ECHOFormatListStr(self,list,search="\n",replace="<br>"):
           """formatiert liste im str"""
       if list:
               return re.sub(search,replace,list)
           else:
           return 
   
       def ECHO_cacheManageForm(self):
           """change form"""
           pt=PageTemplateFile('Products/ECHO_content/zpt/ECHO_cacheManageForm').__of__(self)
           pt.content_type="text/html"
           return pt()
   
       def ECHO_cacheManage(self,cacheManagerName=None,deleteCache=None, activateCache=None,RESPONSE=None):
           """cachemanager"""
           if cacheManagerName=="": chacheManagerName=None
           
           self.cacheManagerName=cacheManagerName
           self.setCache(managerName=cacheManagerName)
           
           if deleteCache:
               self.deleteCache()
   
           print activateCache
           self.activateCache=activateCache
   
           if RESPONSE is not None:
               RESPONSE.redirect('manage_main')
       
       def setCache(self,obj=None,RESPONSE=None,managerName='CacheManager'):
           """setze alle collections auf cache = CacheManager"""
   
   
           if not obj:
               obj = self
               
           entries=obj.ZopeFind(obj,obj_metatypes=['ECHO_collection'],search_sub=1)
   
           for entry in entries:
               #print entry[0]
               entry[1].ZCacheable_setManagerId(managerName)
   
           
           return "changed all CM in: "+self.title
   
     displayedMetaTypes=displayTypes      displayedMetaTypes=displayTypes
   
     def getImageViewers(self):      def getImageViewers(self):
Line 429  class ECHO_navigation(Folder): Line 481  class ECHO_navigation(Folder):
   
     manage_options = Folder.manage_options+(      manage_options = Folder.manage_options+(
         {'label':'Main Config','action':'ECHO_navigationConfigForm'},          {'label':'Main Config','action':'ECHO_navigationConfigForm'},
           {'label':'Cache','action':'ECHO_cacheManageForm'},
   
         )          )
   
     def ECHO_navigationConfigForm(self):      def ECHO_navigationConfigForm(self):
Line 464  class ECHO_navigation(Folder): Line 518  class ECHO_navigation(Folder):
         temp=re.sub("/",".",temp)          temp=re.sub("/",".",temp)
         temp="self.aq_parent"+temp          temp="self.aq_parent"+temp
                   
           
         objtemp=eval(temp)          objtemp=eval(temp)
         nav={}          nav={}
         obj=objtemp  
   
           #check if cash is enabled and if already exists and if not empty
           if getattr(self,'_v_hash',None) and getattr(self,'activateCache',None) and self._v_hash.get(str(depth),None):
              
              return self._v_hash[str(depth)]
                   
           # if not generate new hash
           obj=objtemp      
   
         for keys in obj.ZopeFind(obj,obj_metatypes=self.displayedMetaTypes):          for keys in obj.ZopeFind(obj,obj_metatypes=self.displayedMetaTypes):
             x=keys[1]              x=keys[1]
               
             if hasattr(x,"meta_type"):  
   
                 if x.meta_type in self.displayedMetaTypes:  
                      
                     if depth>1:                      if depth>1:
                         nav[x.getId()]=(self.getColls(x,int(depth)-1,checkOnly),x)                          nav[x.getId()]=(self.getColls(x,int(depth)-1,checkOnly),x)
                     else:                      else:
                         nav[x.getId()]=(None,x)                          nav[x.getId()]=(None,x)
                                           
           #store in cache if activated
           if getattr(self,'activateCache',None):
               
               try:
                   self._v_hash[str(depth)]={}
               except:
                   self._v_hash={}
                   self._v_hash[str(depth)]={}
   
               for x in nav.keys():
                   self._v_hash[str(depth)][x]=nav[x]
   
         #print nav  
         return nav          return nav
   
     def barFromHash(self,hash,start=None,sortField=None,location=None):      def barFromHash(self,hash,start=None,sortField=None,location=None):
Line 493  class ECHO_navigation(Folder): Line 558  class ECHO_navigation(Folder):
         if not start:          if not start:
             temp=hash              temp=hash
             sortField="weight"              sortField="weight"
         else: # list mit pfad zum hash          else: # liste mit pfad zum hash
             temp=hash              temp=hash
             #print "HI",sortField              #print "HI",sortField
             if not sortField:              if not sortField:
Line 537  class ECHO_navigation(Folder): Line 602  class ECHO_navigation(Folder):
                     # 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:
                             label=temp[x][1].label.encode('utf-8','ignore')                              label=temp[x][1].label.encode('utf-8','ignore')
                                                           except:
                                   label=temp[x][1].label
                         else:                          else:
                             label=temp[x][1].title.encode('utf-8')                              label=temp[x][1].title.encode('utf-8')
                     else:                      else:

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


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