Mercurial > hg > MPIWGWeb
view MPIWGLink.py @ 248:a14e462fca1c
add license-page link to page footer.
author | casties |
---|---|
date | Tue, 18 Mar 2014 10:18:35 +0100 |
parents | ee79f6ba8d01 |
children |
line wrap: on
line source
from Products.PageTemplates.PageTemplateFile import PageTemplateFile from OFS.SimpleItem import SimpleItem import MPIWGHelper class MPIWGLink(SimpleItem): """create a symbolic link to another page""" meta_type="MPIWGLink" manage_options=( {'label':'main config','action':'changeLinkForm'}, )+SimpleItem.manage_options changeLinkForm = PageTemplateFile('zpt/link/manage_change', globals()) def __init__(self,id,link,title='',weight=''): """init mpiwglink""" self.id=id self.link=link self.title=title self.weight=weight def getObj(self): """bekomme original""" splitted=self.link.lstrip().split("/") obj=self for x in splitted: if not x=="": obj=getattr(obj,x) return obj def index_html(self,**argv): """index""" try: return self.getObj().pt_render(extra_context={'here':self}) except: self.REQUEST.RESPONSE.redirect(self.getObj().absolute_url()) def isActiveItem(self): """teste ob ausgewaehlt""" #url1 beim link anstelle von url1, da link jeweils index_html als url hat. if self.absolute_url()==self.REQUEST['URL1']: return "aktiv" else: return "" def getWeight(self): if self.linkWeight and self.linkWeight!="": return self.linkWeight else: return self.getObj().weight def changeLink(self,link,title,weight,RESPONSE=None): """change links""" self.link=link self.title=title self.weight=weight if RESPONSE is not None: RESPONSE.redirect('manage') def manage_addMPIWGLinkForm(self): """Form for adding link""" pt=PageTemplateFile('zpt/link/manage_add_MPIWGLink.zpt', globals()).__of__(self) return pt() def manage_addMPIWGLink(self,id,link,title,weight,RESPONSE=None): """add link""" newObj=MPIWGLink(id,link,title,weight) self._setObject(id,newObj) if RESPONSE is not None: RESPONSE.redirect('manage_main')