[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/ - simplified PUT code

Yvo Schubbe y.2011 at wcm-solutions.de
Tue Jul 12 11:26:34 EDT 2011


Log message for revision 122159:
  - simplified PUT code

Changed:
  U   Products.CMFDefault/trunk/Products/CMFDefault/Document.py
  UU  Products.CMFDefault/trunk/Products/CMFDefault/DublinCore.py
  UU  Products.CMFDefault/trunk/Products/CMFDefault/Link.py

-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/Document.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/Document.py	2011-07-12 15:16:35 UTC (rev 122158)
+++ Products.CMFDefault/trunk/Products/CMFDefault/Document.py	2011-07-12 15:26:33 UTC (rev 122159)
@@ -169,19 +169,8 @@
         headers['Subject'] = new_subject or self.Subject()
         new_contrib = contributorsplitter(headers)
         headers['Contributors'] = new_contrib or self.Contributors()
-        for key, value in self.getMetadataHeaders():
-            if not key in headers:
-                headers[key] = value
-        self._editMetadata(title=headers['Title'],
-                          subject=headers['Subject'],
-                          description=headers['Description'],
-                          contributors=headers['Contributors'],
-                          effective_date=headers['Effective_date'],
-                          expiration_date=headers['Expiration_date'],
-                          format=headers['Format'],
-                          language=headers['Language'],
-                          rights=headers['Rights'],
-                          )
+        headers = dict((k.lower(), v) for k, v in headers.iteritems())
+        self._editMetadata(**headers)
 
     security.declarePrivate('guessFormat')
     def guessFormat(self, text):

Modified: Products.CMFDefault/trunk/Products/CMFDefault/DublinCore.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/DublinCore.py	2011-07-12 15:16:35 UTC (rev 122158)
+++ Products.CMFDefault/trunk/Products/CMFDefault/DublinCore.py	2011-07-12 15:26:33 UTC (rev 122159)
@@ -11,8 +11,6 @@
 #
 ##############################################################################
 """ Dublin Core support for content types.
-
-$Id$
 """
 
 from AccessControl.SecurityInfo import ClassSecurityInfo
@@ -416,21 +414,20 @@
         self.rights = rights
 
     #
-    #  Management tab methods
+    #   Utility methods
     #
-
-    security.declarePrivate( '_editMetadata' )
-    def _editMetadata( self
-                     , title=_marker
-                     , subject=_marker
-                     , description=_marker
-                     , contributors=_marker
-                     , effective_date=_marker
-                     , expiration_date=_marker
-                     , format=_marker
-                     , language=_marker
-                     , rights=_marker
-                     ):
+    security.declarePrivate('_editMetadata')
+    def _editMetadata(self,
+                      title=_marker,
+                      subject=_marker,
+                      description=_marker,
+                      contributors=_marker,
+                      effective_date=_marker,
+                      expiration_date=_marker,
+                      format=_marker,
+                      language=_marker,
+                      rights=_marker,
+                      **kw):
         """ Update the editable metadata for this resource.
         """
         if title is not _marker:
@@ -452,6 +449,9 @@
         if rights is not _marker:
             self.setRights( rights )
 
+    #
+    #   ZMI methods
+    #
     security.declareProtected(ModifyPortalContent, 'manage_metadata')
     manage_metadata = DTMLFile( 'zmi_metadata', _dtmldir )
 


Property changes on: Products.CMFDefault/trunk/Products/CMFDefault/DublinCore.py
___________________________________________________________________
Deleted: svn:keywords
   - Author Date Id Revision

Modified: Products.CMFDefault/trunk/Products/CMFDefault/Link.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/Link.py	2011-07-12 15:16:35 UTC (rev 122158)
+++ Products.CMFDefault/trunk/Products/CMFDefault/Link.py	2011-07-12 15:26:33 UTC (rev 122159)
@@ -11,8 +11,6 @@
 #
 ##############################################################################
 """ Link instances represent explicit links-as-content.
-
-$Id$
 """
 
 import urlparse
@@ -133,33 +131,19 @@
         """
         return self.remote_url
 
-    security.declarePrivate( '_writeFromPUT' )
-    def _writeFromPUT( self, body ):
-        headers = {}
-        headers, body = parseHeadersBody(body, headers)
+    security.declarePrivate('_writeFromPUT')
+    def _writeFromPUT(self, body):
+        headers, body = parseHeadersBody(body)
         lines = body.split('\n')
-        self.edit( lines[0] )
+        self.edit(lines[0])
         headers['Format'] = self.URL_FORMAT
         new_subject = keywordsplitter(headers)
         headers['Subject'] = new_subject or self.Subject()
         new_contrib = contributorsplitter(headers)
         headers['Contributors'] = new_contrib or self.Contributors()
-        haveheader = headers.has_key
-        for key, value in self.getMetadataHeaders():
-            if not haveheader(key):
-                headers[key] = value
+        headers = dict((k.lower(), v) for k, v in headers.iteritems())
+        self._editMetadata(**headers)
 
-        self._editMetadata(title=headers['Title'],
-                          subject=headers['Subject'],
-                          description=headers['Description'],
-                          contributors=headers['Contributors'],
-                          effective_date=headers['Effective_date'],
-                          expiration_date=headers['Expiration_date'],
-                          format=headers['Format'],
-                          language=headers['Language'],
-                          rights=headers['Rights'],
-                          )
-
     ## FTP handlers
     security.declareProtected(ModifyPortalContent, 'PUT')
     def PUT(self, REQUEST, RESPONSE):


Property changes on: Products.CMFDefault/trunk/Products/CMFDefault/Link.py
___________________________________________________________________
Deleted: svn:keywords
   - Author Date Id Revision



More information about the checkins mailing list