--- In zope@yahoogroups.com, "Jaroslav Lukesh" <lukesh@s...> wrote:
Hi all,
I want to delete all images recursively from my web tree by using this recursive DTML Method delimage (errorfull):
<dtml-in "objectItems(['Folder', 'ZipFolder', 'Image' ])" skip_unauthorized> <dtml-if "objectValues()=='Image'"> DEL: <dtml-var absolute_url><br> <dtml-call "manage_delObjects(id)"> <dtml-else> <dtml-with sequence-item> <dtml-var delimage> </dtml-with> </dtml-if> </dtml-in> I think that the <dtml-with sequence-item> should be before everything in the dtml-if. If I'm not wrong, when you make <dtml-call "manage_delObjects(id)">, you're refering to the parent object (a dtml method) and not to the object in question.
I think this should do the job: <dtml-in "objectItems(['Folder', 'ZipFolder', 'Image' ])" skip_unauthorized> <dtml-with sequence-item> <dtml-if "meta_type=='Image'"> DEL: <dtml-var absolute_url><br> <dtml-call "manage_delObjects(id)"> <dtml-else> <dtml-var delimage> </dtml-if> </dtml-with> </dtml-in> Anyway, I think that recursive DTML Methods aren't a good idea. As Andy said, it's better to use a python script, so that you won't get confused about Namespaces and it will look cleaner. Regards, Josef