From cd4538ef03cac15f24bd90e583f54b4d865cfb73 Mon Sep 17 00:00:00 2001 From: Steffen Allner Date: Tue, 17 Jul 2018 09:40:58 +0200 Subject: [PATCH] PEP-8 and whitespaces. --- src/five/formlib/__init__.py | 20 +++++++++-------- src/five/formlib/formbase.py | 10 +++++---- src/five/formlib/metaconfigure.py | 13 ++++++----- src/five/formlib/objectwidget.py | 2 ++ src/five/formlib/tests/content.py | 8 ++++--- src/five/formlib/tests/schemacontent.py | 30 ++++++++++++++++--------- src/five/formlib/tests/test_formlib.py | 1 + 7 files changed, 52 insertions(+), 32 deletions(-) diff --git a/src/five/formlib/__init__.py b/src/five/formlib/__init__.py index 5d5777f..ecf30b7 100644 --- a/src/five/formlib/__init__.py +++ b/src/five/formlib/__init__.py @@ -28,6 +28,7 @@ from zope.location import LocationProxy from zope.schema.interfaces import ValidationError from zope.i18nmessageid import MessageFactory +from zope.schema import getFieldNamesInOrder from zope.app.form.browser.submit import Update from zope.app.form.utility import setUpEditWidgets @@ -78,7 +79,7 @@ def setPrefix(self, prefix): widget.setPrefix(prefix) def widgets(self): - return [getattr(self, name+'_widget') + return [getattr(self, name + '_widget') for name in self.fieldNames] def changed(self): @@ -99,8 +100,8 @@ def update(self): if Update in self.request.form.keys(): changed = False try: - changed = applyWidgetsChanges(self, self.schema, - target=content, names=self.fieldNames) + changed = applyWidgetsChanges( + self, self.schema, target=content, names=self.fieldNames) # We should not generate events when an adapter is used. # That's the adapter's job. We need to unwrap the objects to # compare them, as they are wrapped differently. @@ -109,10 +110,10 @@ def update(self): # when they are identical. In particular # aq_base(self.adapted) != self.adapted.aq_base :-( if changed and getattr(self.context, 'aq_base', self.context)\ - is getattr(self.adapted, 'aq_base', self.adapted): + is getattr(self.adapted, 'aq_base', self.adapted): description = Attributes(self.schema, *self.fieldNames) notify(ObjectModifiedEvent(content, description)) - except WidgetsError, errors: + except WidgetsError as errors: self.errors = errors status = _("An error occurred.") transaction.abort() @@ -123,14 +124,15 @@ def update(self): if changed: self.changed() formatter = self.request.locale.dates.getFormatter( - 'dateTime', 'medium') + 'dateTime', 'medium') status = _("Updated on ${date_time}", - mapping={'date_time': - formatter.format(datetime.utcnow())}) + mapping={'date_time': + formatter.format(datetime.utcnow())}) self.update_status = status return status + class AddView(EditView): """Simple edit-view base class. @@ -152,7 +154,7 @@ def update(self): try: data = getWidgetsData(self, self.schema, names=self.fieldNames) self.createAndAdd(data) - except WidgetsError, errors: + except WidgetsError as errors: self.errors = errors self.update_status = _("An error occurred.") return self.update_status diff --git a/src/five/formlib/formbase.py b/src/five/formlib/formbase.py index db52444..77bdf3e 100644 --- a/src/five/formlib/formbase.py +++ b/src/five/formlib/formbase.py @@ -18,12 +18,12 @@ import zope.formlib from zope import interface from zope.formlib import interfaces, form -from zope.i18nmessageid import MessageFactory -_ = MessageFactory("zope") from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile from Products.Five.browser.decode import processInputs from ZPublisher import HTTPRequest +from zope.i18nmessageid import MessageFactory +_ = MessageFactory("zope") _FORMLIB_DIR = os.path.dirname(zope.formlib.__file__) _PAGEFORM_PATH = os.path.join(_FORMLIB_DIR, 'pageform.pt') @@ -45,8 +45,10 @@ class FiveFormlibMixin(object): def update(self): # BBB: for CMFDefault < 2.3 (explicit charset required) - self.request.RESPONSE.setHeader('Content-Type', - 'text/html; charset=%s' % HTTPRequest.default_encoding) + self.request.RESPONSE.setHeader( + 'Content-Type', + 'text/html; charset=%s' % HTTPRequest.default_encoding + ) # BBB: for Zope < 4 if not getattr(self.request, 'postProcessInputs', False): processInputs(self.request, [HTTPRequest.default_encoding]) diff --git a/src/five/formlib/metaconfigure.py b/src/five/formlib/metaconfigure.py index ff62db6..afce12f 100644 --- a/src/five/formlib/metaconfigure.py +++ b/src/five/formlib/metaconfigure.py @@ -30,7 +30,7 @@ from Products.Five.browser.metaconfigure import SimpleViewClass except ImportError: # Zope < 4 - from Products.Five.browser.metaconfigure import makeClassForTemplate as SimpleViewClass + from Products.Five.browser.metaconfigure import makeClassForTemplate as SimpleViewClass # noqa: E501 from five.formlib import EditView, AddView _ = MessageFactory('zope') @@ -40,7 +40,7 @@ def EditViewFactory(name, schema, label, permission, layer, template, default_template, bases, for_, fields, fulledit_path=None, fulledit_label=None, menu=u''): class_ = SimpleViewClass(template, globals(), used_for=schema, - bases=bases) + bases=bases) class_.schema = schema class_.label = label class_.fieldNames = fields @@ -65,6 +65,7 @@ def EditViewFactory(name, schema, label, permission, layer, protectClass(class_, permission) InitializeClass(class_) + class FiveFormDirective(BaseFormDirective): def _processWidgets(self): @@ -73,6 +74,7 @@ def _processWidgets(self): 'CustomWidgetsMixin', (Base,), self._widgets) self.bases = self.bases + (customWidgetsObject,) + class EditFormDirective(FiveFormDirective): view = EditView @@ -103,7 +105,7 @@ def AddViewFactory(name, schema, label, permission, layer, keyword_arguments, set_before_add, set_after_add, menu=u''): class_ = SimpleViewClass(template, globals(), used_for=schema, - bases=bases) + bases=bases) class_.schema = schema class_.label = label @@ -128,6 +130,7 @@ def AddViewFactory(name, schema, label, permission, layer, protectClass(class_, permission) InitializeClass(class_) + class AddFormDirective(FiveFormDirective): view = AddView @@ -214,8 +217,8 @@ def __call__(self): self._context.action( discriminator=self._discriminator(), callable=AddViewFactory, - args=self._args()+(self.content_factory, self.arguments, + args=self._args() + (self.content_factory, self.arguments, self.keyword_arguments, self.set_before_add, self.set_after_add), kw={'menu': self.menu}, - ) + ) diff --git a/src/five/formlib/objectwidget.py b/src/five/formlib/objectwidget.py index c2e29ee..6f139c8 100644 --- a/src/five/formlib/objectwidget.py +++ b/src/five/formlib/objectwidget.py @@ -31,6 +31,7 @@ class ObjectWidgetView(OWVBase): template = ViewPageTemplateFile('objectwidget.pt') + InitializeClass(ObjectWidgetView) @@ -50,4 +51,5 @@ def setRenderedValue(self, value): val = self.context.schema[name].default self.getSubWidget(name).setRenderedValue(val) + ObjectWidget = ObjectWidgetClass diff --git a/src/five/formlib/tests/content.py b/src/five/formlib/tests/content.py index cd574e3..04af550 100644 --- a/src/five/formlib/tests/content.py +++ b/src/five/formlib/tests/content.py @@ -24,6 +24,7 @@ _ = MessageFactory('formtest') + class IContent(Interface): id = ASCIILine( @@ -31,21 +32,21 @@ class IContent(Interface): description=_(u"The object id."), default='', required=True - ) + ) title = TextLine( title=_(u"Title"), description=_(u"A short description of the event."), default=u"", required=True - ) + ) somelist = List( title=_(u"Some List"), value_type=TextLine(title=_(u"Some item")), default=[], required=False - ) + ) class Content(SimpleItem): """A Viewable piece of content with fields @@ -59,4 +60,5 @@ def __init__(self, id, title, somelist=None): self.title = title self.somelist = somelist + InitializeClass(Content) diff --git a/src/five/formlib/tests/schemacontent.py b/src/five/formlib/tests/schemacontent.py index 1abb212..4bce5fa 100644 --- a/src/five/formlib/tests/schemacontent.py +++ b/src/five/formlib/tests/schemacontent.py @@ -32,27 +32,27 @@ class IFieldContent(Interface): description=_(u"A short description of the event."), default=u"", required=True - ) + ) description = Text( title=_(u"Description"), description=_(u"A long description of the event."), default=u"", required=False - ) + ) somenumber = Int( title=_(u"Some number"), default=0, required=False - ) + ) somelist = List( title=_(u"Some List"), value_type=TextLine(title=_(u"Some item")), default=[], required=False - ) + ) class FieldContent(SimpleItem): """A Viewable piece of content with fields""" @@ -63,13 +63,16 @@ def __init__(self, id, title): self.id = id self.title = title + InitializeClass(FieldContent) + def manage_addFieldContent(self, id, title, REQUEST=None): """Add the field content""" id = self._setObject(id, FieldContent(id, title)) return '' + class IComplexSchemaContent(Interface): fishtype = TextLine( @@ -86,30 +89,35 @@ class IComplexSchemaContent(Interface): class ComplexSchemaContent(SimpleItem): implements(IComplexSchemaContent) - meta_type ="Five ComplexSchemaContent" + meta_type = "Five ComplexSchemaContent" + + def __init__(self, id): + self.id = id + self.fish = FieldContent('fish', 'title') + self.fish.description = "" + self.fishtype = 'Lost fishy' - def __init__(self, id): - self.id = id - self.fish = FieldContent('fish', 'title') - self.fish.description = "" - self.fishtype = 'Lost fishy' class ComplexSchemaView: """Needs a docstring""" fish_widget = CustomWidgetFactory(ObjectWidget, FieldContent) + InitializeClass(ComplexSchemaContent) + def manage_addComplexSchemaContent(self, id, REQUEST=None): """Add the complex schema content""" id = self._setObject(id, ComplexSchemaContent(id)) return '' + def modifiedSubscriber(content, ev): """A simple event handler, which sets a flag on the object""" content._modified_flag = True -def createdSubscriber(content,ev): + +def createdSubscriber(content, ev): """A simple event handler, which sets a flag on the object""" content._created_flag = True diff --git a/src/five/formlib/tests/test_formlib.py b/src/five/formlib/tests/test_formlib.py index 5722dad..72c3517 100644 --- a/src/five/formlib/tests/test_formlib.py +++ b/src/five/formlib/tests/test_formlib.py @@ -60,6 +60,7 @@ def test_get_widgets_for_schema_fields(): >>> tearDown() """ + def test_suite(): return unittest.TestSuite([ DocTestSuite(),