Skip to content

Commit

Permalink
PEP-8 and whitespaces.
Browse files Browse the repository at this point in the history
  • Loading branch information
sallner committed Jul 17, 2018
1 parent 2cd528c commit cd4538e
Show file tree
Hide file tree
Showing 7 changed files with 52 additions and 32 deletions.
20 changes: 11 additions & 9 deletions src/five/formlib/__init__.py
Expand Up @@ -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
Expand Down Expand Up @@ -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):
Expand All @@ -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.
Expand All @@ -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()
Expand All @@ -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.
Expand All @@ -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
Expand Down
10 changes: 6 additions & 4 deletions src/five/formlib/formbase.py
Expand Up @@ -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')
Expand All @@ -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])
Expand Down
13 changes: 8 additions & 5 deletions src/five/formlib/metaconfigure.py
Expand Up @@ -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')
Expand All @@ -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
Expand All @@ -65,6 +65,7 @@ def EditViewFactory(name, schema, label, permission, layer,
protectClass(class_, permission)
InitializeClass(class_)


class FiveFormDirective(BaseFormDirective):

def _processWidgets(self):
Expand All @@ -73,6 +74,7 @@ def _processWidgets(self):
'CustomWidgetsMixin', (Base,), self._widgets)
self.bases = self.bases + (customWidgetsObject,)


class EditFormDirective(FiveFormDirective):

view = EditView
Expand Down Expand Up @@ -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
Expand All @@ -128,6 +130,7 @@ def AddViewFactory(name, schema, label, permission, layer,
protectClass(class_, permission)
InitializeClass(class_)


class AddFormDirective(FiveFormDirective):

view = AddView
Expand Down Expand Up @@ -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},
)
)
2 changes: 2 additions & 0 deletions src/five/formlib/objectwidget.py
Expand Up @@ -31,6 +31,7 @@ class ObjectWidgetView(OWVBase):

template = ViewPageTemplateFile('objectwidget.pt')


InitializeClass(ObjectWidgetView)


Expand All @@ -50,4 +51,5 @@ def setRenderedValue(self, value):
val = self.context.schema[name].default
self.getSubWidget(name).setRenderedValue(val)


ObjectWidget = ObjectWidgetClass
8 changes: 5 additions & 3 deletions src/five/formlib/tests/content.py
Expand Up @@ -24,28 +24,29 @@

_ = MessageFactory('formtest')


class IContent(Interface):

id = ASCIILine(
title=_(u"Id"),
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
Expand All @@ -59,4 +60,5 @@ def __init__(self, id, title, somelist=None):
self.title = title
self.somelist = somelist


InitializeClass(Content)
30 changes: 19 additions & 11 deletions src/five/formlib/tests/schemacontent.py
Expand Up @@ -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"""
Expand All @@ -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(
Expand All @@ -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
1 change: 1 addition & 0 deletions src/five/formlib/tests/test_formlib.py
Expand Up @@ -60,6 +60,7 @@ def test_get_widgets_for_schema_fields():
>>> tearDown()
"""


def test_suite():
return unittest.TestSuite([
DocTestSuite(),
Expand Down

0 comments on commit cd4538e

Please sign in to comment.