Annotation of MPIWGWeb/MPIWGLink.py, revision 1.1.2.1
1.1.2.1 ! dwinter 1: from Products.PageTemplates.PageTemplateFile import PageTemplateFile
! 2: from Products.PageTemplates.PageTemplate import PageTemplate
! 3: from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate
! 4: from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder
! 5: from Products.ZCatalog.CatalogPathAwareness import CatalogAware
! 6: from OFS.Image import Image
! 7: from Globals import package_home
! 8: import urllib
! 9: import MPIWGStaff
! 10: import string
! 11: import re
! 12: import os
! 13: from types import *
! 14: import logging
! 15: import xmlhelper # Methoden zur Verwaltung der projekt xml
! 16: from OFS.SimpleItem import SimpleItem
! 17: from OFS.Folder import Folder
! 18: from Products.ZSQLMethods.SQL import SQLConnectionIDs
! 19: from AccessControl import ClassSecurityInfo
! 20: from bibliography import *
! 21: import time
! 22: import xml.dom.minidom
! 23: import sys
! 24: from Ft.Xml.XPath import Evaluate
! 25: from Ft.Xml.XPath.Context import Context
! 26: from Ft.Xml.Domlette import NonvalidatingReader,PrettyPrint, Print
! 27: from Ft.Xml import EMPTY_NAMESPACE
! 28: import copy
! 29: import updatePersonalWWW
! 30: import MPIWGStaff
! 31:
! 32: from MPIWGHelper import *
! 33: class MPIWGLink(SimpleItem):
! 34: """create a symbolic link to another page"""
! 35:
! 36: meta_type="MPIWGLink"
! 37:
! 38: def isActiveItem(self):
! 39: """teste ob ausgewaehlt"""
! 40: #url1 beim link anstelle von url1, da link jeweils index_html als url hat.
! 41: if self.absolute_url()==self.REQUEST['URL1']:
! 42: return "aktiv"
! 43: else:
! 44: return ""
! 45:
! 46: def __init__(self,id,link,title='',weight=''):
! 47: """init mpiwglink"""
! 48: self.id=id
! 49: self.link=link
! 50: self.title=title
! 51: self.weight=weight
! 52:
! 53: def getObj(self):
! 54: """bekomme original"""
! 55: ## objpath=self.link.replace("/",".")
! 56: ## if objpath[0]!=".":
! 57: ## objpath="."+objpath
! 58:
! 59: ## print objpath
! 60: ## return eval("self"+objpath)
! 61:
! 62:
! 63: splitted=self.link.lstrip().split("/")
! 64: obj=self
! 65: for x in splitted:
! 66: if not x=="":
! 67: obj=getattr(obj,x)
! 68:
! 69: return obj
! 70:
! 71: def getWeight(self):
! 72: if self.linkWeight and self.linkWeight!="":
! 73: return self.linkWeight
! 74: else:
! 75: return self.getObj().weight
! 76:
! 77: manage_options=(
! 78: {'label':'main config','action':'changeLinkForm'},
! 79: )+SimpleItem.manage_options
! 80:
! 81:
! 82: def changeLinkForm(self):
! 83: """change MPIWG link"""
! 84: pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','MPIWGLinkChange.zpt')).__of__(self)
! 85: return pt()
! 86:
! 87: def changeLink(self,link,title,weight,RESPONSE=None):
! 88: """change links"""
! 89: self.link=link
! 90: self.title=title
! 91: self.weight=weight
! 92:
! 93: if RESPONSE is not None:
! 94: RESPONSE.redirect('manage')
! 95:
! 96: def index_html(self,**argv):
! 97: """index"""
! 98:
! 99:
! 100:
! 101: try:
! 102: return self.getObj().pt_render(extra_context={'here':self})
! 103: except:
! 104: self.REQUEST.RESPONSE.redirect(self.getObj().absolute_url())
! 105:
! 106:
! 107:
! 108: def manage_addMPIWGLinkForm(self):
! 109: """Form for adding link"""
! 110: pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt/AddMPIWGLink.zpt')).__of__(self)
! 111: return pt()
! 112:
! 113: def manage_addMPIWGLink(self,id,link,title,weight,RESPONSE=None):
! 114: """add link"""
! 115: newObj=MPIWGLink(id,link,title,weight)
! 116:
! 117: self._setObject(id,newObj)
! 118:
! 119: if RESPONSE is not None:
! 120: RESPONSE.redirect('manage_main')
! 121:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>