version 1.4, 2004/07/29 07:36:16
|
version 1.10, 2005/04/25 17:21:48
|
Line 1
|
Line 1
|
"""This file contains the classes for the organization of the staff""" |
"""This file contains the classes for the organization of the staff""" |
|
|
from OFS.Folder import Folder |
from OFS.Folder import Folder |
from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder |
from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder |
from Products.PageTemplates.PageTemplateFile import PageTemplateFile |
from Products.PageTemplates.PageTemplateFile import PageTemplateFile |
from Products.PageTemplates.PageTemplate import PageTemplate |
from Products.PageTemplates.PageTemplate import PageTemplate |
|
from Products.ZCatalog.CatalogPathAwareness import CatalogAware |
|
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: |
|
pt = getattr(self,ext[0][1].getId()) |
|
else: |
|
pt=PageTemplateFile(os.path.join(package_home(globals()), 'zpt/'+tpName)).__of__(self) |
|
assert(pt) |
|
return pt |
|
|
class MPIWGStaff(ZSQLExtendFolder): |
class MPIWGStaff(CatalogAware,ZSQLExtendFolder): |
"""Staff""" |
"""Staff""" |
|
|
meta_type="MPIWGStaff" |
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'}, |
|
) |
|
|
def __init__(self,id, lastName,firstName): |
def __init__(self,id, lastName,firstName): |
"""init""" |
"""init""" |
Line 17 class MPIWGStaff(ZSQLExtendFolder):
|
Line 39 class MPIWGStaff(ZSQLExtendFolder):
|
self.lastName=lastName |
self.lastName=lastName |
self.firstName=firstName |
self.firstName=firstName |
|
|
manage_options = Folder.manage_options+( |
|
{'label':'Edit','action':'changeMPIWGStaffForm'}, |
|
) |
|
def index_html(self): |
def index_html(self): |
"""show homepage""" |
"""show homepage""" |
ext=self.ZopeFind(self.aq_parent,obj_ids=["members_main"]) |
pt = getTemplate(self, "members_main") |
|
|
if ext: |
|
return getattr(self,ext[0][1].getId())() |
|
|
|
pt=PageTemplateFile('Products/MPIWGWeb/zpt/members_main').__of__(self) |
|
return pt() |
return pt() |
|
|
def publications_full(self): |
def publications_full(self): |
"""show publication""" |
"""show publication""" |
pt=PageTemplateFile('Products/MPIWGWeb/zpt/publications_full').__of__(self) |
pt=getTemplate(self, "publications_full_main") |
return pt() |
return pt() |
|
|
def talks_full(self): |
def talks_full(self): |
"""show talks""" |
"""show talks""" |
pt=PageTemplateFile('Products/MPIWGWeb/zpt/talks_full').__of__(self) |
pt=getTemplate(self, 'talks_full_main') |
return pt() |
return pt() |
|
|
def teaching_full(self): |
def teaching_full(self): |
"""show talks""" |
"""show talks""" |
pt=PageTemplateFile('Products/MPIWGWeb/zpt/teaching_full').__of__(self) |
pt=getTemplate(self, 'teaching_full_main') |
return pt() |
return pt() |
|
|
def changeMPIWGStaffForm(self): |
def changeMPIWGStaffForm(self): |
"""change form""" |
"""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() |
return pt() |
|
|
def changeMPIWGStaff(self,lastName,firstName,RESPONSE=None): |
def changeMPIWGStaff(self,lastName,firstName,RESPONSE=None): |
Line 63 class MPIWGStaff(ZSQLExtendFolder):
|
Line 77 class MPIWGStaff(ZSQLExtendFolder):
|
|
|
def manage_addMPIWGStaffForm(self): |
def manage_addMPIWGStaffForm(self): |
"""form for adding the project""" |
"""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() |
return pt() |
|
|
def manage_addMPIWGStaff(self,id,lastName,firstName,RESPONSE=None): |
def manage_addMPIWGStaff(self,id,lastName,firstName,RESPONSE=None): |