--- MPIWGWeb/MPIWGStaff.py 2004/10/01 18:03:43 1.8 +++ MPIWGWeb/MPIWGStaff.py 2005/07/14 15:12:11 1.10.2.1 @@ -3,6 +3,7 @@ from OFS.Folder import Folder from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder from Products.PageTemplates.PageTemplateFile import PageTemplateFile from Products.PageTemplates.PageTemplate import PageTemplate +from Products.ZCatalog.CatalogPathAwareness import CatalogAware import os from Globals import package_home @@ -17,13 +18,19 @@ def getTemplate(self, tpName): assert(pt) return pt -class MPIWGStaff(ZSQLExtendFolder): +class MPIWGStaff(CatalogAware,ZSQLExtendFolder): """Staff""" meta_type="MPIWGStaff" + default_catalog='MembersCatalog' + + def PrincipiaSearchSource(self): + """Return cataloguable key for ourselves.""" + return str(self) manage_options = Folder.manage_options+( {'label':'Edit','action':'changeMPIWGStaffForm'}, + {'label':'Change Publications Special','action':'changePublications_specialForm'}, ) def __init__(self,id, lastName,firstName): @@ -33,11 +40,31 @@ class MPIWGStaff(ZSQLExtendFolder): self.lastName=lastName self.firstName=firstName + def index_html(self): """show homepage""" pt = getTemplate(self, "members_main") return pt() + def changePublications_specialForm(self): + """Priority publications manual field""" + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','changePublications_special.zpt')).__of__(self) + return pt() + + def changePublications_special(self,usePublicationsSpecial=None,specialPublicationsField=None,RESPONSE=None): + """change publications special params""" + if usePublicationsSpecial: + self.usePublicationsSpecial=True + + else: + self.usePublicationsSpecial=False + + self.specialPublicationsField=specialPublicationsField[0:] + + if RESPONSE is not None: + RESPONSE.redirect('manage_main') + + def publications_full(self): """show publication""" pt=getTemplate(self, "publications_full_main") @@ -55,7 +82,7 @@ class MPIWGStaff(ZSQLExtendFolder): def changeMPIWGStaffForm(self): """change form""" - pt=PageTemplateFile('Products/MPIWGWeb/zpt/edit_MPIWGStaff.zpt').__of__(self) + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','edit_MPIWGStaff.zpt')).__of__(self) return pt() def changeMPIWGStaff(self,lastName,firstName,RESPONSE=None): @@ -71,7 +98,7 @@ class MPIWGStaff(ZSQLExtendFolder): def manage_addMPIWGStaffForm(self): """form for adding the project""" - pt=PageTemplateFile('Products/MPIWGWeb/zpt/addMPIWGStaffForm.zpt').__of__(self) + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','addMPIWGStaffForm.zpt')).__of__(self) return pt() def manage_addMPIWGStaff(self,id,lastName,firstName,RESPONSE=None):