OdesÃlatel: Dan Shafer <dan@shafermedia.com> I have a Zope application. When using it, people we call facilitators create a new folder for a particular client interaction. Then as they progress through the structured interaction, each phase creates a new document whose only contents are a call to a DTML method that displays objects' contents. Each of these documents has a set of properties associated with it.
So the structure is:
Folder Document (with properties) <dtml method call>
Now, I need to write a routine that iterates over all the folders in a given directory, examines the document called [caseID]info to determine if one of its properties (coach_id) matches the name of the currently AUTHENTICATED_USER. If so, display the folder as an HREF (that I have working fine) and if not, skip it.
Hi, you need to use recursive calling. Please inspire yourself with this DTML Method called "x_ST"" that deletes all images in folders "s" or "t" recursively if they present: <dtml-in "objectValues([ 'Image', 'Folder', 'ZipFolder' ])" skip_unauthorized> <dtml-if "_['sequence-item'] in ('s', 't', 'xs', 'xt')"> <dtml-let container=this> <dtml-in "objectValues(['Image'])"> DEL: <dtml-var absolute_url> <dtml-call "container.manage_delObjects([getId()])"> </dtml-in> </dtml-let> </dtml-if> <dtml-if "(meta_type=='Folder') or (meta_type=='ZipFolder')" ><dtml-with sequence-item ><dtml-var x_ST ></dtml-with
<dtml-else </dtml-if </dtml-in>
Regards JL.