--- MPIWGWeb/Attic/MPIWGTemplate.py 2008/09/08 08:40:05 1.1.2.7 +++ MPIWGWeb/Attic/MPIWGTemplate.py 2009/04/16 15:55:19 1.1.2.8 @@ -10,44 +10,6 @@ from AccessControl import ClassSecurityI from MPIWGHelper import * -def getBreadcrumbs(self): - """return list of breadcrumbs from here to the root""" - crumbs = [(self.title, self.absolute_url(), self)] - parent = self.aq_parent - if hasattr(parent, 'getBreadcrumbs'): - if self.title: - return parent.getBreadcrumbs() + crumbs - else: - # if there's no title, skip this level - return parent.getBreadcrumbs() - - return crumbs - - -def getSection(self): - """returns the current section name""" - p = self - sec = None - # descend parents to the root (and remember the last id) - while p is not None and p.meta_type != 'MPIWGRoot': - sec = p.getId() - p = p.aq_parent - - return sec - -def getSubSection(self): - """returns the current subsection name""" - p = self - sec = None - subsec = None - # descend parents to the root (and remember the last id) - while p is not None and p.meta_type != 'MPIWGRoot': - subsec = sec - sec = p.getId() - p = p.aq_parent - - return subsec - class MPIWGTemplate(ZopePageTemplate): """Create a layout Template for different purposes""" @@ -147,212 +109,4 @@ def manage_addMPIWGTemplate(self, MPIWGT REQUEST.RESPONSE.redirect(u+'/manage_main') return '' - - - -class MPIWGFolder(Folder): - """special Folder object for MPIWG website """ - - meta_type="MPIWGFolder" - - manage_options=Folder.manage_options+( - {'label':'Change Weight','action':'changeWeightForm'}, - {'label':'Main Config','action':'changeForm'}, - ) - - changeWeightForm = PageTemplateFile('zpt/MPIWGFolderChangeWeight', globals()) - changeForm = PageTemplateFile('zpt/MPIWGFolderConfig', globals()) - - def __init__(self, id, title=None, weight=0, canonicalName=None): - self.id = str(id) - self.weight = weight - if title is None: - self.title = id - else: - self.title = title - - if canonicalName is None: - self.canonicalName = self.id - else: - self.canonicalName = canonicalName - - def changeWeight(self,weight,RESPONSE=None): - """change weight""" - self.weight=weight - if RESPONSE is not None: - RESPONSE.redirect('manage_main') - - def changeMPIWGFolder(self, title=None, weight=None, canonicalName=None, RESPONSE=None): - """change everything""" - if title is not None: - self.title = title - if weight is not None: - self.weight = weight - if canonicalName is not None: - self.canonicalName = canonicalName - if RESPONSE is not None: - RESPONSE.redirect('manage_main') - - getBreadcrumbs = getBreadcrumbs - - getSection = getSection - - getSubSection = getSubSection - - -def manage_addMPIWGFolderForm(self): - """Form for adding""" - pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt/AddMPIWGFolder.zpt')).__of__(self) - return pt() - -def manage_addMPIWGFolder(self, id, title=None,weight=0,RESPONSE=None): - "Add a MPIWG Folder." - newObj=MPIWGFolder(id,title,weight) - self.Destination()._setObject(id,newObj) - if RESPONSE is not None: - RESPONSE.redirect('manage_main') - - - -class MPIWGFeature(Folder): - """special object for feature texts on the MPIWG website """ - - meta_type="MPIWGFeature" - - manage_options=Folder.manage_options+( - {'label':'Change Weight','action':'changeWeightForm'}, - {'label':'Main Config','action':'changeForm'}, - ) - - changeWeightForm = PageTemplateFile('zpt/MPIWGFeatureChangeWeight', globals()) - changeForm = PageTemplateFile('zpt/MPIWGFeatureConfig', globals()) - - def __init__(self, id, title=None, weight=0): - self.id = str(id) - self.weight = weight - if title is None: - self.title = id - else: - self.title = title - - # add language folder and sample templates - self.manage_addFolder('en') - folder = getattr(self, 'en') - introid = 'intro.pt' - folder._setObject(introid, ZopePageTemplate(introid)) - intro = getattr(folder,introid) - intro.pt_edit(open(os.path.join(package_home(globals()),'zpt/MPIWGFeature_template_intro.zpt')).read(),'text/html') - mainid = 'main.pt' - folder._setObject(mainid, ZopePageTemplate(mainid)) - main = getattr(folder,mainid) - main.pt_edit(open(os.path.join(package_home(globals()),'zpt/MPIWGFeature_template_main.zpt')).read(),'text/html') - - - def index_html(self): - """default index page""" - return self.getMain() - - def getFullTitle(self): - """returns the full title (from main.pt)""" - # get Language from MPIWGRoot - lang = self.getLang() - dir = getattr(self, lang, self.en) - pt = getattr(dir, 'main.pt') - t = pt.title - if not t: - t = self.title - - return t - - def getIntro(self, **args): - """returns the intro as PageTemplate""" - # get Language from MPIWGRoot - lang = self.getLang() - dir = getattr(self, lang, self.en) - pt = getattr(dir, 'intro.pt') - return pt(**args) - - def getMain(self, **args): - """returns the main part as PageTemplate""" - # get Language from MPIWGRoot - lang = self.getLang() - dir = getattr(self, lang, self.en) - pt = getattr(dir, 'main.pt') - return pt(**args) - - def getFrontpageImg(self): - """returns the image object for the frontpage""" - img = getattr(self, 'img-frontpage.jpg') - return img - - def getFrontpageImgUrl(self): - """returns the URL of the image object for the frontpage""" - img = getattr(self, 'img-frontpage.jpg') - return img.absolute_url() - - def getFrontpageThumb(self): - """returns the image object for the frontpage thumbnail""" - img = getattr(self, 'img-frontthumb.jpg') - return img - - def getFrontpageThumbUrl(self): - """returns the URL of the image object for the frontpage thumbnail""" - img = getattr(self, 'img-frontthumb.jpg') - return img.absolute_url() - - def getThumbImg(self): - """returns the image object for the sidebar thumbnail""" - img = getattr(self, 'img-thumb.jpg') - return img - - def getThumbImgUrl(self): - """returns the URL of the image object for the sidebar thumbnail""" - img = getattr(self, 'img-thumb.jpg') - return img.absolute_url() - - def changeWeight(self,weight,RESPONSE=None): - """change weight""" - self.weight=weight - if RESPONSE is not None: - RESPONSE.redirect('manage_main') - - def changeMPIWGFeature(self, title=None, weight=None, RESPONSE=None): - """change everything""" - if title is not None: - self.title = title - if weight is not None: - self.weight = weight - if RESPONSE is not None: - RESPONSE.redirect('manage_main') - - def getBreadcrumbs(self): - """return list of breadcrumbs from here to the root""" - crumbs = [(self.getFullTitle(), self.absolute_url(), self)] - parent = self.aq_parent - if hasattr(parent, 'getBreadcrumbs'): - if self.title: - return parent.getBreadcrumbs() + crumbs - else: - # if there's no title, skip this level - return parent.getBreadcrumbs() - - return crumbs - - getSection = getSection - - getSubSection = getSubSection - - -def manage_addMPIWGFeatureForm(self): - """Form for adding""" - pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt/AddMPIWGFeature.zpt')).__of__(self) - return pt() - -def manage_addMPIWGFeature(self, id, title=None,weight=0,RESPONSE=None): - "Add a MPIWG Feature object" - newObj=MPIWGFeature(id,title,weight) - self.Destination()._setObject(id,newObj) - if RESPONSE is not None: - RESPONSE.redirect('manage_main') - \ No newline at end of file