Re: Captchas und Plone 3.2.2 ...

Ogi Vranesic <[email protected]>
Newsgroups gmane.comp.web.zope.german
Organization redCOR
Message-ID <[email protected]>
On Saturday 23 May 2009 19:54, Winfried Ritsch wrote:
> Hallo,
>
> Ich habe eine Plone Site 3.2.2 mit buildout aufgesetzt und wollte dort um
> anonymous Kommentare zuzulassen, Captchas installieren. Leider
> funktionierte qPloneCaptchas (auch branch plone3.2) nicht und ich sah dass
> es
> collective.captchas gibt.
>
> Fragen:
>
>  a) Ist collective.captchas empfehlenswert ? (also zukunftsicher)
>
>   wenn ja, würde ich sie gerne einsetzen.
>
>   Dazu die Unterfrage: Wie setzt man die ein ?
>
>   aus den Beispiel captchas.txt im browser folder werde ich nicht klug
> (zuwenig basiswissen siehe unten)
>
>
> b) wenn a) unklug
>
>  Wie fixed man qPloneCaptchas, bei mir bleiben die immer auf der seite
> haengen, also validieren nicht.
>
> Anhang:
> Info zu a)
>
> Habe template wie bei collective.captchaforms geschafft und ein
> validate_captcha.py  dazugeben und als validator eingetragen (im
> Webinterface einstweilen):
>
>  from Products.CMFPlone import PloneMessageFactory as _
>
>  captcha_valid = context.restrictedTraverse('@@captcha').verify(captcha)
>
>  if not captcha_valid:
> 	state.setError('captcha', _(u'This field is required, please provide some
> information.'), 'captcha_missing')
>
>  if state.getErrors():
> 	context.plone_utils.addPortalMessage(_(u'Please correct the indicated
> errors.'), 'error')
>  	return state.set(status='failure')
>  else:
>  	return state
>
>
> jedoch bekomme ich (wahrscheinlich) wegen
>
>  captcha_valid = context.restrictedTraverse('@@captcha').verify(captcha)
>
> immer "Unzureichende Berechtigung"
>
> Bitte um Hinweise Hilfe oder Alternativlösungen.
>
> mfG
>   Winfried

Hallo Winfried

wir haben eine Site von Plone 2.5 zu Plone 3 migriert und das Problem mit 
Captcha habe ich so gelöst, (da PloneCaptchas durch collective.captchas 
ersetz werden muss) dass das Formular als BrowserView gemacht ist
und dort kann mann Captcha-Klasse importieren, eine Instanz erstellen und mit 
einer Methode der BrowserView-Klasse durch den Gebrauch von 
captcha.verify(value) validieren, ob die Eingabe mit dem Captcha-Code 
übereinstimmt. Vielleicht hat es noch eine bessere und einfachere Lösung, 
aber ich weiss sie nicht.
Für weitere Frage stehe ich gerne zur Verfügung.

Ogi


_______________________________________________
zope mailing list
[email protected]
https://mail.dzug.org/mailman/listinfo/zope
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.