def switch_on(view, request_layer=z3c.form.interfaces.IFormLayer): # Fix the request. If we find a form layer from plone.app.z3cform take # it away. It uses a base template using context/main_template but our # views don't have an implicit Acquisition context. The base template # from plone.z3cform uses /@@standard-macros which does work, so we fall # back on that one z2.switch_on(view, request_layer=request_layer) request = view.request if IPloneFormLayer.providedBy(request): noLongerProvides(request, IPloneFormLayer)
def render_form(self): provided = IPloneFormLayer.providedBy(self.request) noLongerProvides(self.request, IPloneFormLayer) alsoProvides(self.request, IFormLayer) try: form = self.create_form() if IWrappedForm is None: switch_on(self) alsoProvides(self.request, ICMFDefaultSkin) else: alsoProvides(form, IWrappedForm) form.update() return form.render() finally: noLongerProvides(self.request, IFormLayer) if provided: alsoProvides(self.request, IPloneFormLayer)
def test_layer_applied(self): from plone.app.z3cform.interfaces import IPloneFormLayer self.failUnless(IPloneFormLayer.providedBy(self.portal.REQUEST))
def test_layer_applied(self): from plone.app.z3cform.interfaces import IPloneFormLayer self.assertTrue(IPloneFormLayer.providedBy(self.portal.REQUEST))