Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

All other Modules /

Discuss all other Modules here.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

Anti Spam Releases (Mollom, reCaptcha)


Go to End


38 Posts   25733 Views

Avatar
cuSSter

Community Member, 56 Posts

10 August 2010 at 6:17am

I was able to fix it. Hehehe :)

Avatar
g4m3c4ck

Community Member, 11 Posts

15 September 2010 at 4:17am

I was having problems with recaptcha's working.
I took out the XML inclusion and changed to html 5 as mentioned before by others. Everything worked properly but the graphics were all messed up. I fixed it by visiting http://wiki.recaptcha.net/index.php/How_to_change_reCAPTCHA_colors

JIC the change the wiki here is a C&P.

Important: this method is not officially supported and may break when new versions of reCAPTCHA system will come out.
For a full list of themes and how to create your own skin for your widget, go here theme
You can apply CSS styles to reCaptcha widget to change its colors and other visual properties. These instructions show you how.

Set the reCaptcha theme to "clean" by adding the following code to your site. The "clean" theme is much more neutral than the default one and much easier to integrate with site's look and feel.

<script>
var RecaptchaOptions = {
   theme : 'clean'
};
</script>

Other option are: red, white, blackglass, clean, custom

Then add the following instructions to your CSS file. Remember to replace #FF0000 with colors of your choice.

 .recaptchatable .recaptcha_image_cell, #recaptcha_table {
   background-color:#FF0000 !important; //reCaptcha widget background color
 }
 
 #recaptcha_table {
   border-color: #FF0000 !important; //reCaptcha widget border color
 }
 
 #recaptcha_response_field {
   border-color: #FF0000 !important; //Text input field border color
   background-color:#FF0000 !important; //Text input field background color
 }

Obviously you can add any other CSS property. Check any CSS tutorial for more information.

Avatar
Xurk

Community Member, 50 Posts

22 November 2010 at 11:38pm

Edited: 22/11/2010 11:45pm

I'm not sure if this is a problem with the reCaptcha module or not, but I thought it might be worth posting here to see if anyone else has experienced this or has a suggestion which might help solve this.

I've had the reCaptcha module installed in a client's website for about five months now and all has been going well. But upon arriving at work this morning, I couldn't help but notice [understatement ;)] that I had received over 700 "errors@silverstripe.com" e-mails over the weekend. All of them have the same error, that is:
Error: RecatpchaField::validate(): Recaptcha-service error: ''Input error: challenge: Error parsing captcha challenge value\n''
At line 295 in /home/hamaka/html/lpb.nl/recaptcha/code/RecaptchaField.php

Line 295 of that file is the user_error() function which is triggered when an invalid reCaptcha result does not contain the error message "incorrect-captcha-sol".

Of course I set out to test the reCaptcha field on a page it is included on. Both passing and failing the test went well and no strange feedback appeared on the screen. I also didn't receive error e-mails during my tests. But they keep pouring in, every ten minutes or so I'll receive them in groups of three.

My best guess is that any time a visitor views a page with a reCaptcha field on it, the error is triggered. But I have no idea where to start on looking for a solution... any tips? The e-mails are starting to drive me crazy ;-)

Avatar
Ingo

Forum Moderator, 801 Posts

16 December 2010 at 10:41pm

Which version of the recaptcha module are you running? 0.3 is very old, unfortunately I've been pretty slack with doing a new release - for now I'd recommend trunk. Specifically, I've committed a fix two months ago around change APIs and service end points at recaptcha: http://open.silverstripe.org/changeset/111805/modules/recaptcha/trunk

Avatar
Xurk

Community Member, 50 Posts

16 December 2010 at 11:10pm

Thanks for the info, Ingo! A day or two after I made that last post the e-mails stopped coming, but yesterday there was another fit which resulted in over 1,000 e-mails with error reports in them. So the problem is worth looking into.

I checked the CHANGELOG file included with the module and it seems like I am running version 0.3. I'll try implementing the trunk version next time I get a chance. There's no easy way to monitor whether or not that will "do the trick", but I guess if I don't receive any more error e-mails for a month or two then it can be considered solved :)

Avatar
Ingo

Forum Moderator, 801 Posts

17 December 2010 at 8:58am

BTW, a little trick commonly applied here at SilverStripe Ltd: DONT send error emails to your main address ;) I've got <name>+reports@<tld> instead of <name>@<tld> - Google Mail for Domains supports that, probably Gmail as well.

Avatar
neo67

Community Member, 6 Posts

23 December 2010 at 2:07am

Hello,

I get an error after installing recaptcha:

SS Ver. 2.4.4, newest captcha, newest spam modul.

After this, if i click on the titel of a blog post:

[User Warning] Form::loadDataFrom() not passed an array or an object
GET /silver/blog/blog-test-eintrag/
Line 944 in /www/htdocs/w00d5d1d/silver/sapphire/forms/Form.php

935 	 * @param boolean $clearMissingFields By default, fields which don't match
936 	 *  a property or array-key of the passed {@link $data} argument are "left alone",
937 	 *  meaning they retain any previous values (if present). If this flag is set to true,
938 	 *  those fields are overwritten with null regardless if they have a match in {@link $data}.
939 	 * @param $fieldList An optional list of fields to process.  This can be useful when you have a 
940 	 * form that has some fields that save to one object, and some that save to another.
941 	 */
942 	function loadDataFrom($data, $clearMissingFields = false, $fieldList = null) {
943 		if(!is_object($data) && !is_array($data)) {
944 			user_error("Form::loadDataFrom() not passed an array or an object", E_USER_WARNING);
945 			return false;
946 		}
947 
948 		// if an object is passed, save it for historical reference through {@link getRecord()}
949 		if(is_object($data)) $this->record = $data;
950 

I did not know, how to fix this?

Thanks!

Greetz
Juergen

Avatar
Ingo

Forum Moderator, 801 Posts

23 December 2010 at 8:40am

Could you provide a full backtrace please? I've tried recaptcha, both standalone and through the spamprotection module, works fine here.