--- ECHO_content/ECHO_collection.py 2004/04/28 15:29:55 1.50 +++ ECHO_content/ECHO_collection.py 2004/05/06 13:29:45 1.56 @@ -26,7 +26,7 @@ from Products.PageTemplates.PageTemplate from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate from Globals import Persistent, package_home from Acquisition import Implicit - +from ECHO_helpers import displayTypes try: from psycopg import libpq except: @@ -545,6 +545,32 @@ def manage_addECHO_externalLink(self,id, RESPONSE.redirect('manage_main') +class ECHO_link(ECHO_externalLink): + """external_link""" + + meta_type="ECHO_link" + + + def content_html(self): + """template fuer content""" + return content_html(self,'link') + +def manage_addECHO_linkForm(self): + """Form for external Links""" + pt=PageTemplateFile('Products/ECHO_content/zpt/AddECHO_linkForm.zpt').__of__(self) + return pt() + + +def manage_addECHO_link(self,id,title,label,description,contentType,responsible,link,weight,coords=None,credits=None,RESPONSE=None): + """Add an external Link""" + + newObj=ECHO_link(id,link,title,label,description,contentType,responsible,credits,weight,coords) + + self._setObject(id,newObj) + + if RESPONSE is not None: + RESPONSE.redirect('manage_main') + class ECHO_collection(Folder, Persistent, Implicit): """ECHO Collection""" @@ -830,8 +856,10 @@ class ECHO_collection(Folder, Persistent return self.showOverview() elif hasattr(self,'collection_index_template'): return self.collection_index_template() + elif hasattr(self,'main_index_template'): + return self.main_index_template() - pt=PageTemplateFile('Products/ECHO_content/zpt/ECHO_content_standard.zpt').__of__(self) + pt=PageTemplateFile('Products/ECHO_content/zpt/ECHO_main_index_template_standard.zpt').__of__(self) pt.content_type="text/html" return pt() @@ -908,6 +936,29 @@ class ECHO_group(ECHO_collection): {'label':'Rerender Links','action':'ECHO_rerenderLinksMD'}, {'label':'Graphics','action':'ECHO_graphicEntry'}, ) + + def index_html(self): + """standard page""" + displayedObjects=self.ZopeFind(self,obj_metatypes=displayTypes) + if len(displayedObjects)==1: # nur ein Object dann redirect auf dieses Object + return self.REQUEST.RESPONSE.redirect(displayedObjects[0][1].absolute_url()) + + if 'index.html' in self.__dict__.keys(): + return getattr(self,'index.html')() + + elif 'overview' in self.__dict__.keys(): + return self.showOverview() + elif hasattr(self,'group_index_template'): + return self.group_index_template() + elif hasattr(self,'collection_index_template'): + return self.collection_index_template() + elif hasattr(self,'main_index_template'): + return self.main_index_template() + + pt=PageTemplateFile('Products/ECHO_content/zpt/ECHO_main_index_template_standard.zpt').__of__(self) + pt.content_type="text/html" + return pt() + def ECHO_group_config(self): """Main configuration""" @@ -1004,7 +1055,7 @@ class ECHO_root(Folder,Persistent,Implic retStr="