| Server IP : 38.190.208.107 / Your IP : 216.73.217.46 Web Server : nginx/1.28.1 System : Linux ht2026040333114 6.1.0-10-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.37-1 (2023-07-03) x86_64 User : root ( 0) PHP Version : 8.2.28 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv,eval,assert,passthru,system,exec,shell_exec,popen,proc_open MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/wp.3/wp-content/plugins/wpforms-lite/src/Admin/Settings/Captcha/ |
Upload File : |
<?php
namespace WPForms\Admin\Settings\Captcha;
/**
* Cloudflare Turnstile settings class.
*
* @since 1.8.0
*/
class Turnstile extends Captcha {
/**
* Captcha variable used for JS invoking.
*
* @since 1.8.0
*
* @var string
*/
protected static $api_var = 'turnstile';
/**
* Captcha key name.
*
* @since 1.8.0
*
* @var string
*/
protected static $slug = 'turnstile';
/**
* The Turnstile Javascript URL-resource.
*
* @since 1.8.0
*
* @var string
*/
protected static $url = 'https://challenges.cloudflare.com/turnstile/v0/api.js';
/**
* Inline script for captcha initialization JS code.
*
* @since 1.8.0
*
* @return string
*/
protected function get_inline_script() {
return /** @lang JavaScript */
'const wpformsCaptcha = jQuery( ".wpforms-captcha" );
if ( wpformsCaptcha.length > 0 ) {
var widgetID = ' . static::$api_var . '.render( ".wpforms-captcha", {
"refresh-expired": "auto"
} );
wpformsCaptcha.attr( "data-captcha-id", widgetID);
jQuery( document ).trigger( "wpformsSettingsCaptchaLoaded" );
}';
}
/**
* Array of captcha settings fields.
*
* @since 1.8.0
*
* @return array[]
*/
public function get_settings_fields() {
return [
'turnstile-heading' => [
'id' => 'turnstile-heading',
'content' => $this->get_field_desc(),
'type' => 'content',
'no_label' => true,
'class' => [ 'section-heading', 'specific-note' ],
],
'turnstile-site-key' => [
'id' => 'turnstile-site-key',
'name' => esc_html__( 'Site Key', 'wpforms-lite' ),
'type' => 'text',
],
'turnstile-secret-key' => [
'id' => 'turnstile-secret-key',
'name' => esc_html__( 'Secret Key', 'wpforms-lite' ),
'type' => 'text',
],
'turnstile-fail-msg' => [
'id' => 'turnstile-fail-msg',
'name' => esc_html__( 'Fail Message', 'wpforms-lite' ),
'desc' => esc_html__( 'Displays to users who fail the verification process.', 'wpforms-lite' ),
'type' => 'text',
'default' => esc_html__( 'Cloudflare Turnstile verification failed, please try again later.', 'wpforms-lite' ),
],
'turnstile-theme' => [
'id' => 'turnstile-theme',
'name' => esc_html__( 'Type', 'wpforms-lite' ),
'type' => 'select',
'default' => 'auto',
'options' => [
'auto' => esc_html__( 'Auto', 'wpforms-lite' ),
'light' => esc_html__( 'Light', 'wpforms-lite' ),
'dark' => esc_html__( 'Dark', 'wpforms-lite' ),
],
],
];
}
}