Completed
Branch FET/9575/invisible-recaptcha (9a3ea6)
by
unknown
13:26
created
caffeinated/modules/recaptcha_invisible/EED_Recaptcha_Invisible.module.php 2 patches
Indentation   +338 added lines, -338 removed lines patch added patch discarded remove patch
@@ -22,342 +22,342 @@
 block discarded – undo
22 22
 class EED_Recaptcha_Invisible extends EED_Module
23 23
 {
24 24
 
25
-    /**
26
-     * @var EE_Registration_Config $config
27
-     */
28
-    private static $config;
29
-
30
-    /**
31
-     * @var array $localized_vars
32
-     */
33
-    private static $localized_vars;
34
-
35
-
36
-    /**
37
-     * @return EED_Module|EED_Recaptcha
38
-     */
39
-    public static function instance()
40
-    {
41
-        return parent::get_instance(__CLASS__);
42
-    }
43
-
44
-
45
-    /**
46
-     * @return void
47
-     * @throws InvalidInterfaceException
48
-     * @throws InvalidDataTypeException
49
-     * @throws InvalidArgumentException
50
-     */
51
-    public static function set_hooks()
52
-    {
53
-        EED_Recaptcha_Invisible::setProperties();
54
-        if (EED_Recaptcha_Invisible::useInvisibleRecaptcha()) {
55
-            // ticket selection
56
-            add_filter(
57
-                'FHEE__EE_Ticket_Selector__after_ticket_selector_submit',
58
-                array('EED_Recaptcha_Invisible', 'ticketSelectorForm'),
59
-                10, 2
60
-            );
61
-            add_action(
62
-                'EED_Ticket_Selector__process_ticket_selections__before',
63
-                array('EED_Recaptcha_Invisible', 'processTicketSelectorForm')
64
-            );
65
-            // checkout
66
-            add_action(
67
-                'AHEE__EE_SPCO_Reg_Step__display_reg_form__reg_form',
68
-                array('EED_Recaptcha_Invisible', 'spcoRegStepForm')
69
-            );
70
-            add_filter(
71
-                'FHEE__EE_Form_Section_Proper__receive_form_submission__req_data',
72
-                array('EED_Recaptcha_Invisible', 'receiveSpcoRegStepForm'),
73
-                10, 2
74
-            );
75
-            add_action('loop_end', array('EED_Recaptcha_Invisible', 'setLocalizedVars'));
76
-        }
77
-    }
78
-
79
-
80
-    /**
81
-     * @return void
82
-     * @throws InvalidInterfaceException
83
-     * @throws InvalidDataTypeException
84
-     * @throws InvalidArgumentException
85
-     */
86
-    public static function set_hooks_admin()
87
-    {
88
-        // admin settings
89
-        add_action(
90
-            'AHEE__Extend_Registration_Form_Admin_Page___reg_form_settings_template',
91
-            array('EED_Recaptcha_Invisible', 'adminSettings')
92
-        );
93
-        add_filter(
94
-            'FHEE__Extend_Registration_Form_Admin_Page___update_reg_form_settings__CFG_registration',
95
-            array('EED_Recaptcha_Invisible', 'updateAdminSettings')
96
-        );
97
-    }
98
-
99
-
100
-    /**
101
-     * @return void
102
-     * @throws InvalidInterfaceException
103
-     * @throws InvalidDataTypeException
104
-     * @throws InvalidArgumentException
105
-     */
106
-    public static function setProperties()
107
-    {
108
-
109
-        EED_Recaptcha_Invisible::$config = EE_Registry::instance()->CFG->registration;
110
-        EED_Recaptcha_Invisible::$localized_vars = array(
111
-            'siteKey'          => EED_Recaptcha_Invisible::$config->recaptcha_publickey,
112
-            'recaptcha_passed' => EED_Recaptcha_Invisible::recaptchaPassed(),
113
-            'wp_debug'         => WP_DEBUG,
114
-            'mer_active'       => defined('EE_EVENT_QUEUE_BASE_URL'),
115
-        );
116
-    }
117
-
118
-
119
-    /**
120
-     * @return boolean
121
-     */
122
-    public static function useInvisibleRecaptcha()
123
-    {
124
-        return EED_Recaptcha_Invisible::$config->use_captcha
125
-               && EED_Recaptcha_Invisible::$config->recaptcha_theme === 'invisible';
126
-    }
127
-
128
-
129
-
130
-    /**
131
-     * @return void
132
-     */
133
-    public static function setLocalizedVars()
134
-    {
135
-        wp_localize_script(
136
-            EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_ESPRESSO_INVISIBLE_RECAPTCHA,
137
-            'eeRecaptcha',
138
-            apply_filters(
139
-                'FHEE__EED_Recaptcha_Invisible__setLocalizedVars__localized_vars',
140
-                EED_Recaptcha_Invisible::$localized_vars
141
-            )
142
-        );
143
-    }
144
-
145
-
146
-    /**
147
-     * @return string
148
-     */
149
-    public static function assetsUrl()
150
-    {
151
-        return plugin_dir_url(__FILE__) . 'assets' . DS;
152
-    }
153
-
154
-
155
-    /**
156
-     * @param \WP $WP
157
-     */
158
-    public function run($WP)
159
-    {
160
-    }
161
-
162
-
163
-    /**
164
-     * @return boolean
165
-     * @throws InvalidInterfaceException
166
-     * @throws InvalidDataTypeException
167
-     * @throws InvalidArgumentException
168
-     */
169
-    public static function recaptchaPassed()
170
-    {
171
-        static $recaptcha_passed = null;
172
-        if($recaptcha_passed !== null) {
173
-            return $recaptcha_passed;
174
-        }
175
-        // logged in means you have already passed a turing test of sorts
176
-        if (EED_Recaptcha_Invisible::useInvisibleRecaptcha() === false || is_user_logged_in()) {
177
-            $recaptcha_passed = true;
178
-            return $recaptcha_passed;
179
-        }
180
-        // was test already passed?
181
-        $recaptcha_passed = filter_var(
182
-            EE_Registry::instance()->SSN->get_session_data(
183
-                InvisibleRecaptcha::SESSION_DATA_KEY_RECAPTCHA_PASSED
184
-            ),
185
-            FILTER_VALIDATE_BOOLEAN
186
-        );
187
-        return $recaptcha_passed;
188
-    }
189
-
190
-
191
-    /**
192
-     * @param EE_Request $request
193
-     * @return bool
194
-     * @throws InvalidArgumentException
195
-     * @throws InvalidDataTypeException
196
-     * @throws InvalidInterfaceException
197
-     * @throws RuntimeException
198
-     */
199
-    public static function verifyToken(EE_Request $request)
200
-    {
201
-        $invisible_recaptcha = RecaptchaFactory::create();
202
-        if ($invisible_recaptcha->verifyToken($request)) {
203
-            add_action('shutdown', array('EED_Recaptcha_Invisible', 'setSessionData'));
204
-            return true;
205
-        }
206
-        return false;
207
-    }
208
-
209
-
210
-    /**
211
-     * @param EE_Form_Section_Proper $reg_form
212
-     * @return void
213
-     * @throws EE_Error
214
-     * @throws InvalidArgumentException
215
-     * @throws InvalidDataTypeException
216
-     * @throws InvalidInterfaceException
217
-     */
218
-    public static function spcoRegStepForm(EE_Form_Section_Proper $reg_form)
219
-    {
220
-        // do nothing if form isn't for a reg step or test has already been passed
221
-        if (! EED_Recaptcha_Invisible::processSpcoRegStepForm($reg_form)) {
222
-            return;
223
-        }
224
-        $default_hidden_inputs = $reg_form->get_subsection('default_hidden_inputs');
225
-        if ($default_hidden_inputs instanceof EE_Form_Section_Proper) {
226
-            $invisible_recaptcha = RecaptchaFactory::create();
227
-            $invisible_recaptcha->addToFormSection($default_hidden_inputs);
228
-        }
229
-    }
230
-
231
-
232
-    /**
233
-     * @param EE_Form_Section_Proper $reg_form
234
-     * @return bool
235
-     * @throws InvalidDataTypeException
236
-     * @throws InvalidInterfaceException
237
-     * @throws EE_Error
238
-     * @throws InvalidArgumentException
239
-     */
240
-    public static function processSpcoRegStepForm(EE_Form_Section_Proper $reg_form)
241
-    {
242
-        return strpos($reg_form->name(), 'reg-step-form') !== false
243
-               || ! EED_Recaptcha_Invisible::recaptchaPassed();
244
-    }
245
-
246
-
247
-    /**
248
-     * @param array|null             $req_data
249
-     * @param EE_Form_Section_Proper $reg_form
250
-     * @return array
251
-     * @throws EE_Error
252
-     * @throws InvalidArgumentException
253
-     * @throws InvalidDataTypeException
254
-     * @throws InvalidInterfaceException
255
-     * @throws RuntimeException
256
-     */
257
-    public static function receiveSpcoRegStepForm($req_data = array(), EE_Form_Section_Proper $reg_form)
258
-    {
259
-        // do nothing if form isn't for a reg step or test has already been passed
260
-        if (! EED_Recaptcha_Invisible::processSpcoRegStepForm($reg_form)) {
261
-            return $req_data;
262
-        }
263
-        /** @var EE_Request $request */
264
-        $request = LoaderFactory::getLoader()->getShared('EE_Request');
265
-        if (! EED_Recaptcha_Invisible::verifyToken($request)) {
266
-            if ($request->isAjax()) {
267
-                $json_response = new EE_SPCO_JSON_Response();
268
-                $json_response->echoAndExit();
269
-            }
270
-            EEH_URL::safeRedirectAndExit(
271
-                EE_Registry::instance()->CFG->core->reg_page_url()
272
-            );
273
-        }
274
-        return $req_data;
275
-    }
276
-
277
-
278
-    /**
279
-     * @param string   $html
280
-     * @param EE_Event $event
281
-     * @return string
282
-     * @throws InvalidArgumentException
283
-     * @throws InvalidDataTypeException
284
-     * @throws InvalidInterfaceException
285
-     * @throws EE_Error
286
-     */
287
-    public static function ticketSelectorForm($html = '', EE_Event $event)
288
-    {
289
-        // do nothing if test has  already  been passed
290
-        if (EED_Recaptcha_Invisible::recaptchaPassed()) {
291
-            return $html;
292
-        }
293
-        $html .= RecaptchaFactory::create()->getInputHtml(
294
-            array('recaptcha_id' => $event->ID())
295
-        );
296
-        return $html;
297
-    }
298
-
299
-
300
-    /**
301
-     * @return void
302
-     * @throws InvalidArgumentException
303
-     * @throws InvalidInterfaceException
304
-     * @throws InvalidDataTypeException
305
-     * @throws RuntimeException
306
-     */
307
-    public static function processTicketSelectorForm()
308
-    {
309
-        // do nothing if test has  already  been passed
310
-        if (EED_Recaptcha_Invisible::recaptchaPassed()) {
311
-            return;
312
-        }
313
-        /** @var EE_Request $request */
314
-        $request = LoaderFactory::getLoader()->getShared('EE_Request');
315
-        if (! EED_Recaptcha_Invisible::verifyToken($request)) {
316
-            $event_id   = $request->get('tkt-slctr-event-id');
317
-            $return_url = $request->is_set("tkt-slctr-return-url-{$event_id}")
318
-                ? $request->get("tkt-slctr-return-url-{$event_id}")
319
-                : get_permalink($event_id);
320
-            EEH_URL::safeRedirectAndExit($return_url);
321
-        }
322
-    }
323
-
324
-
325
-    /**
326
-     * @throws InvalidArgumentException
327
-     * @throws InvalidDataTypeException
328
-     * @throws InvalidInterfaceException
329
-     */
330
-    public static function setSessionData()
331
-    {
332
-        EE_Registry::instance()->SSN->set_session_data(
333
-            array(InvisibleRecaptcha::SESSION_DATA_KEY_RECAPTCHA_PASSED => true)
334
-        );
335
-    }
336
-
337
-
338
-    /**
339
-     * @throws EE_Error
340
-     * @throws InvalidArgumentException
341
-     * @throws InvalidDataTypeException
342
-     * @throws InvalidInterfaceException
343
-     */
344
-    public static function adminSettings()
345
-    {
346
-        RecaptchaFactory::getAdminModule()->adminSettings();
347
-    }
348
-
349
-
350
-    /**
351
-     * @param EE_Registration_Config $EE_Registration_Config
352
-     * @return EE_Registration_Config
353
-     * @throws EE_Error
354
-     * @throws InvalidArgumentException
355
-     * @throws InvalidDataTypeException
356
-     * @throws InvalidInterfaceException
357
-     * @throws ReflectionException
358
-     */
359
-    public static function updateAdminSettings(EE_Registration_Config $EE_Registration_Config)
360
-    {
361
-        return RecaptchaFactory::getAdminModule()->updateAdminSettings($EE_Registration_Config);
362
-    }
25
+	/**
26
+	 * @var EE_Registration_Config $config
27
+	 */
28
+	private static $config;
29
+
30
+	/**
31
+	 * @var array $localized_vars
32
+	 */
33
+	private static $localized_vars;
34
+
35
+
36
+	/**
37
+	 * @return EED_Module|EED_Recaptcha
38
+	 */
39
+	public static function instance()
40
+	{
41
+		return parent::get_instance(__CLASS__);
42
+	}
43
+
44
+
45
+	/**
46
+	 * @return void
47
+	 * @throws InvalidInterfaceException
48
+	 * @throws InvalidDataTypeException
49
+	 * @throws InvalidArgumentException
50
+	 */
51
+	public static function set_hooks()
52
+	{
53
+		EED_Recaptcha_Invisible::setProperties();
54
+		if (EED_Recaptcha_Invisible::useInvisibleRecaptcha()) {
55
+			// ticket selection
56
+			add_filter(
57
+				'FHEE__EE_Ticket_Selector__after_ticket_selector_submit',
58
+				array('EED_Recaptcha_Invisible', 'ticketSelectorForm'),
59
+				10, 2
60
+			);
61
+			add_action(
62
+				'EED_Ticket_Selector__process_ticket_selections__before',
63
+				array('EED_Recaptcha_Invisible', 'processTicketSelectorForm')
64
+			);
65
+			// checkout
66
+			add_action(
67
+				'AHEE__EE_SPCO_Reg_Step__display_reg_form__reg_form',
68
+				array('EED_Recaptcha_Invisible', 'spcoRegStepForm')
69
+			);
70
+			add_filter(
71
+				'FHEE__EE_Form_Section_Proper__receive_form_submission__req_data',
72
+				array('EED_Recaptcha_Invisible', 'receiveSpcoRegStepForm'),
73
+				10, 2
74
+			);
75
+			add_action('loop_end', array('EED_Recaptcha_Invisible', 'setLocalizedVars'));
76
+		}
77
+	}
78
+
79
+
80
+	/**
81
+	 * @return void
82
+	 * @throws InvalidInterfaceException
83
+	 * @throws InvalidDataTypeException
84
+	 * @throws InvalidArgumentException
85
+	 */
86
+	public static function set_hooks_admin()
87
+	{
88
+		// admin settings
89
+		add_action(
90
+			'AHEE__Extend_Registration_Form_Admin_Page___reg_form_settings_template',
91
+			array('EED_Recaptcha_Invisible', 'adminSettings')
92
+		);
93
+		add_filter(
94
+			'FHEE__Extend_Registration_Form_Admin_Page___update_reg_form_settings__CFG_registration',
95
+			array('EED_Recaptcha_Invisible', 'updateAdminSettings')
96
+		);
97
+	}
98
+
99
+
100
+	/**
101
+	 * @return void
102
+	 * @throws InvalidInterfaceException
103
+	 * @throws InvalidDataTypeException
104
+	 * @throws InvalidArgumentException
105
+	 */
106
+	public static function setProperties()
107
+	{
108
+
109
+		EED_Recaptcha_Invisible::$config = EE_Registry::instance()->CFG->registration;
110
+		EED_Recaptcha_Invisible::$localized_vars = array(
111
+			'siteKey'          => EED_Recaptcha_Invisible::$config->recaptcha_publickey,
112
+			'recaptcha_passed' => EED_Recaptcha_Invisible::recaptchaPassed(),
113
+			'wp_debug'         => WP_DEBUG,
114
+			'mer_active'       => defined('EE_EVENT_QUEUE_BASE_URL'),
115
+		);
116
+	}
117
+
118
+
119
+	/**
120
+	 * @return boolean
121
+	 */
122
+	public static function useInvisibleRecaptcha()
123
+	{
124
+		return EED_Recaptcha_Invisible::$config->use_captcha
125
+			   && EED_Recaptcha_Invisible::$config->recaptcha_theme === 'invisible';
126
+	}
127
+
128
+
129
+
130
+	/**
131
+	 * @return void
132
+	 */
133
+	public static function setLocalizedVars()
134
+	{
135
+		wp_localize_script(
136
+			EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_ESPRESSO_INVISIBLE_RECAPTCHA,
137
+			'eeRecaptcha',
138
+			apply_filters(
139
+				'FHEE__EED_Recaptcha_Invisible__setLocalizedVars__localized_vars',
140
+				EED_Recaptcha_Invisible::$localized_vars
141
+			)
142
+		);
143
+	}
144
+
145
+
146
+	/**
147
+	 * @return string
148
+	 */
149
+	public static function assetsUrl()
150
+	{
151
+		return plugin_dir_url(__FILE__) . 'assets' . DS;
152
+	}
153
+
154
+
155
+	/**
156
+	 * @param \WP $WP
157
+	 */
158
+	public function run($WP)
159
+	{
160
+	}
161
+
162
+
163
+	/**
164
+	 * @return boolean
165
+	 * @throws InvalidInterfaceException
166
+	 * @throws InvalidDataTypeException
167
+	 * @throws InvalidArgumentException
168
+	 */
169
+	public static function recaptchaPassed()
170
+	{
171
+		static $recaptcha_passed = null;
172
+		if($recaptcha_passed !== null) {
173
+			return $recaptcha_passed;
174
+		}
175
+		// logged in means you have already passed a turing test of sorts
176
+		if (EED_Recaptcha_Invisible::useInvisibleRecaptcha() === false || is_user_logged_in()) {
177
+			$recaptcha_passed = true;
178
+			return $recaptcha_passed;
179
+		}
180
+		// was test already passed?
181
+		$recaptcha_passed = filter_var(
182
+			EE_Registry::instance()->SSN->get_session_data(
183
+				InvisibleRecaptcha::SESSION_DATA_KEY_RECAPTCHA_PASSED
184
+			),
185
+			FILTER_VALIDATE_BOOLEAN
186
+		);
187
+		return $recaptcha_passed;
188
+	}
189
+
190
+
191
+	/**
192
+	 * @param EE_Request $request
193
+	 * @return bool
194
+	 * @throws InvalidArgumentException
195
+	 * @throws InvalidDataTypeException
196
+	 * @throws InvalidInterfaceException
197
+	 * @throws RuntimeException
198
+	 */
199
+	public static function verifyToken(EE_Request $request)
200
+	{
201
+		$invisible_recaptcha = RecaptchaFactory::create();
202
+		if ($invisible_recaptcha->verifyToken($request)) {
203
+			add_action('shutdown', array('EED_Recaptcha_Invisible', 'setSessionData'));
204
+			return true;
205
+		}
206
+		return false;
207
+	}
208
+
209
+
210
+	/**
211
+	 * @param EE_Form_Section_Proper $reg_form
212
+	 * @return void
213
+	 * @throws EE_Error
214
+	 * @throws InvalidArgumentException
215
+	 * @throws InvalidDataTypeException
216
+	 * @throws InvalidInterfaceException
217
+	 */
218
+	public static function spcoRegStepForm(EE_Form_Section_Proper $reg_form)
219
+	{
220
+		// do nothing if form isn't for a reg step or test has already been passed
221
+		if (! EED_Recaptcha_Invisible::processSpcoRegStepForm($reg_form)) {
222
+			return;
223
+		}
224
+		$default_hidden_inputs = $reg_form->get_subsection('default_hidden_inputs');
225
+		if ($default_hidden_inputs instanceof EE_Form_Section_Proper) {
226
+			$invisible_recaptcha = RecaptchaFactory::create();
227
+			$invisible_recaptcha->addToFormSection($default_hidden_inputs);
228
+		}
229
+	}
230
+
231
+
232
+	/**
233
+	 * @param EE_Form_Section_Proper $reg_form
234
+	 * @return bool
235
+	 * @throws InvalidDataTypeException
236
+	 * @throws InvalidInterfaceException
237
+	 * @throws EE_Error
238
+	 * @throws InvalidArgumentException
239
+	 */
240
+	public static function processSpcoRegStepForm(EE_Form_Section_Proper $reg_form)
241
+	{
242
+		return strpos($reg_form->name(), 'reg-step-form') !== false
243
+			   || ! EED_Recaptcha_Invisible::recaptchaPassed();
244
+	}
245
+
246
+
247
+	/**
248
+	 * @param array|null             $req_data
249
+	 * @param EE_Form_Section_Proper $reg_form
250
+	 * @return array
251
+	 * @throws EE_Error
252
+	 * @throws InvalidArgumentException
253
+	 * @throws InvalidDataTypeException
254
+	 * @throws InvalidInterfaceException
255
+	 * @throws RuntimeException
256
+	 */
257
+	public static function receiveSpcoRegStepForm($req_data = array(), EE_Form_Section_Proper $reg_form)
258
+	{
259
+		// do nothing if form isn't for a reg step or test has already been passed
260
+		if (! EED_Recaptcha_Invisible::processSpcoRegStepForm($reg_form)) {
261
+			return $req_data;
262
+		}
263
+		/** @var EE_Request $request */
264
+		$request = LoaderFactory::getLoader()->getShared('EE_Request');
265
+		if (! EED_Recaptcha_Invisible::verifyToken($request)) {
266
+			if ($request->isAjax()) {
267
+				$json_response = new EE_SPCO_JSON_Response();
268
+				$json_response->echoAndExit();
269
+			}
270
+			EEH_URL::safeRedirectAndExit(
271
+				EE_Registry::instance()->CFG->core->reg_page_url()
272
+			);
273
+		}
274
+		return $req_data;
275
+	}
276
+
277
+
278
+	/**
279
+	 * @param string   $html
280
+	 * @param EE_Event $event
281
+	 * @return string
282
+	 * @throws InvalidArgumentException
283
+	 * @throws InvalidDataTypeException
284
+	 * @throws InvalidInterfaceException
285
+	 * @throws EE_Error
286
+	 */
287
+	public static function ticketSelectorForm($html = '', EE_Event $event)
288
+	{
289
+		// do nothing if test has  already  been passed
290
+		if (EED_Recaptcha_Invisible::recaptchaPassed()) {
291
+			return $html;
292
+		}
293
+		$html .= RecaptchaFactory::create()->getInputHtml(
294
+			array('recaptcha_id' => $event->ID())
295
+		);
296
+		return $html;
297
+	}
298
+
299
+
300
+	/**
301
+	 * @return void
302
+	 * @throws InvalidArgumentException
303
+	 * @throws InvalidInterfaceException
304
+	 * @throws InvalidDataTypeException
305
+	 * @throws RuntimeException
306
+	 */
307
+	public static function processTicketSelectorForm()
308
+	{
309
+		// do nothing if test has  already  been passed
310
+		if (EED_Recaptcha_Invisible::recaptchaPassed()) {
311
+			return;
312
+		}
313
+		/** @var EE_Request $request */
314
+		$request = LoaderFactory::getLoader()->getShared('EE_Request');
315
+		if (! EED_Recaptcha_Invisible::verifyToken($request)) {
316
+			$event_id   = $request->get('tkt-slctr-event-id');
317
+			$return_url = $request->is_set("tkt-slctr-return-url-{$event_id}")
318
+				? $request->get("tkt-slctr-return-url-{$event_id}")
319
+				: get_permalink($event_id);
320
+			EEH_URL::safeRedirectAndExit($return_url);
321
+		}
322
+	}
323
+
324
+
325
+	/**
326
+	 * @throws InvalidArgumentException
327
+	 * @throws InvalidDataTypeException
328
+	 * @throws InvalidInterfaceException
329
+	 */
330
+	public static function setSessionData()
331
+	{
332
+		EE_Registry::instance()->SSN->set_session_data(
333
+			array(InvisibleRecaptcha::SESSION_DATA_KEY_RECAPTCHA_PASSED => true)
334
+		);
335
+	}
336
+
337
+
338
+	/**
339
+	 * @throws EE_Error
340
+	 * @throws InvalidArgumentException
341
+	 * @throws InvalidDataTypeException
342
+	 * @throws InvalidInterfaceException
343
+	 */
344
+	public static function adminSettings()
345
+	{
346
+		RecaptchaFactory::getAdminModule()->adminSettings();
347
+	}
348
+
349
+
350
+	/**
351
+	 * @param EE_Registration_Config $EE_Registration_Config
352
+	 * @return EE_Registration_Config
353
+	 * @throws EE_Error
354
+	 * @throws InvalidArgumentException
355
+	 * @throws InvalidDataTypeException
356
+	 * @throws InvalidInterfaceException
357
+	 * @throws ReflectionException
358
+	 */
359
+	public static function updateAdminSettings(EE_Registration_Config $EE_Registration_Config)
360
+	{
361
+		return RecaptchaFactory::getAdminModule()->updateAdminSettings($EE_Registration_Config);
362
+	}
363 363
 }
Please login to merge, or discard this patch.
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -148,7 +148,7 @@  discard block
 block discarded – undo
148 148
      */
149 149
     public static function assetsUrl()
150 150
     {
151
-        return plugin_dir_url(__FILE__) . 'assets' . DS;
151
+        return plugin_dir_url(__FILE__).'assets'.DS;
152 152
     }
153 153
 
154 154
 
@@ -169,7 +169,7 @@  discard block
 block discarded – undo
169 169
     public static function recaptchaPassed()
170 170
     {
171 171
         static $recaptcha_passed = null;
172
-        if($recaptcha_passed !== null) {
172
+        if ($recaptcha_passed !== null) {
173 173
             return $recaptcha_passed;
174 174
         }
175 175
         // logged in means you have already passed a turing test of sorts
@@ -218,7 +218,7 @@  discard block
 block discarded – undo
218 218
     public static function spcoRegStepForm(EE_Form_Section_Proper $reg_form)
219 219
     {
220 220
         // do nothing if form isn't for a reg step or test has already been passed
221
-        if (! EED_Recaptcha_Invisible::processSpcoRegStepForm($reg_form)) {
221
+        if ( ! EED_Recaptcha_Invisible::processSpcoRegStepForm($reg_form)) {
222 222
             return;
223 223
         }
224 224
         $default_hidden_inputs = $reg_form->get_subsection('default_hidden_inputs');
@@ -257,12 +257,12 @@  discard block
 block discarded – undo
257 257
     public static function receiveSpcoRegStepForm($req_data = array(), EE_Form_Section_Proper $reg_form)
258 258
     {
259 259
         // do nothing if form isn't for a reg step or test has already been passed
260
-        if (! EED_Recaptcha_Invisible::processSpcoRegStepForm($reg_form)) {
260
+        if ( ! EED_Recaptcha_Invisible::processSpcoRegStepForm($reg_form)) {
261 261
             return $req_data;
262 262
         }
263 263
         /** @var EE_Request $request */
264 264
         $request = LoaderFactory::getLoader()->getShared('EE_Request');
265
-        if (! EED_Recaptcha_Invisible::verifyToken($request)) {
265
+        if ( ! EED_Recaptcha_Invisible::verifyToken($request)) {
266 266
             if ($request->isAjax()) {
267 267
                 $json_response = new EE_SPCO_JSON_Response();
268 268
                 $json_response->echoAndExit();
@@ -312,7 +312,7 @@  discard block
 block discarded – undo
312 312
         }
313 313
         /** @var EE_Request $request */
314 314
         $request = LoaderFactory::getLoader()->getShared('EE_Request');
315
-        if (! EED_Recaptcha_Invisible::verifyToken($request)) {
315
+        if ( ! EED_Recaptcha_Invisible::verifyToken($request)) {
316 316
             $event_id   = $request->get('tkt-slctr-event-id');
317 317
             $return_url = $request->is_set("tkt-slctr-return-url-{$event_id}")
318 318
                 ? $request->get("tkt-slctr-return-url-{$event_id}")
Please login to merge, or discard this patch.
core/libraries/form_sections/inputs/EE_Invisible_Recaptcha_Input.input.php 1 patch
Indentation   +156 added lines, -156 removed lines patch added patch discarded remove patch
@@ -19,160 +19,160 @@
 block discarded – undo
19 19
 class EE_Invisible_Recaptcha_Input extends EE_Form_Input_Base
20 20
 {
21 21
 
22
-    const SCRIPT_HANDLE_GOOGLE_INVISIBLE_RECAPTCHA   = 'google_invisible_recaptcha';
23
-
24
-    const SCRIPT_HANDLE_ESPRESSO_INVISIBLE_RECAPTCHA = 'espresso_invisible_recaptcha';
25
-
26
-    /**
27
-     * @var EE_Registration_Config $config
28
-     */
29
-    private $config;
30
-
31
-    /**
32
-     * @var string $recaptcha_id
33
-     */
34
-    private $recaptcha_id;
35
-
36
-    /**
37
-     * @var string $submit_button_id
38
-     */
39
-    private $submit_button_id;
40
-
41
-
42
-    /**
43
-     * @param array                  $input_settings
44
-     * @param EE_Registration_Config $registration_config
45
-     * @throws InvalidArgumentException
46
-     * @throws InvalidDataTypeException
47
-     * @throws InvalidInterfaceException
48
-     */
49
-    public function __construct(array $input_settings = array(), EE_Registration_Config $registration_config = null)
50
-    {
51
-        $this->_set_display_strategy(new EE_Invisible_Recaptcha_Display_Strategy());
52
-        parent::__construct($input_settings);
53
-        $registration_config    = $registration_config instanceof EE_Registration_Config
54
-            ? $registration_config
55
-            : EE_Registry::instance()->CFG->registration;
56
-        $this->config           = $registration_config;
57
-        $this->recaptcha_id     = isset($input_settings['recaptcha_id'])
58
-            ? $input_settings['recaptcha_id']
59
-            : substr(spl_object_hash($this), 8, 8);
60
-        $this->submit_button_id = isset($input_settings['submit_button_id'])
61
-            ? $input_settings['submit_button_id']
62
-            : '';
63
-        $this->registerScripts();
64
-    }
65
-
66
-
67
-    /**
68
-     * @return bool
69
-     */
70
-    public function useCaptcha()
71
-    {
72
-        return $this->config->use_captcha && $this->config->recaptcha_theme === 'invisible';
73
-    }
74
-
75
-
76
-    /**
77
-     * @return string
78
-     */
79
-    public function language()
80
-    {
81
-        return $this->config->recaptcha_language;
82
-    }
83
-
84
-
85
-    /**
86
-     * @return string
87
-     */
88
-    public function siteKey()
89
-    {
90
-        return $this->config->recaptcha_publickey;
91
-    }
92
-
93
-
94
-    /**
95
-     * @return string
96
-     */
97
-    public function secretKey()
98
-    {
99
-        return $this->config->recaptcha_privatekey;
100
-    }
101
-
102
-
103
-    /**
104
-     * @return string
105
-     */
106
-    public function recaptchaId()
107
-    {
108
-        return $this->recaptcha_id;
109
-    }
110
-
111
-
112
-    /**
113
-     * @return string
114
-     */
115
-    public function submitButtonId()
116
-    {
117
-        return $this->submit_button_id;
118
-    }
119
-
120
-
121
-    /**
122
-     * @return void
123
-     */
124
-    public function registerScripts()
125
-    {
126
-        if (! $this->useCaptcha()) {
127
-            return;
128
-        }
129
-        add_filter('script_loader_tag', array($this, 'addScriptAttributes'), 10, 2);
130
-        wp_register_script(
131
-            EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_ESPRESSO_INVISIBLE_RECAPTCHA,
132
-            EED_Recaptcha_Invisible::assetsUrl() . 'espresso_invisible_recaptcha.js',
133
-            array('espresso_core'),
134
-            EVENT_ESPRESSO_VERSION,
135
-            true
136
-        );
137
-        wp_register_script(
138
-            EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_GOOGLE_INVISIBLE_RECAPTCHA,
139
-            add_query_arg(
140
-                array(
141
-                    'onload' => 'espressoLoadRecaptcha',
142
-                    'render' => 'explicit',
143
-                    'hl'     => $this->language(),
144
-                ),
145
-                'https://www.google.com/recaptcha/api.js?'
146
-            ),
147
-            array(EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_ESPRESSO_INVISIBLE_RECAPTCHA),
148
-            false,
149
-            true
150
-        );
151
-    }
152
-
153
-
154
-    /**
155
-     * @param string $tag
156
-     * @param string $handle
157
-     * @return string
158
-     */
159
-    public function addScriptAttributes($tag, $handle)
160
-    {
161
-        if ($handle === EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_GOOGLE_INVISIBLE_RECAPTCHA) {
162
-            $tag = str_replace('></script>', ' async="async" defer="defer"></script>', $tag);
163
-        }
164
-        return $tag;
165
-    }
166
-
167
-
168
-    /**
169
-     * Gets the HTML for displaying the label for this form input
170
-     * according to the form section's layout strategy
171
-     *
172
-     * @return string
173
-     */
174
-    public function get_html_for_label()
175
-    {
176
-        return '';
177
-    }
22
+	const SCRIPT_HANDLE_GOOGLE_INVISIBLE_RECAPTCHA   = 'google_invisible_recaptcha';
23
+
24
+	const SCRIPT_HANDLE_ESPRESSO_INVISIBLE_RECAPTCHA = 'espresso_invisible_recaptcha';
25
+
26
+	/**
27
+	 * @var EE_Registration_Config $config
28
+	 */
29
+	private $config;
30
+
31
+	/**
32
+	 * @var string $recaptcha_id
33
+	 */
34
+	private $recaptcha_id;
35
+
36
+	/**
37
+	 * @var string $submit_button_id
38
+	 */
39
+	private $submit_button_id;
40
+
41
+
42
+	/**
43
+	 * @param array                  $input_settings
44
+	 * @param EE_Registration_Config $registration_config
45
+	 * @throws InvalidArgumentException
46
+	 * @throws InvalidDataTypeException
47
+	 * @throws InvalidInterfaceException
48
+	 */
49
+	public function __construct(array $input_settings = array(), EE_Registration_Config $registration_config = null)
50
+	{
51
+		$this->_set_display_strategy(new EE_Invisible_Recaptcha_Display_Strategy());
52
+		parent::__construct($input_settings);
53
+		$registration_config    = $registration_config instanceof EE_Registration_Config
54
+			? $registration_config
55
+			: EE_Registry::instance()->CFG->registration;
56
+		$this->config           = $registration_config;
57
+		$this->recaptcha_id     = isset($input_settings['recaptcha_id'])
58
+			? $input_settings['recaptcha_id']
59
+			: substr(spl_object_hash($this), 8, 8);
60
+		$this->submit_button_id = isset($input_settings['submit_button_id'])
61
+			? $input_settings['submit_button_id']
62
+			: '';
63
+		$this->registerScripts();
64
+	}
65
+
66
+
67
+	/**
68
+	 * @return bool
69
+	 */
70
+	public function useCaptcha()
71
+	{
72
+		return $this->config->use_captcha && $this->config->recaptcha_theme === 'invisible';
73
+	}
74
+
75
+
76
+	/**
77
+	 * @return string
78
+	 */
79
+	public function language()
80
+	{
81
+		return $this->config->recaptcha_language;
82
+	}
83
+
84
+
85
+	/**
86
+	 * @return string
87
+	 */
88
+	public function siteKey()
89
+	{
90
+		return $this->config->recaptcha_publickey;
91
+	}
92
+
93
+
94
+	/**
95
+	 * @return string
96
+	 */
97
+	public function secretKey()
98
+	{
99
+		return $this->config->recaptcha_privatekey;
100
+	}
101
+
102
+
103
+	/**
104
+	 * @return string
105
+	 */
106
+	public function recaptchaId()
107
+	{
108
+		return $this->recaptcha_id;
109
+	}
110
+
111
+
112
+	/**
113
+	 * @return string
114
+	 */
115
+	public function submitButtonId()
116
+	{
117
+		return $this->submit_button_id;
118
+	}
119
+
120
+
121
+	/**
122
+	 * @return void
123
+	 */
124
+	public function registerScripts()
125
+	{
126
+		if (! $this->useCaptcha()) {
127
+			return;
128
+		}
129
+		add_filter('script_loader_tag', array($this, 'addScriptAttributes'), 10, 2);
130
+		wp_register_script(
131
+			EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_ESPRESSO_INVISIBLE_RECAPTCHA,
132
+			EED_Recaptcha_Invisible::assetsUrl() . 'espresso_invisible_recaptcha.js',
133
+			array('espresso_core'),
134
+			EVENT_ESPRESSO_VERSION,
135
+			true
136
+		);
137
+		wp_register_script(
138
+			EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_GOOGLE_INVISIBLE_RECAPTCHA,
139
+			add_query_arg(
140
+				array(
141
+					'onload' => 'espressoLoadRecaptcha',
142
+					'render' => 'explicit',
143
+					'hl'     => $this->language(),
144
+				),
145
+				'https://www.google.com/recaptcha/api.js?'
146
+			),
147
+			array(EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_ESPRESSO_INVISIBLE_RECAPTCHA),
148
+			false,
149
+			true
150
+		);
151
+	}
152
+
153
+
154
+	/**
155
+	 * @param string $tag
156
+	 * @param string $handle
157
+	 * @return string
158
+	 */
159
+	public function addScriptAttributes($tag, $handle)
160
+	{
161
+		if ($handle === EE_Invisible_Recaptcha_Input::SCRIPT_HANDLE_GOOGLE_INVISIBLE_RECAPTCHA) {
162
+			$tag = str_replace('></script>', ' async="async" defer="defer"></script>', $tag);
163
+		}
164
+		return $tag;
165
+	}
166
+
167
+
168
+	/**
169
+	 * Gets the HTML for displaying the label for this form input
170
+	 * according to the form section's layout strategy
171
+	 *
172
+	 * @return string
173
+	 */
174
+	public function get_html_for_label()
175
+	{
176
+		return '';
177
+	}
178 178
 }
Please login to merge, or discard this patch.