Annotation of OSAS/OSA_system/OSAS_Root.py, revision 1.13

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.9       dwinter     8: import re
1.13    ! dwinter     9: import xml.dom.minidom
1.1       dwinter    10: 
1.11      dwinter    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:     
1.2       dwinter    53: class OSAS_Root(Folder,Implicit):
                     54:     """Implicit Folder of the  Storage Systems"""
1.7       dwinter    55:     def __init__(self,id,RootFolderName,DigILibURL,uploadServletUrl):
1.1       dwinter    56:         """initialize a new instance"""
                     57:         self.id = id
                     58:         self.RootFolderName = RootFolderName
1.5       dwinter    59:         self.DigILibURL=DigILibURL
1.7       dwinter    60:         self.uploadServletUrl=uploadServletUrl
1.5       dwinter    61:         
1.1       dwinter    62:     meta_type="OSAS_Root"
                     63: 
                     64:     manage_options = Folder.manage_options+(
                     65:         {'label':'Main Config','action':'Root_config'},
                     66:         )
                     67: 
1.11      dwinter    68:     
                     69:         
1.6       dwinter    70:     def setDigILibURL(self):
                     71:         """set"""
                     72:         self.DigILibURL=""
                     73:         
1.1       dwinter    74:     def Root_config(self):
                     75:         """Main configuration"""
1.4       dwinter    76:         pt=PageTemplateFile('Products/OSA_system/zpt/ConfigOSAS_Root.zpt').__of__(self)
1.1       dwinter    77:         return pt()
                     78: 
1.7       dwinter    79:     def change_OSAS_Root(self,RootFolderName,DigILibURL,uploadServletUrl,RESPONSE=None):
1.1       dwinter    80:         """Change RootFolderName"""
                     81:         self.RootFolderName=RootFolderName
1.5       dwinter    82:         self.DigILibURL=DigILibURL
1.7       dwinter    83:         self.uploadServletUrl=uploadServletUrl
                     84:         
1.1       dwinter    85:         if RESPONSE is not None:
                     86:             RESPONSE.redirect('manage_main')
1.2       dwinter    87: 
                     88:     def date(self):
                     89:         """gives formatted date"""
                     90:    return strftime("%d.%m.%Y",localtime()) 
1.1       dwinter    91: 
1.7       dwinter    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"
1.8       dwinter    98: 
                     99:     def downloadExternalXML(self,index_meta_url,xml_url):
                    100:         """lade xml file"""
1.10      dwinter   101: 
1.8       dwinter   102:         xmlneu=urllib.urlopen(xml_url).read()
1.9       dwinter   103: 
1.13    ! dwinter   104:         try:
        !           105:             dom=xml.dom.minidom.parseString(xmlneu)
        !           106:         except:
        !           107:             print "Error"
        !           108:             print xmlneu
        !           109:             return "error"
        !           110: 
        !           111:         path=re.sub(self.REQUEST['SERVER_URL'],'',index_meta_url)
        !           112:         path=re.sub('http://'+self.REQUEST['HTTP_HOST'],'',index_meta_url)
        !           113: 
        !           114:         path=re.sub('http://foxridge.mpiwg-berlin.mpg.de:8080','',path) # falls foxridge als server
        !           115:         path=re.sub('http://foxridge.mpiwg-berlin.mpg.de:8080','',path) # falls foxridge als server
        !           116:         path=re.sub('http://foxridge.mpiwg-berlin.mpg.de','',path) # falls foxridge als server
1.12      dwinter   117: 
1.10      dwinter   118: 
1.13    ! dwinter   119:         fh=open(path,'w')
1.9       dwinter   120: 
1.8       dwinter   121:         fh.write(xmlneu)
                    122:         fh.close()
                    123:         return "ok"
                    124: 
1.13    ! dwinter   125:         
1.1       dwinter   126: def manage_AddOSAS_RootForm(self):
                    127:     """interface for adding the OSAS_root"""
1.4       dwinter   128:     pt=PageTemplateFile('Products/OSA_system/zpt/AddOSAS_Root.zpt').__of__(self)
1.1       dwinter   129:     return pt()
                    130: 
1.7       dwinter   131: def manage_AddOSAS_Root(self,id,RootFolderName,DigILibURL,uploadServletUrl,RESPONSE=None):
1.1       dwinter   132:     """add the OSAS_root"""
1.7       dwinter   133:     newObj=OSAS_Root(id,RootFolderName,DigILibURL,uploadServletUrl)
1.1       dwinter   134:     self._setObject(id,newObj)
                    135:     if RESPONSE is not None:
                    136:         RESPONSE.redirect('manage_main')
                    137: 
                    138:     

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