--- MPIWGWeb/MPIWGStaff.py 2004/07/29 08:18:10 1.5 +++ MPIWGWeb/MPIWGStaff.py 2004/10/01 16:44:36 1.6 @@ -1,15 +1,31 @@ """This file contains the classes for the organization of the staff""" - from OFS.Folder import Folder from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder from Products.PageTemplates.PageTemplateFile import PageTemplateFile from Products.PageTemplates.PageTemplate import PageTemplate +import os +from Globals import package_home + + +def getTemplate(self, tpName): + """get a template file either form the instance or from the product""" + ext=self.ZopeFind(self.aq_parent,obj_ids=[tpName]) + + if ext: + return getattr(self,ext[0][1].getId()) + + pt=PageTemplateFile(os.path.join(package_home(globals()), 'zpt/'+tpName)).__of__(self) + return pt class MPIWGStaff(ZSQLExtendFolder): """Staff""" meta_type="MPIWGStaff" + manage_options = Folder.manage_options+( + {'label':'Edit','action':'changeMPIWGStaffForm'}, + ) + def __init__(self,id, lastName,firstName): """init""" self.id=id @@ -17,33 +33,24 @@ class MPIWGStaff(ZSQLExtendFolder): self.lastName=lastName self.firstName=firstName - manage_options = Folder.manage_options+( - {'label':'Edit','action':'changeMPIWGStaffForm'}, - ) def index_html(self): """show homepage""" - - ext=self.ZopeFind(self.aq_parent,obj_ids=["members_main"]) - - if ext: - return getattr(self,ext[0][1].getId())() - - pt=PageTemplateFile('Products/MPIWGWeb/zpt/members_main').__of__(self) + pt = getTemplate(self, "members_main") return pt() def publications_full(self): """show publication""" - pt=PageTemplateFile('Products/MPIWGWeb/zpt/publications_full').__of__(self) + pt=getTemplate(self, "publications_full") return pt() def talks_full(self): """show talks""" - pt=PageTemplateFile('Products/MPIWGWeb/zpt/talks_full').__of__(self) + pt=getTemplate(self, 'talks_full') return pt() def teaching_full(self): """show talks""" - pt=PageTemplateFile('Products/MPIWGWeb/zpt/teaching_full').__of__(self) + pt=getTemplate(self, 'teaching_full') return pt() def changeMPIWGStaffForm(self):