?
avatar mawa7
mawa7
27 Mar 2016

Steps to reproduce the issue

Upgrade from 3.4.8 to 3.5.0

Expected result

ReCaptcha picture is rendered into the frontend page

Actual result

After upgrading Joomla from 3.4.8 to 3.5.0 the ReCaptcha picture "I'm not a robot" is not rendered into the frontend user registration page with Internet Explorer 11 anymore. In the backend the ReCaptcha plugin shows that "Version 1.0 is selected" even with selected 2.0 in the dropdown box. Additionally, the field "Theme" is shown twice.

With Android Chrome everything is working fine as it should be.

System information (as much as possible)

Joomla 3.5.0, Internet Explorer 11, no user plugin with Captcha handling

Additional comments

Frontend screenshot:
screen shot 2016-03-27 at 12 58 55

Backend screenshot:
screen shot 2016-03-27 at 13 07 42

Votes

# of Users Experiencing Issue
4/4
Average Importance Score
3.50

avatar mawa7 mawa7 - open - 27 Mar 2016
avatar Bakual
Bakual - comment - 27 Mar 2016

Confirmed on IE11 and Egde.
Interesting enough, im IE11, it shows the first time I load the form (tested with contact and registration), but disappears when I reload the page.
In Edge, it never showed for me.

avatar brianteeman brianteeman - change - 27 Mar 2016
Status New Confirmed
avatar zero-24
zero-24 - comment - 27 Mar 2016

@mawa7 as for the double Theme setting you need to clear the browser cache. It is because we update the showon JS with 3.5.0.

@mawa7 @Bakual can you try this: https://social.technet.microsoft.com/Forums/ie/en-US/b6c57c4e-5499-45b2-8a00-2de960a1277a/ie-will-not-display-captcha?forum=ieitprocurrentver

I found the answer late yesterday, it was a group policy setting "Turn off Data URI support", I enabled this setting and it started working. No info out there in the google'shpere about this. If this is disabled captcha's won't work. Thanks for the tips, much appreciated.

avatar mawa7
mawa7 - comment - 28 Mar 2016

Thanks @zero-24 for sharing information. Indeed, clearing browser cache solved the backend issue. Interestingly, the captcha gets shown in the frontend every first time I cleared the cache but disappears after page reloading onwards as @Bakual described.

I can't handle the group policy thing. I browse with a private computer directly without being in any workgroup. Do I have any group policies to change? Couldn't find anything for a while googling?!


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/9623.

avatar Bakual
Bakual - comment - 28 Mar 2016

Same for me. No group policy stuff in effect here as it's a personal home computer. Also it shows the first time which should rule out such settings imho. Has to be some sort of cache issue.

avatar ColinM2
ColinM2 - comment - 6 Apr 2016

This problem occurs with Chrome and Firefox itself. We are using it in jDownloads as one of the available protections. It is fine in 3.4.8 but not OK in 3.5.0 or 3.5.1. It appears to omit generating a whole section of code. There are two images attached showing view in 3.4.8 and 3.5.1 respectively and two txt files, which are better if renamed with html extensions, that show the generated code differences.

captcha01
captcha02
Catcha code in 3-4-8.txt
Catcha code in 3-5 .txt

avatar mawa7
mawa7 - comment - 6 Apr 2016

Same for me. The problem is still present on IE11 with new 3.5.1 version, but not on Android Chrome.

avatar andrepereiradasilva
andrepereiradasilva - comment - 6 Apr 2016

@ColinM2

For using recaptcha 2.0 i think you have to have the class="g-recaptcha" and the data-sitekey (the id is not mandatory in recaptcha 2) to work in a hardcoded scenario. example.

<div class="g-recaptcha" data-sitekey="<your-site-key>"></div>

More info #9111

Anyway, you should use Joomla API to load the captcha. Some examples:

  • Using only the recaptcha plugin data-sitekey parameter:
<?php $params = new JRegistry(JPluginHelper::getPlugin('captcha', 'recaptcha')->params); ?>
<div class="g-recaptcha" data-sitekey="<?php echo $params->get('public_key', ''); ?>"></div>
  • Using the recaptcha plugin events.
$captchaId = '';
JPluginHelper::importPlugin('captcha', 'recaptcha');
$dispatcher = JEventDispatcher::getInstance();
$initResult = $dispatcher->trigger('onInit', array($captchaId));
if ($initResult[0])
{
    echo implode('', $dispatcher->trigger('onDisplay', array(null, $captchaId, 'class=""')));
}

Note: not 100% sure this is the best code to do it, but this works with recaptcha 2.0.

avatar ColinM2
ColinM2 - comment - 6 Apr 2016

@andrepereiradasilva
Thanks for comments and tips. We actually do use the recaptcha plugin approach and not hard code. We assumed that doing it that way would keep the interface the same but it appears that something has changed. What I showed was the generated code, not the code creating the generated output.

Arno, who owns jDownloads, is the coding expert and will be re-implementing tomorrow hopefully.
What I do not understand is what changed in Joomla! 3.5 to make the previous working code in version in 3.4.8 now fail to work.

avatar Garfield999
Garfield999 - comment - 9 May 2016

Same for me with J3.5.1. Recaptcha V2 works in firefox/chrome. But ie11/edge (win10) show only at first load from page.

avatar vinespie
vinespie - comment - 20 May 2016

After analysis, I feel that the problem arises when the javascript files are cached. If the cache is disabled in IE , no problem . Maybe a track ...

avatar Franklin67
Franklin67 - comment - 23 May 2016

Hello,

I have also have a problem with reCaptcha V2! On IE 11 I can only see the text without the graphic and it is not possible to click on the White box as it is not visible. On Firefox 46.0.1 the text and the graphic is shown and I am able to click in the White box. But after that when I then click on "Continue" reCaptcha is shown again and again.

My Website is running on Joomla 3.5.1.

avatar vinespie vinespie - reference | 8876905 - 23 May 16
avatar piotr-cz
piotr-cz - comment - 23 May 2016

I can confirm on Edge. Widget doesn't load when opening the page first time. On reload it works.
This is caused by the script loading order: first there should be loaded the handler and then library. As both files get cached on first page load, widget works on any other ones.

See #10601 fix. Credits to @vinespie

avatar Bakual Bakual - close - 23 May 2016
avatar Bakual
Bakual - comment - 23 May 2016

Closing since we have a PR #10601

avatar Bakual Bakual - change - 23 May 2016
Status Confirmed Closed
Closed_Date 0000-00-00 00:00:00 2016-05-23 14:14:35
Closed_By Bakual
avatar Bakual Bakual - close - 23 May 2016
avatar DiGwork
DiGwork - comment - 20 Jun 2016

I am using
screen shot 2016-06-20 at 18 12 21My recaptcha is showing both the I'm not a robot and the old image recaptcha at the same time how do I fix this


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/9623.

avatar piotr-cz
piotr-cz - comment - 21 Jun 2016

@DiGwork
This seems like another problem, not related to reCAPTCHA but system plugin rendering.
You should create new issue for this.

avatar wojsmol
wojsmol - comment - 21 Jun 2016

Add a Comment

Login with GitHub to post a comment