File:  [Repository] / MPIWGWeb / MPIWGStaff.py
Revision 1.6: download - view: text, annotated - select for diffs - revision graph
Fri Oct 1 16:44:36 2004 UTC (19 years, 8 months ago) by casties
Branches: MAIN
CVS tags: HEAD
publications_full etc. also take tamplates from the instance

    1: """This file contains the classes for the organization of the staff"""
    2: from OFS.Folder import Folder
    3: from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder
    4: from Products.PageTemplates.PageTemplateFile import PageTemplateFile
    5: from Products.PageTemplates.PageTemplate import PageTemplate
    6: import os
    7: from Globals import package_home
    8: 
    9: 
   10: def getTemplate(self, tpName):
   11:     """get a template file either form the instance or from the product"""
   12:     ext=self.ZopeFind(self.aq_parent,obj_ids=[tpName])
   13:     
   14:     if ext:
   15:         return getattr(self,ext[0][1].getId())
   16:     
   17:     pt=PageTemplateFile(os.path.join(package_home(globals()), 'zpt/'+tpName)).__of__(self)
   18:     return pt
   19: 
   20: class MPIWGStaff(ZSQLExtendFolder):
   21:     """Staff"""
   22: 
   23:     meta_type="MPIWGStaff"
   24: 
   25:     manage_options = Folder.manage_options+(
   26:         {'label':'Edit','action':'changeMPIWGStaffForm'},
   27:         )
   28:     
   29:     def __init__(self,id, lastName,firstName):
   30:         """init"""
   31:         self.id=id
   32:         self.title="%s, %s"%(lastName,firstName)
   33:         self.lastName=lastName
   34:         self.firstName=firstName
   35: 
   36:     def index_html(self):
   37:         """show homepage"""
   38:         pt = getTemplate(self, "members_main")
   39:         return pt()
   40: 
   41:     def publications_full(self):
   42:         """show publication"""
   43:         pt=getTemplate(self, "publications_full")
   44:         return pt()
   45: 
   46:     def talks_full(self):
   47:         """show talks"""
   48:         pt=getTemplate(self, 'talks_full')
   49:         return pt()
   50: 
   51:     def teaching_full(self):
   52:         """show talks"""
   53:         pt=getTemplate(self, 'teaching_full')
   54:         return pt()
   55:     
   56:     def changeMPIWGStaffForm(self):
   57:         """change form"""
   58:         pt=PageTemplateFile('Products/MPIWGWeb/zpt/edit_MPIWGStaff.zpt').__of__(self)
   59:         return pt()
   60: 
   61:     def changeMPIWGStaff(self,lastName,firstName,RESPONSE=None):
   62:         """change it"""
   63:         self.title="%s, %s"%(lastName,firstName)
   64:         self.lastName=lastName
   65:         self.firstName=firstName
   66: 
   67:         if RESPONSE is not None:
   68:             RESPONSE.redirect('manage_main')
   69: 
   70:     
   71: 
   72: def manage_addMPIWGStaffForm(self):
   73:     """form for adding the project"""
   74:     pt=PageTemplateFile('Products/MPIWGWeb/zpt/addMPIWGStaffForm.zpt').__of__(self)
   75:     return pt()
   76: 
   77: def manage_addMPIWGStaff(self,id,lastName,firstName,RESPONSE=None):
   78:     """add it"""
   79:     newObj=MPIWGStaff(id,lastName,firstName)
   80: 
   81:     self._setObject(id,newObj)
   82: 
   83: 
   84:     if RESPONSE is not None:
   85:         RESPONSE.redirect('manage_main')
   86: 
   87:     

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