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

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