[Zope-Checkins] CVS: Zope2 - Resource.py:1.37.16.5 Collection.py:1.17.90.1

andreas@serenade.digicool.com andreas@serenade.digicool.com
Tue, 1 May 2001 10:47:39 -0400


Update of /cvs-repository/Zope2/lib/python/webdav
In directory serenade.digicool.com:/tmp/cvs-serv12853

Modified Files:
      Tag: zope-2_3-branch
	Resource.py Collection.py 
Log Message:
Fix for Collector #2196



--- Updated File Resource.py in package Zope2 --
--- Resource.py	2001/03/27 19:50:37	1.37.16.4
+++ Resource.py	2001/05/01 14:47:38	1.37.16.5
@@ -211,8 +211,14 @@
         url=urlfix(REQUEST['URL'], 'DELETE')
         name=unquote(filter(None, string.split(url, '/'))[-1])
         # TODO: add lock checking here
-        self.aq_parent._delObject(name)
-        RESPONSE.setStatus(204)
+
+        # ajung: Fix for Collector # 2196
+       
+        if self.aq_parent.manage_delObjects([name],REQUEST=None)  is None:
+           RESPONSE.setStatus(204)
+        else:
+           RESPONSE.setStatus(403)
+      
         return RESPONSE
 
     def PROPFIND(self, REQUEST, RESPONSE):

--- Updated File Collection.py in package Zope2 --
--- Collection.py	2000/06/09 15:01:10	1.17
+++ Collection.py	2001/05/01 14:47:38	1.17.90.1
@@ -146,8 +146,15 @@
         url=urlfix(REQUEST['URL'], 'DELETE')
         name=unquote(filter(None, string.split(url, '/'))[-1])
         # TODO: add lock checking here
-        self.aq_parent._delObject(name)
-        RESPONSE.setStatus(204)
+
+        # ajung: additional check if we really could delete the collection
+        # (Collector #2196) 
+
+        if self.aq_parent.manage_delObjects([name],REQUEST=None)  is None:
+            RESPONSE.setStatus(204)
+        else:
+            RESPONSE.setStatus(403)
+
         return RESPONSE