PHP 8.2.31
Preview: Honeypot.php Size: 1.75 KB
/home/nshryvcy/radiantskinclinics.org/wp-content/plugins/wpforms-lite/src/Forms/Honeypot.php

<?php

namespace WPForms\Forms;

/**
 * Class Honeypot.
 *
 * @since 1.6.2
 */
class Honeypot {

	/**
	 * Initialise the actions for the Honeypot.
	 *
	 * @since 1.6.2
	 */
	public function init() {

		$this->hooks();
	}

	/**
	 * Register hooks.
	 *
	 * @since 1.6.2
	 */
	public function hooks() {

		add_action( 'wpforms_frontend_output', [ $this, 'render' ], 15, 5 );
	}

	/**
	 * Return function to render the honeypot.
	 *
	 * @since 1.6.2
	 *
	 * @param array $form_data Form data and settings.
	 */
	public function render( $form_data ) {

		if (
			empty( $form_data['settings']['honeypot'] ) ||
			'1' !== $form_data['settings']['honeypot']
		) {
			return;
		}

		$names = [ 'Name', 'Phone', 'Comment', 'Message', 'Email', 'Website' ];

		echo '<div class="wpforms-field wpforms-field-hp">';

		echo '<label for="wpforms-' . $form_data['id'] . '-field-hp" class="wpforms-field-label">' . $names[ array_rand( $names ) ] . '</label>'; // phpcs:ignore

		echo '<input type="text" name="wpforms[hp]" id="wpforms-' . $form_data['id'] . '-field-hp" class="wpforms-field-medium">';  // phpcs:ignore

		echo '</div>';
	}

	/**
	 * Validate honeypot.
	 *
	 * @since 1.6.2
	 *
	 * @param array $form_data Form data.
	 * @param array $fields    Fields.
	 * @param array $entry     Form entry.
	 *
	 * @return bool|string False or an string with the error.
	 */
	public function validate( array $form_data, array $fields, array $entry ) {

		$honeypot = false;

		if (
			! empty( $form_data['settings']['honeypot'] ) &&
			'1' === $form_data['settings']['honeypot'] &&
			! empty( $entry['hp'] )
		) {
			$honeypot = esc_html__( 'WPForms honeypot field triggered.', 'wpforms-lite' );
		}

		return apply_filters( 'wpforms_process_honeypot', $honeypot, $fields, $entry, $form_data );
	}
}

Directory Contents

Dirs: 1 × Files: 8

Name Size Perms Modified Actions
Fields DIR
- drwxr-xr-x 2026-06-04 03:43:03
Edit Download
9.31 KB lrw-r--r-- 2025-07-31 14:13:36
Edit Download
9.69 KB lrw-r--r-- 2025-07-31 14:13:36
Edit Download
1.75 KB lrw-r--r-- 2025-06-05 16:54:44
Edit Download
15.35 KB lrw-r--r-- 2026-02-24 17:16:18
Edit Download
32.51 KB lrw-r--r-- 2025-12-11 20:10:08
Edit Download
10.31 KB lrw-r--r-- 2025-04-24 14:53:30
Edit Download
6.89 KB lrw-r--r-- 2023-06-07 17:54:22
Edit Download
10.54 KB lrw-r--r-- 2025-07-31 14:13:36
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).