[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/ -
refactored code added in r85591 to get rid of finishCreate
Yvo Schubbe
y.2008 at wcm-solutions.de
Fri Apr 25 03:19:28 EDT 2008
Log message for revision 85718:
- refactored code added in r85591 to get rid of finishCreate
Changed:
U Products.CMFDefault/trunk/Products/CMFDefault/browser/file.py
U Products.CMFDefault/trunk/Products/CMFDefault/formlib/form.py
-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/file.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/file.py 2008-04-25 05:36:18 UTC (rev 85717)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/file.py 2008-04-25 07:19:27 UTC (rev 85718)
@@ -16,6 +16,8 @@
"""
from zope.component import adapts
+from zope.component import getUtility
+from zope.component.interfaces import IFactory
from zope.formlib import form
from zope.interface import implements
from zope.interface import Interface
@@ -102,7 +104,13 @@
self.widgets['portal_type'].hide = True
self.widgets['upload'].displayWidth = 60
- def finishCreate(self, obj, data):
+ def create(self, data):
+ ttool = self._getTool('portal_types')
+ fti = ttool.getTypeInfo(data['portal_type'])
+ factory = getUtility(IFactory, fti.factory)
+ obj = factory('temp_id')
+ obj._setPortalTypeName(data['portal_type'])
+
adapted = FileSchemaAdapter(obj)
adapted.language = u''
adapted.upload = self.request.form['%s.upload' % self.prefix]
Modified: Products.CMFDefault/trunk/Products/CMFDefault/formlib/form.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/formlib/form.py 2008-04-25 05:36:18 UTC (rev 85717)
+++ Products.CMFDefault/trunk/Products/CMFDefault/formlib/form.py 2008-04-25 07:19:27 UTC (rev 85718)
@@ -23,8 +23,6 @@
from Products.Five.formlib.formbase import PageDisplayForm
from Products.Five.formlib.formbase import PageForm
from zope.app.container.interfaces import INameChooser
-from zope.component import getUtility
-from zope.component.interfaces import IFactory
from zope.datetime import parseDatetimetz
from zope.formlib import form
from zope.i18n.interfaces import IUserPreferredLanguages
@@ -147,22 +145,6 @@
self.status = None
return self._setRedirect('portal_types', 'object/folderContents')
- def create(self, data):
- portal_type = self.request.form['%s.portal_type' % self.prefix]
-
- #check type exists
- ttool = self._getTool('portal_types')
- fti = ttool.getTypeInfo(portal_type)
- if fti is None:
- raise ValueError(u'No such content type: %s' % portal_type)
-
- factory = getUtility(IFactory, fti.factory)
- obj = factory('temp_id')
- if hasattr(obj, '_setPortalTypeName'):
- obj._setPortalTypeName(portal_type)
-
- return self.finishCreate(obj, data)
-
def add(self, obj):
container = self.context
upload = self.request.form.get('%s.upload' % self.prefix)
More information about the Checkins
mailing list