reCAPTHA v2 for OJS 2.4.8

Hi, we use OJS 2.4.8.1 and can’t upgrade to 3.x until LOCKSS plugin will be available (OJS 3: Where is the PKP PLN plugin - #13 by asmecher).
Now we notice reCAPTHA v1 will be available until 31 march and I couldn’t find a reCAPTHA v2 patch for OJS 2.4.8.
How can we solve this problem?

Thank you.
Enzo

Hi @Enzo,

See reCaptcha V2 Manual upgrade steps for information on porting the ReCaptcha update to OJSv2. We hope to have the LOCKSS plugin for OJS3 released very soon – it’s undergoing testing.

Regards,
Alec Smecher
Public Knowledge Project Team

Thank you.
So, before to apply the update I have at first to upgrade OJS to 2.4.8-3. But upgrade operation failed.

  • I downloaded ojs-2.4.8-1_to_2.4.8-3.patch file
  • applied it with patch -p1 --dry-run < ojs-2.4.8-1_to_2.4.8-3.patch
  • than patch -p1 < ojs-2.4.8-1_to_2.4.8-3.patch
  • finally php tools/upgrade.php check
  • got this:
    $ php tools/upgrade.php check
    PHP Deprecated:  Non-static method PKPApplication::defineExposedConstant() should not be called statically in /var/www/vhosts/OJS/journals.OJS/lib/pkp/classes/core/PKPApplication.inc.php on line 545
    PHP Deprecated:  Non-static method PKPApplication::getExposedConstants() should not be called statically in /var/www/vhosts/OJS/journals.OJS/lib/pkp/classes/core/PKPApplication.inc.php on line 513
    PHP Fatal error:  Cannot use 'String' as class name as it is reserved in /var/www/vhosts/OJS/journals.OJS/lib/pkp/classes/core/String.inc.php on line 57

Thanks for your help.
Enzo

Hi @Enzo,

I suspect your PHP command-line interpreter is PHP7 or newer; OJS 2.x doesn’t currently support PHP7. You should have another PHP binary on your server somewhere that’s PHP5.x, if you’re currently running OJS 2.x on that server; find it, and try specifying that binary specifically in the command line when running the upgrade script.

Regards,
Alec Smecher
Public Knowledge Project Team

I upgraded successfully.
Thank you