version 1.1, 2003/12/23 13:43:10
|
version 1.9, 2008/09/05 11:42:55
|
Line 2
|
Line 2
|
import xml.dom.minidom |
import xml.dom.minidom |
import os.path |
import os.path |
import re |
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): |
def getText(nodelist): |
|
|
Line 20 def changeNodesInIndexMeta(path,node,sub
|
Line 75 def changeNodesInIndexMeta(path,node,sub
|
f=inFile.read() |
f=inFile.read() |
inFile.close() |
inFile.close() |
else: |
else: |
f="""<resource type="ECHO" version="1.0"></resource>""" |
f="""<resource type="ECHO" version="1.1"></resource>""" |
|
|
|
|
dom=xml.dom.minidom.parseString(f) |
dom=xml.dom.minidom.parseString(f) |
Line 38 def changeNodesInIndexMeta(path,node,sub
|
Line 93 def changeNodesInIndexMeta(path,node,sub
|
|
|
# check if node already exist |
# check if node already exist |
|
|
nodeOld=root.getElementsByTagName(node) |
|
|
|
if nodeOld: # if yes -> delete it |
|
root.removeChild(nodeOld[0]).unlink() |
|
|
|
if node=="": |
if node=="": |
for subnode in subnodes.keys(): |
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)) |
namenode=dom.createElement(re.sub(r' ','-',subnode)) |
namenodetext=dom.createTextNode(subnodes[subnode].decode("utf8")) |
namenodetext=dom.createTextNode(unide(subnodes[subnode],"utf8")) |
namenode.appendChild(namenodetext) |
namenode.appendChild(namenodetext) |
root.appendChild(namenode) |
root.appendChild(namenode) |
|
|
else: |
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 |
nodeNew=dom.createElement(node) # create new |
|
|
if nodeAttributes: |
if nodeAttributes: |
Line 62 def changeNodesInIndexMeta(path,node,sub
|
Line 129 def changeNodesInIndexMeta(path,node,sub
|
for subnode in subnodes.keys(): |
for subnode in subnodes.keys(): |
|
|
namenode=dom.createElement(re.sub(r' ','-',subnode)) |
namenode=dom.createElement(re.sub(r' ','-',subnode)) |
namenodetext=dom.createTextNode(subnodes[subnode].decode("utf8")) |
namenodetext=dom.createTextNode(unicode(subnodes[subnode],"utf8")) |
namenode.appendChild(namenodetext) |
namenode.appendChild(namenodetext) |
nodeNew.appendChild(namenode) |
nodeNew.appendChild(namenode) |
|
|
Line 72 def changeNodesInIndexMeta(path,node,sub
|
Line 139 def changeNodesInIndexMeta(path,node,sub
|
writefile=file(path+"/index.meta","w") |
writefile=file(path+"/index.meta","w") |
writefile.write(dom.toxml().encode('utf-8')) |
writefile.write(dom.toxml().encode('utf-8')) |
writefile.close() |
writefile.close() |
|
try: |
|
os.chmod(path+"/index.meta",0664) |
|
except: |
|
"""nothing""" |
|
|
|
|
|
|