--- ECHO_content/ECHO_collection.py 2008/11/16 12:15:42 1.296 +++ ECHO_content/ECHO_collection.py 2008/11/19 14:22:42 1.297 @@ -422,21 +422,29 @@ class ECHO_resource(CatalogAware,Folder, default_catalog='resourceCatalog' # viewClassificationList=viewClassificationListMaster - def setPID(self,pid): - """set the pid""" - self.pid=pid - return True - - def getPID(self): - """get the pid""" - return getattr(self,'pid',None) - + def PrincipiaSearchSource(self): """Return cataloguable key for ourselves.""" return str(self) getSubCols = ECHO_helpers.getSubCols + def index_meta(self,RESPONSE=None): + """ gibt das im metalink gespeicher xml-file zurueck""" + url = self.metalink + txt="" + logging.debug("ml:%s"%url) + try: + page = urllib.urlopen(url); + if RESPONSE: + RESPONSE.setHeader("Content-Type","text/xml") + + txt = page.read(); + except: + logging.error("Cannot read metadata of: %s"%self.getId()) + + return txt + def reindex(self): """generate fields for indexing and reindex""" @@ -1208,7 +1216,7 @@ class ECHO_resource(CatalogAware,Folder, vl=False if not vl: # geht immer noch nicht, dann setzte wieder zurueck - self.metaLink=oldLink + self.metalink=oldLink logging.info("change Viewer (mew Metadatafile) %s"%self.metalink) @@ -1455,6 +1463,10 @@ class ECHO_resource(CatalogAware,Folder, self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml') return writeMetadata(self.metalink,self.metaDataHash) + def getMetaDataLink(self): + """get link to the meta data""" + return self.metalink + def changeECHO_resource(self,metalink,link,title,label,description,contentType,responsible,weight,coords=None,credits=None,RESPONSE=None): """Aenderung der Properties""" @@ -3932,6 +3944,20 @@ class ECHO_root(Folder,Persistent,Implic ret +="""\n""" self.REQUEST.RESPONSE.setHeader("Content-Type", "text/xml") + self.REQUEST.RESPONSE.write(ret) + + def getCollectionsXML(self,viewerType=None,filter=None): + """gebe collections aus""" + ret=""" + """ + for resource in self.ZopeFind(self,obj_metatypes=['ECHO_collection','ECHO_group'],search_sub=1): + + echo_url=resource[1].absolute_url() + + ret+="""\n"""%urllib.quote(echo_url,safe='/:?') + ret +="""\n""" + + self.REQUEST.RESPONSE.setHeader("Content-Type", "text/xml") self.REQUEST.RESPONSE.write(ret) def getFullTextsXML(self,viewerType=None,filter=None):