--- ECHO_content/ECHO_collection.py 2008/01/16 16:10:14 1.293 +++ ECHO_content/ECHO_collection.py 2008/11/16 12:15:42 1.296 @@ -422,7 +422,15 @@ 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) @@ -1386,10 +1394,7 @@ class ECHO_resource(CatalogAware,Folder, ret= self.metaDataHash.get(fieldNameTest,empty) - if type(ret) is StringType: - return ret.decode('utf-8') - else: - return ret + return unicodify(ret) getFieldValue=getMDValue #depricated @@ -2594,8 +2599,24 @@ class ECHO_collection(CatalogAware, Fold manage_addECHO_resource(self,id,title,label,description,responsible,link,metalink,weight,credits=None,coords=None,RESPONSE=None) return "done" except: - return None + logging.error("ECHOcollection: (AddResource): %s %s"%sys.exc_info()[0:2]) + return None + def addResourceAndCreateLabelAndTitle(self,id,title,label,description,contentType,responsible,link,metalink,weight,credits=None,coords=None,RESPONSE=None): + """SSS""" + ret = self.addResource(id,title,label,description,contentType,responsible,link,metalink,weight,credits,coords,RESPONSE) + if ret is None: + return None + + try: + server2=getattr(self,id) + server2.copyIndex_meta2echo_resource() + server2.generate_label() + server2.generate_title() + except: + logging.error("An Error occured adding the resource A\n %s %s"%sys.exc_info()[0:2]) + return None + return "done" def getSecondaryLink(self): """secondary link""" try: @@ -3518,8 +3539,10 @@ class ECHO_root(Folder,Persistent,Implic """ret attribute if existing""" try: - return getattr(found,field).decode('ascii','ignore') + return getattr(found,field)#.decode('utf-8','ignore') except: + logging.error("can't: decode: %s"%repr(field)) + logging.error(" %s %s"%(sys.exc_info()[0],sys.exc_info()[1])) return "" security.declarePublic('getImageTag')