--- ECHO_content/ECHO_collection.py 2004/05/10 08:44:19 1.73
+++ ECHO_content/ECHO_collection.py 2004/05/11 14:57:35 1.80
@@ -112,7 +112,7 @@ def sendFile(self, filename, type):
break
if object:
# if the object exists then send it
- object()
+ return object.index_html(self.REQUEST.REQUEST, self.REQUEST.RESPONSE)
else:
# send a local file with the given content-type
fn = os.path.join(package_home(globals()), filename)
@@ -170,7 +170,7 @@ def writeMetadata(url,metadict):
metanode.appendChild(metanodeneu)
- return dom.toxml().encode('utf-8')
+ return dom.topxml().encode('utf-8')
def readMetadata(url):
"""Methode zum Auslesen der Metadateninformation zu einer Resource
@@ -515,7 +515,10 @@ class ECHO_resource(Folder):
def changeECHO_resource_coords(self,coords,viewClassification,RESPONSE=None):
"""Änderung der Properties - coords"""
- try:
+ if type(coords)==StringType:
+ coords=[coords]
+
+ try:
coordsnew=[ string.split(x,",") for x in coords]
except:
coordsnew=[]
@@ -539,7 +542,7 @@ class ECHO_resource(Folder):
def changeECHO_resource_metadata(self,RESPONSE=None):
"""change metadata"""
tags=self.findTagsFromMapping(self.contentType)
- OSAS_meta={}
+ self.OSAS_meta={}
for field in tags[1]:
try:
self.metaDataHash[self.getFieldTag(tags,field)]=self.REQUEST.form[self.getFieldTag(tags,field)]
@@ -547,13 +550,14 @@ class ECHO_resource(Folder):
except:
"""nothing"""
- return urllib.urlopen('http://localhost:8080/echo_nav/storage/downloadExternalXML?index_meta_url=%s&xml_url=%s'%(self.absolute_url()+'/newMetaXML',self.metalink)).read()
+ return urllib.urlopen('http://xserve02.mpiwg-berlin.mpg.de:18880/echo_nav/storage/downloadExternalXML?index_meta_url=%s&xml_url=%s'%(self.metalink,self.absolute_url()+'/newMetaXML')).read()
if RESPONSE is not None:
RESPONSE.redirect('manage_main')
def newMetaXML(self):
+ """new index.meta"""
self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml')
return writeMetadata(self.metalink,self.OSAS_meta)
@@ -867,8 +871,11 @@ class ECHO_link(ECHO_externalLink):
def content_html(self):
- """template fuer content"""
- return content_html(self,'link')
+ """template fuer link"""
+ if hasattr(self,"link_template"):
+ return content_html(self,'link')
+ else:
+ return content_html(self,'collection')
def manage_addECHO_linkForm(self):
"""Form for external Links"""
@@ -989,14 +996,52 @@ class ECHO_collection(Folder, Persistent
return ret
def createJSAreas(self):
- """CreateJava"""
+ """new version of createJavaScript"""
dynamical="\n"
for ob in self.getGraphicCoords():
- if ob[5] == "area":
+ if ob[5] == "area":
dynamical+="""addArea('%s', 'overview', %s, 'area');\n"""%(ob[1],ob[0])
else:
dynamical+="""addArea('%s', 'overview', %s, 'arrow');\n"""%(ob[1],ob[0])
return dynamical
+
+ def createMapHead(self):
+ """generate divs"""
+ pt=PageTemplateFile(os.path.join(package_home(globals()), 'zpt/ECHO_content_map_frag_js')).__of__(self)
+ return pt()
+
+ def createMapLink(self, ob, text=None):
+ """generate map link"""
+ id = ob[1]
+ link = ob[1]
+ if text == None:
+ text = ob[2]
+ tag = '" + text + ""
+ return tag
+
+ def createMapAux(self, ob, arrowsrc="http://nausikaa2.rz-berlin.mpg.de/digitallibrary/servlet/Scaler/?dw=15&fn=icons/pfeil"):
+ """generate map link image, text and other stuff"""
+ id = ob[1]
+ link = ob[1]
+ vtype = ob[5]
+ ctype = ob[3].contentType
+
+ tag = ''%(id,id,id,link)
+ if vtype == "view point":
+ rot = ob[4][4]
+ tag += ''%(id,arrowsrc,rot)
+ else:
+ tag += ''
+ tag += ''
+ return tag
+
security.declarePublic('getCreditObject')
def getCreditObject(self,name):
@@ -1211,20 +1256,16 @@ class ECHO_collection(Folder, Persistent
def area_img(self):
"""area image"""
- sendFile(self, 'images/red.gif', 'image/gif')
- return
+ return sendFile(self, 'images/red.gif', 'image/gif')
def hl_lib_js(self):
"""javascript"""
- sendFile(self, 'js/hl_lib.js', 'text/plain')
- return
+ return sendFile(self, 'js/hl_lib.js', 'text/plain')
def js_lib_js(self):
"""javascript"""
- sendFile(self, 'js/js_lib.js', 'text/plain')
- return
+ return sendFile(self, 'js/js_lib.js', 'text/plain')
-
def getGraphicCoords(self):
"""Give list of coordinates"""
subColTypes=['ECHO_collection','ECHO_resource']