--- ECHO_content/ECHO_collection.py 2004/06/08 12:51:01 1.107 +++ ECHO_content/ECHO_collection.py 2004/06/08 17:17:07 1.111 @@ -342,7 +342,7 @@ class ECHO_copyright(Folder): pt.content_type="text/html" return pt() - def ECHO_copyright_config(self,title,RESPONSE): + def ECHO_copyright_config(self,title,RESPONSE=None): """change""" self.title=title self.copyrights=[] @@ -2127,7 +2127,7 @@ class ECHO_root(Folder,Persistent,Implic if str: str=re.sub("\&","&",str) - dom=xml.dom.minidom.parseString(""+str+"") + dom=xml.dom.minidom.parseString(""+str+"") links=dom.getElementsByTagName("link") @@ -2140,6 +2140,23 @@ class ECHO_root(Folder,Persistent,Implic return dom.toxml('utf-8') return "" + def xml2html(self,str): + """link2html fuer VLP muss hier noch raus""" + if str: + + str=re.sub("\&","&",str) + dom=xml.dom.minidom.parseString(str) + links=dom.getElementsByTagName("link") + + + for link in links: + link.tagName="a" + ref=link.getAttribute("ref") + if self.checkRef(ref): + link.setAttribute("href",self.aq_parent.absolute_url()+"/vlp_coll?id="+ref) + + return dom.toxml('utf-8') + return "" def checkRef(self,ref): dbs={'vl_literature':'AND CD LIKE \'%lise%\'','vl_technology':'','vl_people':''} @@ -2275,11 +2292,37 @@ class ECHO_root(Folder,Persistent,Implic self.REQUEST.RESPONSE.setHeader("Content-Type", "text/xml") self.REQUEST.RESPONSE.write(ret) + + + def getMetaDatasXML(self,viewerType=None,filter=None): + """gebe all ressourcen aus""" + ret=""" + """ + for resource in self.ZopeFind(self,obj_metatypes=['ECHO_resource'],search_sub=1): + + echo_url=resource[1].absolute_url() + if resource[1].getFullTextXML(noredirect="yes"): + if hasattr(resource[1],'link'): + viewer_url=echo_url+"/getMetaDataXML" + else: + viewer_url="NO URL" + if filter: + if re.search(filter,viewer_url): + ret+="""\n"""%(urllib.quote(echo_url,safe='/:?'),urllib.quote(viewer_url,safe='/:?')) + else: + ret+="""\n"""%(urllib.quote(echo_url,safe='/:?'),urllib.quote(viewer_url,safe='/:?')) + ret +="""\n""" + + + self.REQUEST.RESPONSE.setHeader("Content-Type", "text/xml") + self.REQUEST.RESPONSE.write(ret) + def findPartners(self): """find all partners in partners""" par=self.ZopeFind(self.partners, obj_metatypes='ECHO_partner') return par + def manage_addECHO_root(self,id,title,RESPONSE=None): """Add an ECHO_root"""