File:  [Repository] / OSAS / OSA_system / OSAS_Root.py
Revision 1.15: download - view: text, annotated - select for diffs - revision graph
Thu Aug 19 19:01:17 2004 UTC (19 years, 10 months ago) by dwinter
Branches: MAIN
CVS tags: HEAD
utf-8 fixed

    1: from OFS.SimpleItem import SimpleItem
    2: from time import localtime,strftime
    3: from Acquisition import Implicit
    4: from OFS.Folder import Folder
    5: from Products.PageTemplates.PageTemplateFile import PageTemplateFile
    6: from Products.PageTemplates.PageTemplate import PageTemplate
    7: import urllib
    8: import re
    9: import xml.dom.minidom
   10: 
   11: class OSAS_ViewerObject(Folder):
   12:     """Beschreibung eines Viewers"""
   13:     meta_type="OSAS_ViewerObject"
   14:     
   15:     def __init__(self,id,title,prefix):
   16:         """init"""
   17:         self.id=id
   18:         self.title=title
   19:         self.prefix=prefix
   20: 
   21:     manage_options = Folder.manage_options+(
   22:         {'label':'Main Config','action':'changeViewerObjectForm'},
   23:         )
   24: 
   25:     def changeViewerObjectForm(self):
   26:         """Main configuration"""
   27:         pt=PageTemplateFile('Products/OSA_system/zpt/changeViewerObjectForm.zpt').__of__(self)
   28:         return pt()
   29: 
   30:     def changeViewerObject(self,title,prefix):
   31:         """Change RootFolderName"""
   32:         self.title=title
   33:         self.prefix=prefix
   34: 
   35:         
   36:         if RESPONSE is not None:
   37:             RESPONSE.redirect('manage_main')
   38: 
   39: 
   40: def manage_AddOSAS_ViewerObjectForm(self):
   41:     """interface for adding the viewer Object"""
   42:     pt=PageTemplateFile('Products/OSA_system/zpt/AddOSAS_ViewerObject.zpt').__of__(self)
   43:     return pt()
   44: 
   45: def manage_AddOSAS_ViewerObject(self,id,title,prefix,RESPONSE=None):
   46:     """add the OSAS_root"""
   47:     newObj=OSAS_ViewerObject(id,title,prefix)
   48:     self._setObject(id,newObj)
   49:     if RESPONSE is not None:
   50:         RESPONSE.redirect('manage_main')
   51: 
   52:     
   53: class OSAS_Root(Folder,Implicit):
   54:     """Implicit Folder of the  Storage Systems"""
   55:     def __init__(self,id,RootFolderName,DigILibURL,uploadServletUrl):
   56:         """initialize a new instance"""
   57:         self.id = id
   58:         self.RootFolderName = RootFolderName
   59:         self.DigILibURL=DigILibURL
   60:         self.uploadServletUrl=uploadServletUrl
   61:         
   62:     meta_type="OSAS_Root"
   63: 
   64:     manage_options = Folder.manage_options+(
   65:         {'label':'Main Config','action':'Root_config'},
   66:         )
   67: 
   68:     
   69:         
   70:     def setDigILibURL(self):
   71:         """set"""
   72:         self.DigILibURL=""
   73:         
   74:     def Root_config(self):
   75:         """Main configuration"""
   76:         pt=PageTemplateFile('Products/OSA_system/zpt/ConfigOSAS_Root.zpt').__of__(self)
   77:         return pt()
   78: 
   79:     def change_OSAS_Root(self,RootFolderName,DigILibURL,uploadServletUrl,RESPONSE=None):
   80:         """Change RootFolderName"""
   81:         self.RootFolderName=RootFolderName
   82:         self.DigILibURL=DigILibURL
   83:         self.uploadServletUrl=uploadServletUrl
   84:         
   85:         if RESPONSE is not None:
   86:             RESPONSE.redirect('manage_main')
   87: 
   88:     def date(self):
   89:         """gives formatted date"""
   90: 	return strftime("%d.%m.%Y",localtime())	
   91: 
   92:     def getUploadServletUrl(self):
   93:         """get url"""
   94:         try:
   95:             self.uploadServletUrl=uploadServletUrl
   96:         except:
   97:             return "http://foxridge.rz-berlin.mpg.de:8000/upload/up"
   98: 
   99:     def downloadExternalXML(self,index_meta_url,xml_url):
  100:         """lade xml file"""
  101:         #print "GI"
  102:         #print xml_url
  103:         xmlneu=urllib.urlopen(xml_url).read()
  104:         
  105:         try:
  106:             dom=xml.dom.minidom.parseString(xmlneu)
  107:         except:
  108:             print "Error"
  109:             print xmlneu
  110:             return "error"
  111: 
  112:         path=re.sub(self.REQUEST['SERVER_URL'],'',index_meta_url)
  113:         path=re.sub('http://'+self.REQUEST['HTTP_HOST'],'',index_meta_url)
  114: 
  115:         path=re.sub('http://foxridge.mpiwg-berlin.mpg.de:8080','',path) # falls foxridge als server
  116:         path=re.sub('http://foxridge.rz-berlin.mpg.de:8080','',path) # falls foxridge als server
  117:         path=re.sub('http://foxridge.rz-berlin.mpg.de','',path) # falls foxridge als server
  118: 
  119:         path=re.sub('http://foxridge.mpiwg-berlin.mpg.de','',path) # falls foxridge als server
  120:         path=re.sub('http://content.mpiwg-berlin.mpg.de','',path) # falls content als server
  121: 
  122:         fh=open(path,'w')
  123: 
  124:         fh.write(xmlneu)
  125:         fh.close()
  126:         return "ok"
  127: 
  128:         
  129: def manage_AddOSAS_RootForm(self):
  130:     """interface for adding the OSAS_root"""
  131:     pt=PageTemplateFile('Products/OSA_system/zpt/AddOSAS_Root.zpt').__of__(self)
  132:     return pt()
  133: 
  134: def manage_AddOSAS_Root(self,id,RootFolderName,DigILibURL,uploadServletUrl,RESPONSE=None):
  135:     """add the OSAS_root"""
  136:     newObj=OSAS_Root(id,RootFolderName,DigILibURL,uploadServletUrl)
  137:     self._setObject(id,newObj)
  138:     if RESPONSE is not None:
  139:         RESPONSE.redirect('manage_main')
  140: 
  141:     

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