Diff for /MPIWGWeb/Attic/MPIWGTemplate.py between versions 1.1 and 1.1.2.14

version 1.1, 2008/06/24 11:16:26 version 1.1.2.14, 2012/02/27 09:36:19
Line 0 Line 1
   from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate
   from Products.PageTemplates.PageTemplateFile import PageTemplateFile
   from Globals import package_home
   import string
   import re
   import os
   import logging
   from OFS.Folder import Folder
   from AccessControl import ClassSecurityInfo
   from MPIWGHelper import *
   from ZODB import FileStorage, DB
   import transaction
   
   # dummy definitions for backwards compatibility
   import MPIWGFeature
   
   class MPIWGFeature(MPIWGFeature.MPIWGFeature):
       """deprecated! use class in MPIWGFeature.py"""
   
   import MPIWGFolder
   
   class MPIWGFolder(MPIWGFolder.MPIWGFolder):
       """deprecated! use class in MPIWGFolder.py"""
   
   
   
   class MPIWGTemplate(ZopePageTemplate):
       """Create a layout Template for different purposes"""
   
       meta_type="MPIWGTemplate"
   
       manage_options=ZopePageTemplate.manage_options+(
           {'label':'Change Weight','action':'changeWeightForm'},
           )
   
       def changeWeightForm(self):
           """change weight form"""
           pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','MPIWGTemplateChangeWeight.zpt')).__of__(self)
           return pt()
   
       def changeWeight(self,weight,RESPONSE=None):
           """change weight"""
           self.weight=weight
           if RESPONSE is not None:
               RESPONSE.redirect('manage')
   
           
       def __init__(self, id, text=None, content_type="text/html",MPIWGType=None):
           self.id = str(id)
           self.ZBindings_edit(self._default_bindings)
           if text is None:
               self._default_content_fn = os.path.join(package_home(globals()),
                                                  'zpt/MPIWG_%s_template_standard.zpt'%MPIWGType)
               text = open(self._default_content_fn).read()
           self.pt_edit(text, content_type)
   
       
       def isActiveItem(self):
           """teste ob ausgewaehlt"""
           if self.absolute_url()==self.REQUEST['URL']:
               return "aktiv"
           else:
               return ""
       
       getBreadcrumbs = getBreadcrumbs
       getSection = getSection
       getSubSection = getSubSection
       
       def harvest_page(self,mode="normal"):
           """harvest main"""
           
          
   
           # Ensure that a 'userdb' key is present
           # in the root
          
           templates = self.en.getHarvestCache()
           #templates = getattr(self,'getHarvestCache',self.en.getHarvestCache)()
           try:
               rendered = self.pt_render()
               templates[self.absolute_url()]=rendered
               logging.debug("harvest:"+self.absolute_url())
               transaction.commit()
               return rendered
           except:
               logging.error("cannot harvest: %s"%self.absolute_url())
           
           
          
           
           
                        
   def manage_addMPIWGTemplateForm(self):
       """Form for adding"""
       pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt/AddMPIWGTemplate.zpt')).__of__(self)
       return pt()
   
   
   
   def manage_addMPIWGTemplate(self, MPIWGType,id, text="",title=None,weight=0,REQUEST=None):
       "Add a Page Template with optional file content."
       if type(MPIWGType)==StringType:
           MPIWGTypes=[MPIWGType]
       else:
           MPIWGTypes=MPIWGType
           
       for singleType in MPIWGTypes:
   
   
           if REQUEST is None:
               self._setObject(id, MPIWGTemplate(id, text,EchoType=singleType))
               ob = getattr(self, id)
               
               if title:
                   ob.pt_setTitle(title)
               return ob
           else:
               file = REQUEST.form.get('file')
               headers = getattr(file, 'headers', None)
               if headers is None or not file.filename:
                   zpt = MPIWGTemplate(id,MPIWGType=singleType)
               else:
                   zpt = MPIWGTemplate(id, file, headers.get('content_type'))
   
               self._setObject(id, zpt)
               ob = getattr(self, id)
               if title:
                   ob.pt_setTitle(title)
   
               try:
                   u = self.DestinationURL()
               except AttributeError:
                   u = REQUEST['URL1']
   
       ob = getattr(self, id)
       ob.weight=weight
       
       REQUEST.RESPONSE.redirect(u+'/manage_main')
       return ''
       

Removed from v.1.1  
changed lines
  Added in v.1.1.2.14


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