PageSourceSearch

https://unit62.ch/wp-content/plugins/honeypot/includes/js/wpa.js?ver=2.4.02

js unit62.ch collected 2026-09-24 13:33:07 UTC 5,774 bytes, 128 lines download raw bytes

1var wpa_field_name, wpa_unique_id, wpa_add_test, wpa_hidden_field;
2
3jQuery(document).ready(function(){	
4	wpa_field_name 	= wpa_field_info.wpa_field_name;
5	wpa_unique_id 	= wpa_field_info.wpa_field_value;
6	wpa_add_test 	= wpa_field_info.wpa_add_test;
7
8	wpa_hidden_field 			= "<div id='altEmail_container' class='altEmail_container'><label for='alt_s'>Alternative:</label><input type='text' id='alt_s' name='alt_s' ></div><span class='wpa_hidden_field' style='display:none;height:0;width:0;'><label>WPA <input type='text' name='"+wpa_field_name+"' value='"+wpa_unique_id+"' /></label></span>";
9
10	wpa_add_honeypot_field();
11
12	if (typeof wpae_add_honeypot_field == 'function') { // IF EXTENDED version exists.
13	  wpae_add_honeypot_field(); 
14	}
15	
16	if (wpa_add_test == 'yes'){
17		wpa_add_test_block();
18	}
19});
20
21function wpa_act_as_spam(){
22	actiontype = jQuery('span.wpa-button').data('actiontype');
23	if (actiontype == 'remove'){
24		wpa_remove_honeypot_field();
25		jQuery('span.wpa-button').data('actiontype','add');
26		jQuery('span.wpa-button').html('Acting as Spam Bot');
27	} else {
28		wpa_add_honeypot_field();
29		jQuery('span.wpa-button').data('actiontype','remove');
30		jQuery('span.wpa-button').html('Act as Spam Bot');
31	}
32}
33
34function wpa_add_honeypot_field(){
35	
36	// Combined form selectors
37	var allFormSelectors = [
38	    // Main forms
39	    'form.wpcf7-form, .wpcf7 form',        // CONTACT FORM 7
40	    'form.wpforms-form',                   // WPForms
41	    '.gform_wrapper form',                 // Gravity Forms
42	    '.frm_forms form',                     // Formidable Forms
43	    '.caldera-grid form',                  // Caldera Forms
44	    '.wp-block-toolset-cred-form form',    // Toolset Forms
45	    'form.cred-user-form',                 // Toolset Forms
46	    'form.cred-form',                      // Toolset Forms
47	    'form.et_pb_contact_form',             // Divi Form
48	    'form.fb_form',                        // Divi Form Builder - Divi Engine
49	    'form.elementor-form',                 // Elementor
50	    'form.form-contribution',              // WooCommerce Reviews Pro
51	    'form.cart',                           // WooCommerce Cart
52	    'form#learn-press-checkout-form',      // LearnPress Checkout Form
53
54	    'form.wpa_form',						   // Generic Class
55	    '.wpa_form form',					   // Generic Class	
56
57	    '.um-form form',						// Ulimate Membership Form
58
59	    // Login forms
60	    'form.spectra-pro-login-form',         // SPECTRA LOGIN FORM
61	    'form#loginform',                      // Default Login Form
62	    'form#edd_login_form',                 // EDD LOGIN FORM
63	    'form.uwp-login-form',                 // USER WP LOGIN FORM
64	    '.et_pb_login_form form',			   // For Elementor login form
65	    'form.eael-login-form',				   // essential-addons login form
66	    'form.user-registration-form-login',   // User Registration & Membership for WordPress
67
68	    'form#lostpasswordform',			   // Lost Password Form
69	    'form.lost_reset_password',            // Tutor Password Form
70	    'form.ur_lost_reset_password',    	   // User Registration & Membership for WordPress	    
71
72	    
73	    //Registration Forms
74	    'form.register',            		   // User Registration & Membership for WordPress
75
76	    // Comment forms
77	    'form#commentform',                    // WP Comment with ID
78	    'form.ast-commentform',                // Astra Comment Form with class
79	    'form#fl-comment-form',                // Beaver Builder Theme Form with ID
80	    'form.comment-form',                   // WP Comment with class
81	    '.review-form form',                   // LearnPress Review
82	    'form#edd-reviews-form',               // EDD Reviews with ID
83	    'form.wpr-comment-form',				
84
85	    // BBPress forms
86	    '.bbp-topic-form form',                // BBPress Topic Form
87	    '.bbp-reply-form form'                 // BBPress Reply Form
88	];
89
90	// Append hidden field to all forms in the combined selector list
91	jQuery(allFormSelectors.join(', ')).append(wpa_hidden_field);
92	
93	// FOR FLUENT FORMS
94	jQuery('form.frm-fluent-form').append(wpa_hidden_field); // FOR Fluent Forms
95	jQuery('.ff_conv_app').append(wpa_hidden_field); // FOR Fluent Convertional Forms
96
97	if (typeof fluent_forms_global_var_1 !== 'undefined') { // QUICK HACK FOR FLUENT FORMS CONVERSIONAL
98    	fluent_forms_global_var_1.extra_inputs[wpa_field_name] = wpa_unique_id;
99    	fluent_forms_global_var_1.extra_inputs['alt_s'] = '';
100	}
101	// EOF FLUENT FORMS 
102
103	jQuery('input.wpa_initiator').each(function() {
104	    var $form = jQuery(this).closest('form'); // Get the parent form of input.wpa_initiator
105	    
106	    // Check if wpa_hidden_field exists in the form, if not, insert it after input.wpa_initiator
107	    if ($form.find('.wpa_hidden_field').length === 0) {
108	        jQuery(wpa_hidden_field).insertAfter(this);
109	    }
110	});
111	
112}
113
114function wpa_add_test_block(){
115	checkingTest = '<div class="wpa-test-msg"><strong>WP Armour ( Only visible to site administrators. Not visible to other users. )</strong><br />This form has a honeypot trap enabled. If you want to act as spam bot for testing purposes, please click the button below.<br/><span class="wpa-button" onclick="wpa_act_as_spam()" data-actiontype="remove">Act as Spam Bot</span></div>';
116	jQuery('.wpa-test-msg').remove(); // Clear First
117	jQuery('span.wpa_hidden_field').after(checkingTest);
118}
119
120function wpa_remove_honeypot_field(){
121	jQuery('.wpa_hidden_field').remove();
122	jQuery('#altEmail_container, .altEmail_container').remove();
123
124	if (typeof fluent_forms_global_var_1 !== 'undefined') { 
125    	delete fluent_forms_global_var_1.extra_inputs[wpa_field_name];
126    	delete fluent_forms_global_var_1.extra_inputs['alt_s'];
127	}
128}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.