--- ECHO_content/ECHO_collection.py 2004/08/05 13:51:32 1.160 +++ ECHO_content/ECHO_collection.py 2004/08/09 10:10:56 1.162 @@ -48,6 +48,13 @@ import xml.dom.minidom from ECHO_graphicalOverview import javaHandler,javaScriptMain import ECHO_helpers +#regexp for extracting elements from xml +patternTXT=r"<\s*txt.*?>(.*?)" +regexpTXT = re.compile(patternTXT, re.IGNORECASE + re.DOTALL) +patternPage=r"<\s*page.*?>(.*?)" +regexpPage = re.compile(patternPage, re.IGNORECASE + re.DOTALL) + + def ECHO_rerenderLinksMD(self,obj=None,types=['title','label']): """Rerender all Links""" ret="" @@ -1723,7 +1730,8 @@ class ECHO_collection(Folder, Persistent return ret - + + def changeLabels(self): """change form""" pt=PageTemplateFile('Products/ECHO_content/zpt/changeLabelsForm').__of__(self) @@ -1735,7 +1743,12 @@ class ECHO_collection(Folder, Persistent pt=PageTemplateFile('Products/ECHO_content/zpt/changeTitleForm').__of__(self) pt.content_type="text/html" return pt() - + + def changeMetaDataLinks(self): + """change form""" + pt=PageTemplateFile('Products/ECHO_content/zpt/changeMetaDataLinkForm').__of__(self) + pt.content_type="text/html" + return pt() def changeAccessRightsCollection(self): """change""" ret="" @@ -1751,6 +1764,21 @@ class ECHO_collection(Folder, Persistent """not""" return ret + def changeMetaDataLinkInCollection(self): + """change all lables of a collection""" + ret="" + argv=self.REQUEST.form + + resources=self.ZopeFind(self,obj_metatypes=['ECHO_resource']) + for resource in resources: + + try: + ret+=resource[1].getId()+" "+argv[resource[1].getId()]+"
" + resource[1].metalink=argv[resource[1].getId()][0:] + except: + """not""" + return ret + def changeLabelsInCollection(self): """change all lables of a collection""" ret="" @@ -3030,10 +3058,11 @@ class ECHO_root(Folder,Persistent,Implic link.setAttribute("href",self.aq_parent.absolute_url()+"/vlp_coll?id="+ref) newxml=dom.toxml('utf-8') - match=re.sub(r'<\?xml version=\"1.0\" encoding=\"utf-8\"\?>\n','',newxml) - match=re.sub(r'','',match) - - return match + + retStr=regexpTXT.search(newxml) + + return retStr.group(1) + return "" @@ -3052,7 +3081,11 @@ class ECHO_root(Folder,Persistent,Implic if self.checkRef(ref): link.setAttribute("href",self.aq_parent.absolute_url()+"/vlp_coll?id="+ref) - return dom.toxml('utf-8') + str= dom.toxml('utf-8') + #print str + retStr=regexpPage.search(str) + + return retStr.group(1) return "" def checkRef(self,ref):