You do not ask for a ZCatalog enhancement! You face a "resolve_url" problem. Small Business Services wrote at 2004-1-28 10:17 -0500:
How about some form of record-locking features? ... <dtml-with DNSData> <dtml-in "Catalog({'id' : dns_id})"> <dtml-with "resolve_url(getpath(data_record_id_),REQUEST)"> <dtml-call "propertysheets.GritsDNSPS.manage_changeProperties(REQUEST)"> <dtml-call reindex_object> </dtml-with resolve url> </dtml-in catalog> </dtml-with>
What I expect to happen is that the property field on the object in the DNSData subfolder is updated, then the zcatalog record is updated.
What actually happens is that the zcatalog creates a new entry (a copy of the original entry) with the new field data (property fields on the object are metadata fields in the zcatalog). The original object in the subfolder is NOT modified (ie. the property field is not changed) and the original zcatalog entry is still in the zcatalog, also not modified.
What you (almost surely) see is "virtual host dependancy" of "resolve_url" or another "virtual host dependancy" (e.g. by using "CatalogAware" instead of "CatalogPathAware"). You should avoid "resolve_url" and instead use "getObject"; you should avoid "CatalogAware" and instead use "CatalogPathAware". -- Dieter