Function Reference: geodir_recaptcha_check
Summary
verify captcha.
Package
GeoDirectory_ReCaptcha
Parameters
- $form
- (string) (required) The form name.
- Default: None
- $errors
- (string) (required) Form errors.
- Default: None
Change Log
Since: 1.0.0
Source File
geodir_recaptcha_check() is located in geodir_recaptcha/includes/gdcaptcha_functions.php [Line: 849]
Source Code
function geodir_recaptcha_check( $form = '', $errors='' ) { $site_key = get_option( 'geodir_recaptcha_site_key' ); $secret_key = get_option( 'geodir_recaptcha_secret_key' ); if ( !( strlen( $site_key ) > 10 && strlen( $secret_key ) > 10 ) ) { return; } if ( !class_exists( 'ReCaptcha' ) ) { require_once( GEODIR_RECAPTCHA_PLUGIN_PATH . '/lib/recaptchalib.php' ); } $reCaptcha = new ReCaptcha( $secret_key ); $recaptcha_value = isset( $_POST['g-recaptcha-response'] ) ? $_POST['g-recaptcha-response'] : ''; $response = $reCaptcha->verifyResponse( $_SERVER['REMOTE_ADDR'], $recaptcha_value ); $invalid_captcha = !empty( $response ) && isset( $response->success ) && $response->success ? false : true; if ( !$invalid_captcha ) { return; } else { if ( $form == 'bp_registration' ) { global $bp; $bp->signup->errors['gd_recaptcha_field'] = __( 'You have entered an incorrect CAPTCHA value.', GDCAPTCHA_TEXTDOMAIN ); return; } else { if ( !empty( $errors ) && is_object( $errors ) ) { $errors->add( 'invalid_captcha', __( 'ERROR: You have entered an incorrect CAPTCHA value.', GDCAPTCHA_TEXTDOMAIN ) ); } else { wp_die( __( 'ERROR: You have entered an incorrect CAPTCHA value. Click the BACK button on your browser, and try again.', GDCAPTCHA_TEXTDOMAIN ) ); } } } }