HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux ip-172-31-4-197 6.8.0-1036-aws #38~22.04.1-Ubuntu SMP Fri Aug 22 15:44:33 UTC 2025 x86_64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: 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_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/wordpress/wp-content/plugins/malcare-security/form_testing/handlers/gravity_form.php
<?php

if (!defined('ABSPATH')) exit;
if (!class_exists('BVGravityFormHandler')) :

class BVGravityFormHandler {
	private $form_id;
	private $bypass_params = array();

	public function __construct($form_id, $bypass_params) {
		$this->form_id = $form_id;
		$this->bypass_params = $bypass_params;
	}

	public function bypass() {
		if (array_key_exists('should_bypass_captcha', $this->bypass_params)) {
			$this->bypassCaptcha();
		}

		if (array_key_exists('should_bypass_email', $this->bypass_params)) {
			$this->bypassEmail();
		}
	}

	public function bypassCaptcha() {
		if ($this->form_id === null) {
			return;
		}

		add_filter('gform_pre_validation_' . $this->form_id, function($form) {
			foreach ($form['fields'] as &$field) {
				if ($field->type === 'captcha') {
					$field->visibility = 'hidden';
				}
			}
			return $form;
		}, PHP_INT_MAX);
	}

	public function bypassEmail() {
		add_filter('gform_pre_send_email', function ($email_data) {
			$email_data['abort_email'] = true;
			return $email_data;
		}, PHP_INT_MAX);
	}
}

endif;