PluginProbe
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment / 3.1.13
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment v3.1.13
3.1.13 3.1.12 3.1.11 3.1.10 3.1.9 3.1.8 3.1.7 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 All 122 releases
firebox / Inc / Core / Form / Actions / Actions.php

Actions.php in FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment 3.1.13, at Inc/Core/Form/Actions/Actions.php

88 lines 1.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * @package FireBox
4 * @version 3.1.13 Free
5 *
6 * @author FirePlugins <info@fireplugins.com>
7 * @link https://www.fireplugins.com
8 * @copyright Copyright © 2026 FirePlugins All Rights Reserved
9 * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
10 */
11
12 namespace FireBox\Core\Form\Actions;
13
14 if (!defined('ABSPATH'))
15 {
16 exit; // Exit if accessed directly.
17 }
18
19 class Actions
20 {
21 private $form_settings = [];
22
23 private $submission = [];
24
25 private $error_message = '';
26
27 public function __construct($form_settings = [], $submission = [])
28 {
29 $this->form_settings = $form_settings;
30 $this->submission = $submission;
31 }
32
33 /**
34 * Runs all enabled actions.
35 *
36 * @return void
37 */
38 public function run()
39 {
40 if (!$this->form_settings || !$this->submission)
41 {
42 return true;
43 }
44
45 $actions = $this->form_settings['attrs']['actions'];
46
47 foreach ($actions as $key => $enabled)
48 {
49 if (!$enabled)
50 {
51 continue;
52 }
53
54 $class = '\FireBox\Core\Form\Actions\Actions\\' . $key;
55
56 if (!class_exists($class))
57 {
58 continue;
59 }
60
61 $class = new $class($this->form_settings, $this->submission);
62
63 try {
64 if ($class->validate())
65 {
66 $class->run();
67 }
68 }
69 catch (\Exception $e)
70 {
71 $this->error_message = $e->getMessage();
72 return;
73 }
74 }
75
76 return true;
77 }
78
79 /**
80 * Returns the error message.
81 *
82 * @return string
83 */
84 public function getErrorMessage()
85 {
86 return $this->error_message;
87 }
88 }