HEX
Server: nginx/1.27.1
System: Linux in-4 5.15.0-131-generic #141-Ubuntu SMP Fri Jan 10 21:18:28 UTC 2025 x86_64
User: ilikadirect (1186)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source
Upload Files
File: /storage/v6964/2foodfactor/public_html/wp-content/plugins/site-reviews/plugin/Modules/Captcha.php
<?php

namespace GeminiLabs\SiteReviews\Modules;

use GeminiLabs\SiteReviews\Helper;
use GeminiLabs\SiteReviews\Modules\Html\Builder;

class Captcha
{
    public function actions(): array
    {
        return glsr()->filterArray('captcha/actions', [
            'submit-review',
        ]);
    }

    public function config(): array
    {
        if (!$this->isEnabled()) {
            return [];
        }
        $integration = (string) glsr_get_option('forms.captcha.integration');
        $className = Helper::buildClassName([$integration, 'validator'], 'Modules\Validator');
        if (!class_exists($className)) {
            return [];
        }
        return glsr($className)->config();
    }

    public function container(): string
    {
        if (!$this->isEnabled()) {
            return '';
        }
        return glsr(Builder::class)->div([
            'class' => 'glsr-captcha-holder',
        ]);
    }

    public function isEnabled(string $service = ''): bool
    {
        $integration = glsr_get_option('forms.captcha.integration');
        $usage = glsr_get_option('forms.captcha.usage');
        $isEnabled = 'all' === $usage || ('guest' === $usage && !is_user_logged_in());
        if (!empty($service)) {
            return $integration === $service && $isEnabled;
        }
        return !empty($integration) && $isEnabled;
    }
}