--- OSAS/OSA_system/OSAS_helpers.py 2003/12/23 13:43:10 1.1
+++ OSAS/OSA_system/OSAS_helpers.py 2008/09/05 11:42:55 1.9
@@ -2,6 +2,61 @@
import xml.dom.minidom
import os.path
import re
+import urllib
+
+def changeIndexMeta(argv,path,dirnames):
+ """change index.meta"""
+ subnodes={}
+
+ if not argv['startpage']=='':
+ subnodes['startpage']=argv['startpage']
+
+ if not argv['xslt']=='':
+ subnodes['xslt']=argv['xslt']
+
+ if not argv['thumbtemplate']=='':
+ subnodes['thumbtemplate']=argv['thumbtemplate']
+
+ if not argv['topbar']=='':
+ subnodes['toptemplate']=argv['toptemplate']
+
+
+ try:
+ changeNodesInIndexMeta(path,'',subnodes,parent='texttool')
+
+ except:
+ print "ERROR (changeIndexMeta)",path
+
+ urllib.urlopen("http://nausikaa2.rz-berlin.mpg.de:86/cgi-bin/toc/admin/reg.cgi?path=%s"%path).readlines()
+ return "done"
+
+
+
+def readArchimedesXML(folder):
+ """gib URL aus """
+ try:
+ XML=urllib.urlopen("http://archimedes.mpiwg-berlin.mpg.de/cgi-bin/toc/toc.cgi?step=xmrpusmanifest").read()
+ #print XML
+ dom=xml.dom.minidom.parseString(XML)
+ items=dom.getElementsByTagName('item')
+ dict={}
+
+ for item in items:
+ #print item.attributes['dir'].value
+ try:
+ dict[item.attributes['dir'].value]=item.attributes['xml'].value
+ #print item.attributes['dir'].value,item.attributes['text'].value
+ except:
+ """nothing"""
+
+ if dict.has_key(folder):
+ return dict[folder]
+ else:
+ return ""
+ except:
+ return ""
+
+
def getText(nodelist):
@@ -20,7 +75,7 @@ def changeNodesInIndexMeta(path,node,sub
f=inFile.read()
inFile.close()
else:
- f=""""""
+ f=""""""
dom=xml.dom.minidom.parseString(f)
@@ -38,20 +93,32 @@ def changeNodesInIndexMeta(path,node,sub
# check if node already exist
- nodeOld=root.getElementsByTagName(node)
-
- if nodeOld: # if yes -> delete it
- root.removeChild(nodeOld[0]).unlink()
if node=="":
for subnode in subnodes.keys():
+ nodeOld=root.getElementsByTagName(subnode)
+
+ if nodeOld: # if yes -> delete it
+ try:
+ root.removeChild(nodeOld[0]).unlink()
+ except:
+ """nothing"""
+
namenode=dom.createElement(re.sub(r' ','-',subnode))
- namenodetext=dom.createTextNode(subnodes[subnode].decode("utf8"))
+ namenodetext=dom.createTextNode(unide(subnodes[subnode],"utf8"))
namenode.appendChild(namenodetext)
root.appendChild(namenode)
else:
+ nodeOld=root.getElementsByTagName(node)
+
+ try:
+ if nodeOld: # if yes -> delete it
+ root.removeChild(nodeOld[0]).unlink()
+ except:
+ """nothing"""
+
nodeNew=dom.createElement(node) # create new
if nodeAttributes:
@@ -62,7 +129,7 @@ def changeNodesInIndexMeta(path,node,sub
for subnode in subnodes.keys():
namenode=dom.createElement(re.sub(r' ','-',subnode))
- namenodetext=dom.createTextNode(subnodes[subnode].decode("utf8"))
+ namenodetext=dom.createTextNode(unicode(subnodes[subnode],"utf8"))
namenode.appendChild(namenodetext)
nodeNew.appendChild(namenode)
@@ -72,8 +139,10 @@ def changeNodesInIndexMeta(path,node,sub
writefile=file(path+"/index.meta","w")
writefile.write(dom.toxml().encode('utf-8'))
writefile.close()
-
-
+ try:
+ os.chmod(path+"/index.meta",0664)
+ except:
+ """nothing"""