PluginProbe
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment / 3.1.14
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment v3.1.14
3.1.14 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 All 123 releases
← All changes | firebox.php +90 -31 1.0.1 → 3.1.14 View file →
@@ -1,27 +1,25 @@
1 1 <?php
2 2 /**
3 3 * @package FireBox
4 - * @version 1.0.1 Free
4 + * @version 3.1.14
5 5 *
6 6 * @author FirePlugins <[email protected]>
7 7 * @link https://www.fireplugins.com
8 - * @copyright Copyright © 2021 FirePlugins All Rights Reserved
8 + * @copyright Copyright © 2026 FirePlugins All Rights Reserved
9 9 * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
10 10 *
11 - * Plugin Name: FireBox
12 - * Plugin URI: https://www.fireplugins.com/firebox
11 + * Plugin Name: FireBox 3.1.14 Free
12 + * Plugin URI: https://www.fireplugins.com/
13 13 * Description: WordPress Popup and leads generation plugin that converts visitors into subscribers & customers.
14 - * Version: 1.0.1
15 - * Stable tag: 1.0.1
16 - * Author: FirePlugins
14 + * Version: 3.1.14
15 + * Author: FireBox Popup Plugin Team
17 16 * Author URI: https://www.fireplugins.com/
18 17 * Text Domain: firebox
19 18 * Domain Path: /languages
20 - * Requires at least: 5.4
21 - * Tested up to: 5.7
22 - * Requires PHP: 5.6.40
23 - * License: GNU General Public License v2.0+
19 + * Requires at least: 6.3
20 + * Requires PHP: 7.0
21 + * License: GPLv3 or later
24 22 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
25 23 */
26 24
27 25 // If this file is called directly, abort.
@@ -29,17 +27,20 @@
29 27 {
30 28 exit; // Exit if accessed directly.
31 29 }
32 30
33 -if (!session_id() && !headers_sent())
31 +// Load Framework
32 +if (!file_exists(dirname(__FILE__) . '/Inc/Framework/init.php'))
34 33 {
35 - session_start();
34 + return;
36 35 }
37 -
38 -// Load Framework
39 36 require_once dirname(__FILE__) . '/Inc/Framework/init.php';
40 37
41 38 // Plugin Autoloader
39 +if (!file_exists(dirname(__FILE__) . '/autoload.php'))
40 +{
41 + return;
42 +}
42 43 require_once dirname(__FILE__) . '/autoload.php';
43 44
44 45
45 46
@@ -45,9 +46,9 @@
45 46
46 47 // Plugin version
47 48 if (!defined('FBOX_VERSION'))
48 49 {
49 - define('FBOX_VERSION', '1.0.1');
50 + define('FBOX_VERSION', '3.1.14');
50 51 }
51 52
52 53 // Plugin License type (free/pro)
53 54 if (!defined('FBOX_LICENSE_TYPE'))
@@ -52,33 +53,47 @@
52 53 // Plugin License type (free/pro)
53 54 if (!defined('FBOX_LICENSE_TYPE'))
54 55 {
55 56
56 - $type = 'lite';
57 + $fbox_license_type = 'lite';
57 58
58 59
59 - define('FBOX_LICENSE_TYPE', $type);
60 + define('FBOX_LICENSE_TYPE', $fbox_license_type);
61 + unset($fbox_license_type);
60 62 }
61 63
64 +// Plugin License Plan (basic/pro/growth)
65 +if (!defined('FBOX_LICENSE_PLAN'))
66 +{
67 +
68 + $fbox_license_plan = 'free';
69 +
70 +
71 +
72 +
73 +
74 + define('FBOX_LICENSE_PLAN', $fbox_license_plan);
75 + unset($fbox_license_plan);
76 +}
77 +
62 78 // PHP Minimm Version
63 79 if (!defined('FBOX_MINIMUM_PHP_VERSION'))
64 80 {
65 - define('FBOX_MINIMUM_PHP_VERSION', '5.6.40');
81 + define('FBOX_MINIMUM_PHP_VERSION', '7.0');
66 82 }
67 83
68 -
69 84 // Go Pro URL
70 85 if (!defined('FBOX_GO_PRO_URL'))
71 86 {
72 - define('FBOX_GO_PRO_URL', 'https://www.fireplugins.com/firebox/upgrade');
87 + define('FBOX_GO_PRO_URL', 'https://www.fireplugins.com/upgrade/?utm_source=product&utm_campaign=firebox-' . (FBOX_LICENSE_TYPE === 'lite' ? 'free' : 'pro') . '&utm_medium=%s-feature');
73 88 }
74 89
75 90
91 +
76 92 // Plugin Documentation URL
77 93 if (!defined('FBOX_DOC_URL'))
78 94 {
79 - // TODO: define final URL
80 - define('FBOX_DOC_URL', 'https://www.fireplugins.com/docs/firebox');
95 + define('FBOX_DOC_URL', 'https://www.fireplugins.com/docs/?utm_source=product&utm_campaign=firebox-' . (FBOX_LICENSE_TYPE === 'lite' ? 'free' : 'pro') . '&utm_medium=misc&utm_content=documentation');
81 96 }
82 97
83 98 // Plugin Folder Path
84 99 if (!defined('FBOX_PLUGIN_DIR'))
@@ -85,24 +100,30 @@
85 100 {
86 101 define('FBOX_PLUGIN_DIR', plugin_dir_path(__FILE__));
87 102 }
88 103
104 +// Plugin Release Date
105 +if (!defined('FBOX_RELEASE_DATE'))
106 +{
107 + define('FBOX_RELEASE_DATE', '2026-10-02');
108 +}
109 +
89 110 // Layouts Folder Path
90 111 if (!defined('FBOX_LAYOUTS_DIR'))
91 112 {
92 - define('FBOX_LAYOUTS_DIR', plugin_dir_path(__FILE__) . 'Inc/Core/Layouts/');
113 + define('FBOX_LAYOUTS_DIR', FBOX_PLUGIN_DIR . 'Inc/Core/Layouts/');
93 114 }
94 115
95 116 // Admin Layouts Folder Path
96 117 if (!defined('FBOX_ADMIN_LAYOUTS_DIR'))
97 118 {
98 - define('FBOX_ADMIN_LAYOUTS_DIR', plugin_dir_path(__FILE__) . 'Inc/Core/Layouts/admin/');
119 + define('FBOX_ADMIN_LAYOUTS_DIR', FBOX_PLUGIN_DIR . 'Inc/Core/Layouts/admin/');
99 120 }
100 121
101 122 // Public Layouts Folder Path
102 123 if (!defined('FBOX_PUBLIC_LAYOUTS_DIR'))
103 124 {
104 - define('FBOX_PUBLIC_LAYOUTS_DIR', plugin_dir_path(__FILE__) . 'Inc/Core/Layouts/public/');
125 + define('FBOX_PUBLIC_LAYOUTS_DIR', FBOX_PLUGIN_DIR . 'Inc/Core/Layouts/public/');
105 126 }
106 127
107 128 // Plugin Folder URL
108 129 if (!defined('FBOX_PLUGIN_URL'))
@@ -139,8 +160,13 @@
139 160 {
140 161 define('FBOX_BASE_FOLDER', dirname(__FILE__));
141 162 }
142 163
164 +if (!defined('FBOX_PLUGIN_BASENAME'))
165 +{
166 + define('FBOX_PLUGIN_BASENAME', plugin_basename(__FILE__));
167 +}
168 +
143 169 // Minimum PHP version check
144 170 if (!version_compare(PHP_VERSION, FBOX_MINIMUM_PHP_VERSION, '>='))
145 171 {
146 172 add_action('admin_notices', 'firebox_fail_php_version');
@@ -146,11 +172,41 @@
146 172 add_action('admin_notices', 'firebox_fail_php_version');
147 173 }
148 174 else
149 175 {
176 + /**
177 + * Install and upgrade entry point.
178 + *
179 + * The activation hook fires on one site only, and never for a site added to
180 + * a network later. It is also missed when a plugin is activated by WP-CLI on
181 + * part of a network, or when a site is restored from a backup. Comparing the
182 + * stored version to the running one catches all of those, and it covers the
183 + * plugin update too — upgrader_process_complete runs while the old code is
184 + * still loaded, so the first request on the new code is what has to do the
185 + * work anyway. The installer stamps the version, so this runs once.
186 + */
187 + function firebox_init_installer_start()
188 + {
189 + add_action('fpf_init', function() {
190 + if (get_option('firebox_version') === FBOX_VERSION)
191 + {
192 + return;
193 + }
194 +
195 + \FireBox\Core\Admin\SiteInstaller::install();
196 + });
197 + }
198 + add_action('plugins_loaded', 'firebox_init_installer_start', -1);
199 +
200 +
201 +
150 202 // Start Plugin
151 203 require_once dirname(__FILE__) . '/Inc/Core/Plugin.php';
152 204 firebox();
205 +
206 + // Run Activation/Deactivation procedures.
207 + $maintenance = new \FireBox\Core\Admin\Maintenance(firebox()->hook_data);
208 + $maintenance->init();
153 209 }
154 210
155 211 /**
156 212 * FireBox admin notice for minimum PHP version.
@@ -158,10 +214,13 @@
158 214 * Warning when the site doesn't have the minimum required PHP version.
159 215 *
160 216 * @return void
161 217 */
162 -function firebox_fail_php_version()
218 +if (!function_exists('firebox_fail_php_version'))
163 219 {
164 - $message = sprintf(fpframework()->_('FPF_PHP_VERSION_FAIL'), 'FireBox', FBOX_MINIMUM_PHP_VERSION);
165 - $html_message = sprintf( '<div class="error">%s</div>', wpautop( $message ) );
166 - echo wp_kses_post( $html_message );
167 -}
220 + function firebox_fail_php_version()
221 + {
222 + $message = sprintf(fpframework()->_('FPF_PHP_VERSION_FAIL'), 'FireBox', FBOX_MINIMUM_PHP_VERSION);
223 + $html_message = sprintf( '<div class="error">%s</div>', wpautop( $message ) );
224 + echo wp_kses_post( $html_message );
225 + }
226 +}