Annotation of OSAS/OSA_system/OSAS_Root.py, revision 1.19
1.11 dwinter 1: from OFS.SimpleItem import SimpleItem
1.2 dwinter 2: from time import localtime,strftime
3: from Acquisition import Implicit
1.1 dwinter 4: from OFS.Folder import Folder
5: from Products.PageTemplates.PageTemplateFile import PageTemplateFile
6: from Products.PageTemplates.PageTemplate import PageTemplate
1.8 dwinter 7: import urllib
1.17 dwinter 8: import zLOG
1.9 dwinter 9: import re
1.13 dwinter 10: import xml.dom.minidom
1.19 ! dwinter 11: import os.path
! 12: from Globals import package_home
1.1 dwinter 13:
1.11 dwinter 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"""
1.18 dwinter 30: pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','changeViewerObjectForm.zpt')).__of__(self)
1.11 dwinter 31: return pt()
32:
1.19 ! dwinter 33: def changeViewerObject(self,title,prefix,RESPONSE=None):
1.11 dwinter 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"""
1.18 dwinter 45: pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','AddOSAS_ViewerObject.zpt')).__of__(self)
1.11 dwinter 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:
1.2 dwinter 56: class OSAS_Root(Folder,Implicit):
57: """Implicit Folder of the Storage Systems"""
1.7 dwinter 58: def __init__(self,id,RootFolderName,DigILibURL,uploadServletUrl):
1.1 dwinter 59: """initialize a new instance"""
60: self.id = id
61: self.RootFolderName = RootFolderName
1.5 dwinter 62: self.DigILibURL=DigILibURL
1.7 dwinter 63: self.uploadServletUrl=uploadServletUrl
1.5 dwinter 64:
1.1 dwinter 65: meta_type="OSAS_Root"
66:
67: manage_options = Folder.manage_options+(
68: {'label':'Main Config','action':'Root_config'},
69: )
70:
1.11 dwinter 71:
72:
1.6 dwinter 73: def setDigILibURL(self):
74: """set"""
75: self.DigILibURL=""
76:
1.1 dwinter 77: def Root_config(self):
78: """Main configuration"""
1.18 dwinter 79: pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ConfigOSAS_Root.zpt')).__of__(self)
1.1 dwinter 80: return pt()
81:
1.7 dwinter 82: def change_OSAS_Root(self,RootFolderName,DigILibURL,uploadServletUrl,RESPONSE=None):
1.1 dwinter 83: """Change RootFolderName"""
84: self.RootFolderName=RootFolderName
1.5 dwinter 85: self.DigILibURL=DigILibURL
1.7 dwinter 86: self.uploadServletUrl=uploadServletUrl
87:
1.1 dwinter 88: if RESPONSE is not None:
89: RESPONSE.redirect('manage_main')
1.2 dwinter 90:
91: def date(self):
92: """gives formatted date"""
93: return strftime("%d.%m.%Y",localtime())
1.1 dwinter 94:
1.7 dwinter 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"
1.8 dwinter 101:
102: def downloadExternalXML(self,index_meta_url,xml_url):
103: """lade xml file"""
1.15 dwinter 104: #print "GI"
105: #print xml_url
1.8 dwinter 106: xmlneu=urllib.urlopen(xml_url).read()
1.15 dwinter 107:
1.16 dwinter 108:
1.13 dwinter 109: try:
110: dom=xml.dom.minidom.parseString(xmlneu)
111: except:
112: print "Error"
1.16 dwinter 113: return repr(xml_url)
1.13 dwinter 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
1.14 dwinter 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:
1.13 dwinter 123: path=re.sub('http://foxridge.mpiwg-berlin.mpg.de','',path) # falls foxridge als server
1.14 dwinter 124: path=re.sub('http://content.mpiwg-berlin.mpg.de','',path) # falls content als server
1.16 dwinter 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
1.13 dwinter 128: fh=open(path,'w')
1.17 dwinter 129: zLOG.LOG("OSAS",zLOG.INFO,path)
1.8 dwinter 130: fh.write(xmlneu)
131: fh.close()
132: return "ok"
133:
1.13 dwinter 134:
1.1 dwinter 135: def manage_AddOSAS_RootForm(self):
136: """interface for adding the OSAS_root"""
1.18 dwinter 137: pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','AddOSAS_Root.zpt')).__of__(self)
1.1 dwinter 138: return pt()
139:
1.7 dwinter 140: def manage_AddOSAS_Root(self,id,RootFolderName,DigILibURL,uploadServletUrl,RESPONSE=None):
1.1 dwinter 141: """add the OSAS_root"""
1.7 dwinter 142: newObj=OSAS_Root(id,RootFolderName,DigILibURL,uploadServletUrl)
1.1 dwinter 143: self._setObject(id,newObj)
144: if RESPONSE is not None:
145: RESPONSE.redirect('manage_main')
146:
147:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>