--- ECHO_content/ECHO_collection.py 2004/06/07 14:37:36 1.101 +++ ECHO_content/ECHO_collection.py 2004/06/18 12:32:21 1.119 @@ -46,14 +46,14 @@ import xml.dom.minidom from ECHO_graphicalOverview import javaHandler,javaScriptMain import ECHO_helpers -def getCopyrightsFromForm(argv): +def getCopyrightsFromForm(self,argv): medias={} partners={} copyrights={} copyrightsFinal=[] for arg in argv.keys(): - print arg + if arg[0:5]=='media': nm=int(arg[5:]) medias[nm]=argv[arg] @@ -64,10 +64,18 @@ def getCopyrightsFromForm(argv): nm=int(arg[5:]) copyrights[nm]=argv[arg] + + copyrightsList=[(medias[nm],partners[nm],copyrights[nm]) for nm in medias.keys()] for copyright in copyrightsList: - if not copyright[0]=='': - copyrightsFinal.append(copyright) + + if copyright[2]=='institution0000': + copyrightsFinal.append((copyright[0],copyright[1],self.getPartnerCopyright(copyright[1],''))) + else: + if not copyright[0]=='': + copyrightsFinal.append(copyright) + + return copyrightsFinal #List of different types for the graphical linking viewer @@ -334,11 +342,11 @@ 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=[] - self.copyrights=getCopyrightsFromForm(self.REQUEST.form)[0:] + self.copyrights=getCopyrightsFromForm(self,self.REQUEST.form)[0:] if RESPONSE is not None: RESPONSE.redirect('manage_main') @@ -358,7 +366,7 @@ def manage_addECHO_copyright(self, id,ti - self._setObject(id, ECHO_copyright(id, title,getCopyrightsFromForm(self.REQUEST.form))) + self._setObject(id, ECHO_copyright(id, title,getCopyrightsFromForm(self,self.REQUEST.form))) if RESPONSE is not None: RESPONSE.redirect('manage_main') @@ -479,17 +487,36 @@ class ECHO_resource(Folder,Persistent): else: return "no fulltext available" - def getCopyright(self): - """gib link auf copyright notiz aus""" - if hasattr(self,'copyrightType') and hasattr(self.copyrightTypes,self.copyrightType): - obj=getattr(self.copyrightTypes,self.copyrightType) + def getCopyrightsHTML(self): + """gib (link auf copyright notiz, mediatyp, institution, copyrightType, label von copyrightType) aus""" + + if hasattr(self,'copyrightModell'): + obj=self.copyrightModell + else: - obj=getattr(self.copyrightTypes,'generic') - - label=obj.label - link="copyrightTypes/"+obj.getId()+'/copyright.html' + return "ERROR" + ret=[] - return """%s"""%(link,label) + for copyright in obj.getCopyrights(): + + link="copyrightTypes/"+copyright[2]+'/copyright.html' + + try: + copyrightTypeObj=getattr(self.copyrightTypes,copyright[2]) + label=copyrightTypeObj.label + url=copyrightTypeObj.url + + if url!='': + ret.append(("""%s"""%(url,label),copyright[0],copyright[1],copyright[2],label)) + else: + if hasattr(copyrightTypeObj, 'copyright.html'): + ret.append(("""%s"""%(link,copyright[1],label),copyright[0],copyright[1],copyright[2],label)) + else: + ret.append((label,copyright[0],copyright[1],copyright[2],label)) + except: + """nothing""" + + return ret def getCredits(self): """Ausgabe der credits""" @@ -1374,6 +1401,7 @@ class ECHO_collection(Folder, Persistent for entry in entries: if entry[1].meta_type == 'ECHO_resource': entry[1].ECHO_getResourceMD(template="no") + entry[1].generate_title() else: self.ECHO_rerenderLinksMD(entry[1]) @@ -1480,7 +1508,7 @@ class ECHO_collection(Folder, Persistent else: return "#dddddd" - def changeECHO_collection(self,title,label,description,contentType,responsible,weight,secondaryLink,secondaryLinkTitle,credits=None,sortfield="weight",coords=None,RESPONSE=None,imageTag="",bgcolour="",viewClassification=None): + def changeECHO_collection(self,title,label,description,contentType,responsible,weight,secondaryLink,secondaryLinkTitle,credits=None,sortfield="weight",coords=None,RESPONSE=None,imageTag="",bgcolour="",viewClassification=None,location=None): """Aenderung der Properties""" self.secondaryLink=secondaryLink @@ -1488,6 +1516,7 @@ class ECHO_collection(Folder, Persistent self.imageTag=imageTag self.bgcolour=bgcolour self.viewClassification=viewClassification + self.location=location if coords: coordsnew=[ string.split(x,",") for x in coords] @@ -1935,12 +1964,19 @@ class ECHO_root(Folder,Persistent,Implic return retStr - def copyrightTypeSelector_HTML(self,selected=None): + def copyrightTypeSelector_HTML(self,selected=None,first=None): """give type selector""" - if not selected: - retStr="