Diff for /MPIWGWeb/Attic/MPIWGTemplate.py between versions 1.1.2.3 and 1.1.2.7

version 1.1.2.3, 2008/08/28 18:20:09 version 1.1.2.7, 2008/09/08 08:40:05
Line 35  def getSection(self): Line 35  def getSection(self):
           
     return sec      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):  class MPIWGTemplate(ZopePageTemplate):
     """Create a layout Template for different purposes"""      """Create a layout Template for different purposes"""
Line 75  class MPIWGTemplate(ZopePageTemplate): Line 88  class MPIWGTemplate(ZopePageTemplate):
             return ""              return ""
           
     getBreadcrumbs = getBreadcrumbs      getBreadcrumbs = getBreadcrumbs
       
     getSection = getSection      getSection = getSection
       getSubSection = getSubSection
       
       def harvest_page(self):
           """harvest main"""
           try:
               return self.pt_render()
           except:
               logging.error("cannot harvest: %s"%self.absolute_url())
           
   
                   
 def manage_addMPIWGTemplateForm(self):  def manage_addMPIWGTemplateForm(self):
Line 176  class MPIWGFolder(Folder): Line 197  class MPIWGFolder(Folder):
           
     getSection = getSection      getSection = getSection
           
       getSubSection = getSubSection
       
   
 def manage_addMPIWGFolderForm(self):  def manage_addMPIWGFolderForm(self):
     """Form for adding"""      """Form for adding"""
Line 188  def manage_addMPIWGFolder(self, id, titl Line 211  def manage_addMPIWGFolder(self, id, titl
     self.Destination()._setObject(id,newObj)      self.Destination()._setObject(id,newObj)
     if RESPONSE is not None:      if RESPONSE is not None:
         RESPONSE.redirect('manage_main')          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')
   
           
   

Removed from v.1.1.2.3  
changed lines
  Added in v.1.1.2.7


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