Jump to content

youngbuckscrew

Members
  • Posts

    6
  • Joined

  • Last visited

Posts posted by youngbuckscrew

  1. Okay this is one way of upgrading to v2 of recaptcha.

    Go here https://github.com/google/recaptcha and scroll down to Direct Download (assuming you don't use composer) and download the package. Once downloaded insert it into:  core/lib/recaptcha-master

    Once you have done this go to core/modules/registration/registration.php

    # Replace or comment out
    require_once CORE_LIB_PATH.'/recaptcha/recaptchalib.php';
    
    # With
    require_once CORE_LIB_PATH.'/recaptcha-master/src/autoload.php';

    In that same file, scroll down to VerifyData

    # Replace all code relating to captcha check with
    
      // start the error array as false, we dont have any errors yet.
      $error = false;
    
      // set the configurations for the service to work.
      $secret = Config::Get('RECAPTCHA_PRIVATE_KEY');
      $remoteIp = $_SERVER["REMOTE_ADDR"];
      $gRecaptchaResponse = $_POST['g-recaptcha-response'];
      $recaptcha = new \ReCaptcha\ReCaptcha($secret); 
    
      // Call the google service and verify the answer provided.
      $resp = $recaptcha->verify($gRecaptchaResponse, $remoteIp);
    
      // If Response was a success
      if ($resp->isSuccess())
      {
          // No errors; continue
          $this->set('captcha_error', '');
      } 
      else 
      {
          // Set error as true and show error on front-end
          $error = true;
          $this->set('captcha_error', true);
      }

    And finally on your registration_mainform.tpl 

    <div class="g-recaptcha" data-sitekey="<?php echo Config::Get('RECAPTCHA_PUBLIC_KEY'); ?>"></div>
    <script type="text/javascript"
            src="https://www.google.com/recaptcha/api.js?hl=en">
    </script>
    
    <!-- Recaptcha V2 -->
    <?php if($captcha_error == true)
        echo '<p class="error">Please verify you are human!</p>';
    ?>

    you can make a function for that like v1 but that's up to you. Let me know if this helps you! 

  2. There is a package with composer which is very easy to integrate with your forms. 

    https://github.com/anhskohbo/no-captcha

    If this is what you are referring too. If not explain further and i might be able to assist you. 

×
×
  • Create New...