| Server IP : 52.25.153.185 / Your IP : 216.73.216.194 Web Server : Apache System : Linux ip-172-26-6-158 5.10.0-45-cloud-amd64 #1 SMP Debian 5.10.259-1 (2026-07-02) x86_64 User : daemon ( 1) PHP Version : 8.1.10 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /bitnami/wordpress/wp-content/plugins/fluentform/app/Modules/Registerer/ |
Upload File : |
<?php
namespace FluentForm\App\Modules\Registerer;
defined('ABSPATH') or die;
use FluentForm\App\Helpers\Helper;
use FluentForm\App\Http\Controllers\AdminNoticeController;
use FluentForm\Framework\Helpers\ArrayHelper;
class CaptchaKeyNotice
{
public static function register()
{
if (static::shouldRegister()) {
add_action('fluentform/global_menu', [static::class, 'show'], 99);
}
}
protected static function shouldRegister()
{
if (!Helper::isFluentAdminPage() || wp_doing_ajax()) {
return false;
}
if (!Helper::isAutoloadCaptchaEnabled()) {
return false;
}
$type = static::selectedType();
if (!$type) {
return true;
}
$statusOption = ArrayHelper::get(static::statusOptionMap(), $type);
return !$statusOption || !get_option($statusOption, false);
}
public static function show()
{
$notice = new AdminNoticeController();
$notice->addNotice(self::getMessage());
$notice->showNotice();
}
protected static function selectedType()
{
$type = ArrayHelper::get(get_option('_fluentform_global_form_settings'), 'misc.captcha_type');
return is_string($type) ? $type : '';
}
protected static function statusOptionMap()
{
return [
'recaptcha' => '_fluentform_reCaptcha_keys_status',
'hcaptcha' => '_fluentform_hCaptcha_keys_status',
'turnstile' => '_fluentform_turnstile_keys_status',
];
}
protected static function settingsUrl()
{
$anchors = [
'recaptcha' => '#re_captcha',
'hcaptcha' => '#h_captcha',
'turnstile' => '#turnstile',
'cleantalk' => '#cleantalk',
];
$anchor = ArrayHelper::get($anchors, static::selectedType(), '');
return admin_url('admin.php?page=fluent_forms_settings') . $anchor;
}
private static function getMessage()
{
$message = __(
'Fluent Forms global captcha is enabled, but the selected captcha type has no valid keys. Until you add valid keys, your forms are not protected by captcha.',
'fluentform'
);
return [
'name' => 'autoload_captcha_keys_missing',
'title' => '',
'message' => $message,
'links' => [
[
'href' => static::settingsUrl(),
'btn_text' => __('Configure Captcha', 'fluentform'),
'btn_atts' => 'class="mr-1 el-button--success el-button--mini"',
],
],
];
}
}