version 1.25, 2004/11/24 15:16:33
|
version 1.28, 2004/11/29 17:18:13
|
Line 1
|
Line 1
|
|
import string |
import socket |
import socket |
import urllib |
import urllib |
import xml.dom.minidom |
import xml.dom.minidom |
Line 27 def content_html(self,type):
|
Line 28 def content_html(self,type):
|
|
|
class ECHO_basis: |
class ECHO_basis: |
"""basis eigenschaften fuer echo objekte""" |
"""basis eigenschaften fuer echo objekte""" |
|
def showRDF(self): |
|
"""showrdf""" |
|
self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml') |
|
ret="""<?xml version="1.0" encoding="utf-8"?>\n<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ECHONAVIGATION="http://www.echo.eu/rdf#">\n""" |
|
ret+=self.getRDF(urn="echo:colllectionroot")+"\n" |
|
|
|
ret+="""</RDF:RDF>""" |
|
return ret |
|
|
|
|
|
|
|
def createSubElementRDF(self,urn=None): |
|
"""rdf list""" |
|
if not urn: |
|
urn=self.absolute_url() |
|
ret="" |
|
|
|
rettemp="""<RDF:Seq RDF:about="%s">\n"""%urn |
|
flag=0 |
|
|
|
li="""<RDF:li RDF:resource="%s" />\n""" |
|
if not ('<error>' in self.getFullTextXML(noredirect='Yes')): |
|
nurn=self.absolute_url()+'/getFullTextXML' |
|
rettemp+=li%nurn |
|
flag=1 |
|
if not ('<error>' in self.getImageView(noredirect='Yes')): |
|
nurn=self.absolute_url()+'/getImageView' |
|
rettemp+=li%nurn |
|
flag=1 |
|
|
|
|
|
if not ('<error>' in self.showMetaDataXML()): |
|
nurn=self.absolute_url()+'/showMetaDataXML' |
|
rettemp+=li%nurn |
|
flag=1 |
|
|
|
rettemp+="</RDF:Seq>" |
|
|
|
if flag==1: |
|
ret+=rettemp |
|
|
|
if not ('<error>' in self.getFullTextXML(noredirect='Yes')): |
|
nurn=self.absolute_url()+'/getFullTextXML' |
|
ret+=getRDFDescription(self,self.absolute_url()+'/getFullTextXML',urn=nurn,nameDef="Fulltext",typeName="ECHO_fulltext") |
|
|
|
if not ('<error>' in self.getImageView(noredirect='Yes')): |
|
nurn=self.absolute_url()+'/getImageView' |
|
ret+=getRDFDescription(self,self.absolute_url()+'/getImageView',urn=nurn,nameDef="Image View",typeName="ECHO_imageview") |
|
|
|
if not ('<error>' in self.showMetaDataXML()): |
|
nurn=self.absolute_url()+'/showMetaDataXML' |
|
ret+=getRDFDescription(self,self.absolute_url()+'/showMetaDataXML',urn=nurn,nameDef="Metadata",typeName="ECHO_metaData") |
|
|
|
return ret |
|
|
def content_html(self,type="collection"): |
def content_html(self,type="collection"): |
"""template fuer content bei einbau und ECHO_Umgebung""" |
"""template fuer content bei einbau und ECHO_Umgebung""" |
Line 55 class ECHO_basis:
|
Line 110 class ECHO_basis:
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','changeECHOEntriesForm')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','changeECHOEntriesForm')).__of__(self) |
return pt() |
return pt() |
|
|
def changeECHOEntries(self,label,weight,description,RESPONSE=None): |
def changeECHOEntries(self,label,weight,description,queryString,RESPONSE=None): |
"""change Entries for the ECHO Navigation environment |
"""change Entries for the ECHO Navigation environment |
@param label: label fuer die Navigation""" |
@param label: label fuer die Navigation""" |
self.label=label |
self.label=label |
self.weight=weight |
self.weight=weight |
self.description=description |
self.description=description |
|
self.queryString=queryString |
|
|
if RESPONSE: |
if RESPONSE: |
RESPONSE.redirect("manage_main") |
RESPONSE.redirect("manage_main") |
Line 143 def checkOnlyOneInGroup(object):
|
Line 199 def checkOnlyOneInGroup(object):
|
if len(displayedObjects)==1: # nur ein Object dann redirect auf dieses Object |
if len(displayedObjects)==1: # nur ein Object dann redirect auf dieses Object |
|
|
return displayedObjects[0][1] |
return displayedObjects[0][1] |
else: |
else: return object |
return object |
|
|
|
def getSubCols(self,sortfield="weight",subColTypes= displayTypes): |
def getSubCols(self,sortfield="weight",subColTypes= displayTypes,sortFieldMD=None): |
|
|
|
def sortfnc(sortfield,x,y): |
|
xa=x[1].getMDValue(sortfield) |
|
ya=y[1].getMDValue(sortfield) |
|
print xa,ya |
|
return cmp(xa,ya) |
|
|
|
sortWithMD = lambda sortfield : (lambda x,y : sortfnc(sortfield,x,y)) |
ids=[] |
ids=[] |
displayedObjects=self.ZopeFind(self,obj_metatypes=subColTypes) |
displayedObjects=self.ZopeFind(self,obj_metatypes=subColTypes) |
|
|
Line 175 def getSubCols(self,sortfield="weight",s
|
Line 236 def getSubCols(self,sortfield="weight",s
|
else: |
else: |
tmp=10000000 |
tmp=10000000 |
tmplist.append((tmp,x)) |
tmplist.append((tmp,x)) |
|
|
|
if not sortFieldMD: |
tmplist.sort() |
tmplist.sort() |
|
else: |
|
tmplist.sort(sortWithMD(sortFieldMD)) |
|
|
return [x for (key,x) in tmplist] |
return [x for (key,x) in tmplist] |
|
|