--- ECHO_content/ECHO_helpers.py 2005/11/25 18:46:40 1.65 +++ ECHO_content/ECHO_helpers.py 2005/12/01 12:11:51 1.67 @@ -14,9 +14,20 @@ from AccessControl import ClassSecurityI import os.path from OFS.Folder import Folder import ECHO_collection +import base64 +import bz2 +import xmlrpclib displayTypes = ['ZSQLExtendFolder','ZSQLBibliography','ECHO_group','ECHO_collection','ECHO_resource','ECHO_link','ECHO_sqlElement','ECHO_pageTemplate','ECHO_externalLink','ImageCollectionIFrame','VLP_resource','VLP_essay','ECHO_ZCatalogElement','ImageCollection','versionedFileFolder','ECHO_movie'] + +#decode and compress for xmlrpc communication with OSAS_server + +def encodeRPC(string): + return base64.encodestring(bz2.compress(string)) +def decodeRPC(string): + return bz2.decompress(base64.decodestring(string)) + def content_html(self,type): """template fuer content""" #templates = self.ZopeFind(self.aq_parent,obj_ids=[type+"_template"]) @@ -553,9 +564,11 @@ def getSubCols(self, sortfield=None, sub if searchSimple and (not (searchSimple==""))and hasattr(self,'resourceCatalog'): + searchString=" AND ".join(searchSimple.split()) + ids=[x.getObject() for x in self.resourceCatalog({'getMDValueSimpleSearchField':searchString})] - + else: for entry in displayedObjects: @@ -580,7 +593,7 @@ def getSubCols(self, sortfield=None, sub if not sortfield: sortfield=getattr(self,'sortfield','weight') - + tmplist=[] for x in ids: @@ -601,7 +614,9 @@ def getSubCols(self, sortfield=None, sub else: tmplist.sort(sortWithMD(sortFieldMD)) - return [x for (key,x) in tmplist] + ret=[x for (key,x) in tmplist] + + return ret def ECHO_rerenderLinksMD(self,obj=None,types=['title','label']): """Rerender all Links"""