--- ECHO_content/ECHO_collection.py 2004/05/28 10:43:05 1.93
+++ ECHO_content/ECHO_collection.py 2004/06/04 10:04:16 1.96
@@ -89,10 +89,10 @@ def content_html(self,type):
#if templates:
# return templates[0][1]()
- try:
+ if hasattr(self,type+"_template")
obj=getattr(self,type+"_template")
return obj()
- except:
+ else:
pt=PageTemplateFile('Products/ECHO_content/zpt/ECHO_%s_template_standard.zpt'%type).__of__(self)
pt.content_type="text/html"
return pt()
@@ -243,6 +243,7 @@ def readMetadata(url):
for node in metacontent:
try:
+ #print urllib.unquote(getText(node.childNodes)),getText(node.childNodes)
metadict[re.sub('-','_',node.tagName.lower())]=urllib.unquote(getText(node.childNodes))
except:
"""nothing"""
@@ -444,7 +445,15 @@ class ECHO_resource(Folder,Persistent):
def getCopyright(self):
"""gib link auf copyright notiz aus"""
- return """copyright"""
+ if hasattr(self,'copyrightType'):
+ obj=getattr(self.copyrightTypes,'copyrightType')
+ else:
+ obj=getattr(self.copyrightTypes,'generic')
+
+ label=obj.label
+ link="copyrightTypes/"+obj.getId()+'/copyright.html'
+
+ return """%s"""%(link,label)
def getCredits(self):
"""Ausgabe der credits"""
@@ -453,7 +462,7 @@ class ECHO_resource(Folder,Persistent):
else:
return []
- def __init__(self,id,link,metalink,resourceID,title,label,description,contentType,renderingType,responsible,credits,weight,coords):
+ def __init__(self,id,link,metalink,resourceID,title,label,description,contentType,renderingType,copyrightType,responsible,credits,weight,coords):
self.id = id
"""Festlegen der ID"""
@@ -466,6 +475,7 @@ class ECHO_resource(Folder,Persistent):
self.credits=toList(credits)
self.description=description
self.contentType=contentType
+ self.copyrightType=copyrightType
self.renderingType=renderingType
self.responsible=responsible
self.resourceID=resourceID
@@ -662,7 +672,7 @@ class ECHO_resource(Folder,Persistent):
manage_options = Folder.manage_options+(
{'label':'Main Config','action':'ECHO_resource_config_main'},
- {'label':'Change Credits & Copyright','action':'ECHO_resource_config_credits'},
+ {'label':'Change Partners & Copyright','action':'ECHO_resource_config_credits'},
{'label':'Change Metadata','action':'ECHO_resource_config_metadata'},
{'label':'Change Coords','action':'ECHO_resource_config_coords'},
{'label':'Add coords','action':'ECHO_graphicEntry'},
@@ -829,16 +839,19 @@ class ECHO_resource(Folder,Persistent):
def copyIndex_meta2echo_resource(self,RESPONSE=None):
"""copy MD von Index_meta to the echo_resource"""
-
+
(metadict, error)=readMetadata(self.metalink)
self.metaDataHash={}
if not error=="": #Fehler beim Auslesen des Metafiles
return "ERROR:",error
fields=self.findTagsFromMapping(self.contentType)
+
#fields=self.findLabelsFromMapping(self.contentType)
for field in fields[1]:
+
if self.isDefinedInThisSet(fields,field):
+ #print urllib.unquote(metadict.get(self.getFieldTag(fields,field),''))
self.setFieldValue(self.getFieldTag(fields,field),metadict.get(self.getFieldTag(fields,field),''))
@@ -937,10 +950,10 @@ def manage_addECHO_resourceForm(self):
-def manage_addECHO_resource(self,id,title,label,description,responsible,link,metalink,weight,resourceID=None,contentType=None,renderingType=None,credits=None,coords=None,RESPONSE=None):
+def manage_addECHO_resource(self,id,title,label,description,responsible,link,metalink,weight,copyrightType=None,resourceID=None,contentType=None,renderingType=None,credits=None,coords=None,RESPONSE=None):
"""addaresource"""
- newObj=ECHO_resource(id,link,metalink,resourceID,title,label,description,contentType,renderingType,responsible,credits,weight,coords)
+ newObj=ECHO_resource(id,link,metalink,resourceID,title,label,description,contentType,renderingType,copyrightType,responsible,credits,weight,coords)
self._setObject(id,newObj)
@@ -1781,14 +1794,17 @@ class ECHO_root(Folder,Persistent,Implic
if not content or content=="":
return ""
ret="<%s>"%tag
- ret+=urllib.quote(content)
+ #ret+=urllib.quote(content)
+ ret+=content
+
ret+="%s>"%tag
return ret
def getValueFromClass(self,field,found):
"""retattribute falss existing"""
try:
- return getattr(found,field)
+
+ return getattr(found,field).decode('ascii','ignore')
except:
return ""