+++ /dev/null
-##parameters=ids, **kw
-##title=Delete objects from a folder
-##
-request = context.REQUEST
-response = request.RESPONSE
-
-if request.cookies.has_key('__cp'):
- contextPath = context.getPhysicalPath()
- depth = len(contextPath) + 1
- strContextPath = ''.join(contextPath)
-
- cp = context.getCPInfo()
-
- deletedObPaths = {}
- for id in ids :
- deletedObPaths[strContextPath + id] = True
-
- indexes, paths = [], cp[1]
-
- for i in range(len(paths)) :
- path = paths[i]
- try :
- firstPart = path[:depth]
- if deletedObPaths.has_key(''.join(firstPart)) :
- indexes.append(i)
- except IndexError : continue
-
- context.popCP(indexes)
-
-
-ret = context.manage_delObjects( list(ids) )
-msg=''
-if ret :
- ignored = []
- for id in ret :
- o = getattr(context, id, None)
- if o :
- ignored.append(o.title_or_id())
- #TODO : translate messages
- #from Products.PlacelessTranslationService.MessageID import MessageIDFactory
- #_ = MessageIDFactory('plinn')
- _ = lambda x : lambda : x
- translate = lambda msg : _(msg)().decode('iso-8859-1').encode('utf-8')
- msg = translate('You are not allowed to delete: ') + ', '.join(ignored)
-
-msg = msg or 'Item%s deleted.' % ( len(ids) != 1 and 's' or '' )
-return context.setStatus( True, msg)