$public, "private" => $private), get_defined_vars ()); } /** * Verifies a reCAPTCHA™ code via Google®. * * @package s2Member\Utilities * @since 3.5 * * @param str $challenge The value of `recaptcha_challenge_field` during form submisson. * @param str $response The value of `recaptcha_response_field` during form submission. * @return bool True if ``$response`` is valid, else false. */ public static function recaptcha_code_validates ($challenge = FALSE, $response = FALSE) { $keys = c_ws_plugin__s2member_utils_captchas::recaptcha_keys (); $post_vars = array ("privatekey" => $keys["private"], "remoteip" => $_SERVER["REMOTE_ADDR"], "challenge" => $challenge, "response" => $response); /**/ return preg_match ("/^true/i", trim (c_ws_plugin__s2member_utils_urls::remote ("http://www.google.com/recaptcha/api/verify", $post_vars))); } /** * Builds a reCAPTCHA™ JavaScript `script` tag for display. * * @package s2Member\Utilities * @since 3.5 * * @param str $theme Optional. The theme used in display. Defaults to `clean`. * @param str $tabindex Optional. Value of `tabindex=""` attribute. Defaults to `-1`. * @param str $error Optional. An error message to display. * @return str HTML markup for JavaScript tag. */ public static function recaptcha_script_tag ($theme = FALSE, $tabindex = FALSE, $error = FALSE) { $theme = ($theme) ? $theme : "clean"; $tabindex = (strlen ($tabindex)) ? (int)$tabindex : -1; $keys = c_ws_plugin__s2member_utils_captchas::recaptcha_keys (); /**/ $options = '' . "\n"; $no_tabindex_icons = ''; $adjustments = (!apply_filters ("c_ws_plugin__s2member_utils_tabindex_recaptcha_icons", false, get_defined_vars ())) ? $no_tabindex_icons : ""; /**/ return $options . '' . $adjustments; } } } ?>