From c83d826c46730cc4712613e23dd5d45c63b4c867 Mon Sep 17 00:00:00 2001 From: Timo Stollenwerk Date: Fri, 21 Aug 2009 21:15:13 +0000 Subject: [PATCH] Making captcha validator only adapt for the appropriate browser layer. This fixes the captcha error issue when p.a.d is in a deployment but not installed yet. Merge from r29239 from evilbungle-safe-html branch. svn path=/plone.app.discussion/trunk/; revision=29248 --- plone/app/discussion/browser/validator.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/plone/app/discussion/browser/validator.py b/plone/app/discussion/browser/validator.py index 7d9688c..d03629f 100644 --- a/plone/app/discussion/browser/validator.py +++ b/plone/app/discussion/browser/validator.py @@ -16,12 +16,19 @@ from zope.schema import ValidationError from plone.registry.interfaces import IRegistry -from plone.app.discussion.interfaces import IDiscussionSettings, MessageFactory as _ +from plone.app.discussion.interfaces import IDiscussionSettings, IDiscussionLayer, MessageFactory as _ + +from zope.interface import implements, Interface +from zope.schema.interfaces import IField +from zope.component import adapts class WrongCaptchaCode(ValidationError): __doc__ = _("""The code you entered was wrong, please enter the new one.""") class CaptchaValidator(validator.SimpleFieldValidator): + implements(IValidator) + adapts(Interface,IDiscussionLayer,Interface,IField,Interface) + # Object, Request, Form, Field, Widget, def validate(self, value): super(CaptchaValidator, self).validate(value)