projects
/
Plinn.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
27df903
)
On s'apprête à customiser le comportement aux requêtes PUT. Copie telle quelle du...
author
Benoît Pin
<pin@cri.ensmp.fr>
Thu, 27 Jun 2013 08:15:53 +0000
(10:15 +0200)
committer
Benoît Pin
<pin@cri.ensmp.fr>
Thu, 27 Jun 2013 08:15:53 +0000
(10:15 +0200)
Folder.py
patch
|
blob
|
history
diff --git
a/Folder.py
b/Folder.py
index
0d395be
..
9808810
100644
(file)
--- a/
Folder.py
+++ b/
Folder.py
@@
-33,6
+33,7
@@
from cgi import escape
from OFS import Moniker
from ZODB.POSException import ConflictError
import OFS.subscribers
from OFS import Moniker
from ZODB.POSException import ConflictError
import OFS.subscribers
+from webdav.NullResource import NullResource
from zope.event import notify
from zope.lifecycleevent import ObjectCopiedEvent
try :
from zope.event import notify
from zope.lifecycleevent import ObjectCopiedEvent
try :
@@
-81,6
+82,18
@@
class PlinnFolder(CMFCatalogAware, PortalFolder, DefaultDublinCoreImpl) :
def __init__( self, id, title='' ) :
PortalFolder.__init__(self, id)
DefaultDublinCoreImpl.__init__(self, title = title)
def __init__( self, id, title='' ) :
PortalFolder.__init__(self, id)
DefaultDublinCoreImpl.__init__(self, title = title)
+
+ def __getitem__(self, key):
+ if key in self:
+ return self._getOb(key, None)
+ request = getattr(self, 'REQUEST', None)
+ if not isinstance(request, (str, NoneType)):
+ method=request.get('REQUEST_METHOD', 'GET')
+ if (request.maybe_webdav_client and
+ method not in ('GET', 'POST')):
+ return NullResource(self, key, request).__of__(self)
+ raise KeyError, key
+
security.declarePublic('allowedContentTypes')
def allowedContentTypes(self):
security.declarePublic('allowedContentTypes')
def allowedContentTypes(self):