--- OSAS/OSA_system/OSAS_Root.py 2003/10/01 08:20:46 1.2 +++ OSAS/OSA_system/OSAS_Root.py 2005/04/27 13:17:45 1.18 @@ -1,30 +1,88 @@ +from OFS.SimpleItem import SimpleItem from time import localtime,strftime from Acquisition import Implicit from OFS.Folder import Folder from Products.PageTemplates.PageTemplateFile import PageTemplateFile from Products.PageTemplates.PageTemplate import PageTemplate +import urllib +import zLOG +import re +import xml.dom.minidom + +class OSAS_ViewerObject(Folder): + """Beschreibung eines Viewers""" + meta_type="OSAS_ViewerObject" + + def __init__(self,id,title,prefix): + """init""" + self.id=id + self.title=title + self.prefix=prefix + manage_options = Folder.manage_options+( + {'label':'Main Config','action':'changeViewerObjectForm'}, + ) + + def changeViewerObjectForm(self): + """Main configuration""" + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','changeViewerObjectForm.zpt')).__of__(self) + return pt() + + def changeViewerObject(self,title,prefix): + """Change RootFolderName""" + self.title=title + self.prefix=prefix + + + if RESPONSE is not None: + RESPONSE.redirect('manage_main') + + +def manage_AddOSAS_ViewerObjectForm(self): + """interface for adding the viewer Object""" + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','AddOSAS_ViewerObject.zpt')).__of__(self) + return pt() + +def manage_AddOSAS_ViewerObject(self,id,title,prefix,RESPONSE=None): + """add the OSAS_root""" + newObj=OSAS_ViewerObject(id,title,prefix) + self._setObject(id,newObj) + if RESPONSE is not None: + RESPONSE.redirect('manage_main') + + class OSAS_Root(Folder,Implicit): """Implicit Folder of the Storage Systems""" - def __init__(self,id,RootFolderName): + def __init__(self,id,RootFolderName,DigILibURL,uploadServletUrl): """initialize a new instance""" self.id = id self.RootFolderName = RootFolderName - + self.DigILibURL=DigILibURL + self.uploadServletUrl=uploadServletUrl + meta_type="OSAS_Root" manage_options = Folder.manage_options+( {'label':'Main Config','action':'Root_config'}, ) + + + def setDigILibURL(self): + """set""" + self.DigILibURL="" + def Root_config(self): """Main configuration""" - pt=PageTemplateFile('products/OSA_system/ConfigOSAS_Root.zpt').__of__(self) + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ConfigOSAS_Root.zpt')).__of__(self) return pt() - def change_OSAS_Root(self,RootFolderName,RESPONSE=None): + def change_OSAS_Root(self,RootFolderName,DigILibURL,uploadServletUrl,RESPONSE=None): """Change RootFolderName""" self.RootFolderName=RootFolderName + self.DigILibURL=DigILibURL + self.uploadServletUrl=uploadServletUrl + if RESPONSE is not None: RESPONSE.redirect('manage_main') @@ -32,14 +90,54 @@ class OSAS_Root(Folder,Implicit): """gives formatted date""" return strftime("%d.%m.%Y",localtime()) + def getUploadServletUrl(self): + """get url""" + try: + self.uploadServletUrl=uploadServletUrl + except: + return "http://foxridge.rz-berlin.mpg.de:8000/upload/up" + + def downloadExternalXML(self,index_meta_url,xml_url): + """lade xml file""" + #print "GI" + #print xml_url + xmlneu=urllib.urlopen(xml_url).read() + + + try: + dom=xml.dom.minidom.parseString(xmlneu) + except: + print "Error" + return repr(xml_url) + return "error" + + path=re.sub(self.REQUEST['SERVER_URL'],'',index_meta_url) + path=re.sub('http://'+self.REQUEST['HTTP_HOST'],'',index_meta_url) + + path=re.sub('http://foxridge.mpiwg-berlin.mpg.de:8080','',path) # falls foxridge als server + path=re.sub('http://foxridge.rz-berlin.mpg.de:8080','',path) # falls foxridge als server + path=re.sub('http://foxridge.rz-berlin.mpg.de','',path) # falls foxridge als server + + path=re.sub('http://foxridge.mpiwg-berlin.mpg.de','',path) # falls foxridge als server + path=re.sub('http://content.mpiwg-berlin.mpg.de','',path) # falls content als server + path=re.sub('http://vision.mpiwg-berlin.mpg.de','',path) # falls vision als server + path=re.sub('http://echo.mpiwg-berlin.mpg.de','',path) # falls echo +# path=re.sub('//','/',path) # falls echo + fh=open(path,'w') + zLOG.LOG("OSAS",zLOG.INFO,path) + fh.write(xmlneu) + fh.close() + return "ok" + + def manage_AddOSAS_RootForm(self): """interface for adding the OSAS_root""" - pt=PageTemplateFile('products/OSA_system/AddOSAS_Root.zpt').__of__(self) + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','AddOSAS_Root.zpt')).__of__(self) return pt() -def manage_AddOSAS_Root(self,id,RootFolderName,RESPONSE=None): +def manage_AddOSAS_Root(self,id,RootFolderName,DigILibURL,uploadServletUrl,RESPONSE=None): """add the OSAS_root""" - newObj=OSAS_Root(id,RootFolderName) + newObj=OSAS_Root(id,RootFolderName,DigILibURL,uploadServletUrl) self._setObject(id,newObj) if RESPONSE is not None: RESPONSE.redirect('manage_main')