Annotation of MPIWGWeb/MPIWGTemplate.py, revision 1.1.2.1
1.1.2.1 ! dwinter 1: from Products.PageTemplates.PageTemplate import PageTemplate
! 2: from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate
! 3: from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder
! 4: from Products.ZCatalog.CatalogPathAwareness import CatalogAware
! 5: from OFS.Image import Image
! 6: from Globals import package_home
! 7: import urllib
! 8: import MPIWGStaff
! 9: import string
! 10: import re
! 11: import os
! 12: from types import *
! 13: import logging
! 14: import xmlhelper # Methoden zur Verwaltung der projekt xml
! 15: from OFS.SimpleItem import SimpleItem
! 16: from OFS.Folder import Folder
! 17: from Products.ZSQLMethods.SQL import SQLConnectionIDs
! 18: from AccessControl import ClassSecurityInfo
! 19: from bibliography import *
! 20: import time
! 21: import xml.dom.minidom
! 22: import sys
! 23: from Ft.Xml.XPath import Evaluate
! 24: from Ft.Xml.XPath.Context import Context
! 25: from Ft.Xml.Domlette import NonvalidatingReader,PrettyPrint, Print
! 26: from Ft.Xml import EMPTY_NAMESPACE
! 27: import copy
! 28: import updatePersonalWWW
! 29: import MPIWGStaff
! 30: from MPIWGHelper import *
! 31:
! 32: class MPIWGTemplate(ZopePageTemplate):
! 33: """Create a layout Template for different purposes"""
! 34:
! 35: meta_type="MPIWGTemplate"
! 36:
! 37: manage_options=ZopePageTemplate.manage_options+(
! 38: {'label':'Change Weight','action':'changeWeightForm'},
! 39: )
! 40:
! 41: def changeWeightForm(self):
! 42: """change weight form"""
! 43: pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','MPIWGTemplateChangeWeight.zpt')).__of__(self)
! 44: return pt()
! 45:
! 46: def changeWeight(self,weight,RESPONSE=None):
! 47: """change weight"""
! 48: self.weight=weight
! 49: if RESPONSE is not None:
! 50: RESPONSE.redirect('manage')
! 51:
! 52:
! 53: def __init__(self, id, text=None, content_type=None,MPIWGType=None):
! 54: self.id = str(id)
! 55:
! 56:
! 57:
! 58: self.ZBindings_edit(self._default_bindings)
! 59: if text is None:
! 60: self._default_content_fn = os.path.join(package_home(globals()),
! 61: 'zpt/MPIWG_%s_template_standard.zpt'%MPIWGType)
! 62: text = open(self._default_content_fn).read()
! 63: self.pt_edit(text, content_type)
! 64:
! 65:
! 66: """change form"""
! 67:
! 68: def isActiveItem(self):
! 69: """teste ob ausgewaehlt"""
! 70: if self.absolute_url()==self.REQUEST['URL']:
! 71: return "aktiv"
! 72: else:
! 73: return ""
! 74:
! 75: def manage_addMPIWGTemplateForm(self):
! 76: """Form for adding"""
! 77: pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt/AddMPIWGTemplate.zpt')).__of__(self)
! 78: return pt()
! 79:
! 80: from urllib import quote
! 81:
! 82:
! 83: def manage_addMPIWGTemplate(self, MPIWGType,id, text="",title=None,weight=0,REQUEST=None):
! 84: "Add a Page Template with optional file content."
! 85: if type(MPIWGType)==StringType:
! 86: MPIWGTypes=[MPIWGType]
! 87: else:
! 88: MPIWGTypes=MPIWGType
! 89:
! 90: for singleType in MPIWGTypes:
! 91:
! 92:
! 93: if REQUEST is None:
! 94: self._setObject(id, MPIWGTemplate(id, text,EchoType=singleType))
! 95: ob = getattr(self, id)
! 96:
! 97: if title:
! 98: ob.pt_setTitle(title)
! 99: return ob
! 100: else:
! 101: file = REQUEST.form.get('file')
! 102: headers = getattr(file, 'headers', None)
! 103: if headers is None or not file.filename:
! 104: zpt = MPIWGTemplate(id,MPIWGType=singleType)
! 105: else:
! 106: zpt = MPIWGTemplate(id, file, headers.get('content_type'))
! 107:
! 108: self._setObject(id, zpt)
! 109: ob = getattr(self, id)
! 110: if title:
! 111: ob.pt_setTitle(title)
! 112:
! 113: try:
! 114: u = self.DestinationURL()
! 115: except AttributeError:
! 116: u = REQUEST['URL1']
! 117:
! 118: ob = getattr(self, id)
! 119: ob.weight=weight
! 120:
! 121: REQUEST.RESPONSE.redirect(u+'/manage_main')
! 122: return ''
! 123:
! 124:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>