PluginProbe
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment / 2.1.4
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment v2.1.4
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
← All changes | firebox.php +67 -24 1.0.22.1.4 View file →
@@ -1,26 +1,24 @@
1 1 <?php
2 2 /**
3 3 * @package FireBox
4 - * @version 1.0.2 Free
4 + * @version 2.1.4 Free
5 5 *
6 6 * @author FirePlugins <info@fireplugins.com>
7 7 * @link https://www.fireplugins.com
8 - * @copyright Copyright © 2021 FirePlugins All Rights Reserved
8 + * @copyright Copyright © 2024 FirePlugins All Rights Reserved
9 9 * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
10 10 *
11 11 * Plugin Name: FireBox
12 - * Plugin URI: https://www.fireplugins.com/firebox
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.2
15 - * Stable tag: 1.0.2
16 - * Author: FirePlugins
14 + * Version: 2.1.4
15 + * Author: FirePlugins Popup Plugin Team
17 16 * Author URI: https://www.fireplugins.com/
18 17 * Text Domain: firebox
19 18 * Domain Path: /languages
20 19 * Requires at least: 5.4
21 - * Tested up to: 5.7
22 - * Requires PHP: 5.6.40
20 + * Requires PHP: 7.0
23 21 * License: GNU General Public License v2.0+
24 22 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
25 23 */
26 24
@@ -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.2');
50 + define('FBOX_VERSION', '2.1.4');
50 51 }
51 52
52 53 // Plugin License type (free/pro)
53 54 if (!defined('FBOX_LICENSE_TYPE'))
@@ -61,9 +62,9 @@
61 62
62 63 // PHP Minimm Version
63 64 if (!defined('FBOX_MINIMUM_PHP_VERSION'))
64 65 {
65 - define('FBOX_MINIMUM_PHP_VERSION', '5.6.40');
66 + define('FBOX_MINIMUM_PHP_VERSION', '7.0');
66 67 }
67 68
68 69
69 70 // Go Pro URL
@@ -68,9 +69,9 @@
68 69
69 70 // Go Pro URL
70 71 if (!defined('FBOX_GO_PRO_URL'))
71 72 {
72 - define('FBOX_GO_PRO_URL', 'https://www.fireplugins.com/firebox/upgrade');
73 + define('FBOX_GO_PRO_URL', 'https://www.fireplugins.com/firebox/upgrade?coupon=FREE2PRO&utm_source=Wordpress&utm_medium=upgradebutton&utm_campaign=freeversion');
73 74 }
74 75
75 76
76 77 // Plugin Documentation URL
@@ -75,10 +76,9 @@
75 76
76 77 // Plugin Documentation URL
77 78 if (!defined('FBOX_DOC_URL'))
78 79 {
79 - // TODO: define final URL
80 - define('FBOX_DOC_URL', 'https://www.fireplugins.com/docs/firebox');
80 + define('FBOX_DOC_URL', 'https://www.fireplugins.com/docs/firebox/');
81 81 }
82 82
83 83 // Plugin Folder Path
84 84 if (!defined('FBOX_PLUGIN_DIR'))
@@ -88,21 +88,21 @@
88 88
89 89 // Layouts Folder Path
90 90 if (!defined('FBOX_LAYOUTS_DIR'))
91 91 {
92 - define('FBOX_LAYOUTS_DIR', plugin_dir_path(__FILE__) . 'Inc/Core/Layouts/');
92 + define('FBOX_LAYOUTS_DIR', FBOX_PLUGIN_DIR . 'Inc/Core/Layouts/');
93 93 }
94 94
95 95 // Admin Layouts Folder Path
96 96 if (!defined('FBOX_ADMIN_LAYOUTS_DIR'))
97 97 {
98 - define('FBOX_ADMIN_LAYOUTS_DIR', plugin_dir_path(__FILE__) . 'Inc/Core/Layouts/admin/');
98 + define('FBOX_ADMIN_LAYOUTS_DIR', FBOX_PLUGIN_DIR . 'Inc/Core/Layouts/admin/');
99 99 }
100 100
101 101 // Public Layouts Folder Path
102 102 if (!defined('FBOX_PUBLIC_LAYOUTS_DIR'))
103 103 {
104 - define('FBOX_PUBLIC_LAYOUTS_DIR', plugin_dir_path(__FILE__) . 'Inc/Core/Layouts/public/');
104 + define('FBOX_PUBLIC_LAYOUTS_DIR', FBOX_PLUGIN_DIR . 'Inc/Core/Layouts/public/');
105 105 }
106 106
107 107 // Plugin Folder URL
108 108 if (!defined('FBOX_PLUGIN_URL'))
@@ -139,8 +139,13 @@
139 139 {
140 140 define('FBOX_BASE_FOLDER', dirname(__FILE__));
141 141 }
142 142
143 +if (!defined('FBOX_PLUGIN_BASENAME'))
144 +{
145 + define('FBOX_PLUGIN_BASENAME', plugin_basename(__FILE__));
146 +}
147 +
143 148 // Minimum PHP version check
144 149 if (!version_compare(PHP_VERSION, FBOX_MINIMUM_PHP_VERSION, '>='))
145 150 {
146 151 add_action('admin_notices', 'firebox_fail_php_version');
@@ -146,11 +151,46 @@
146 151 add_action('admin_notices', 'firebox_fail_php_version');
147 152 }
148 153 else
149 154 {
155 + // Migrator
156 + function firebox_upgrader_migrator_start($upgrader_object, $options)
157 + {
158 + if ($options['action'] === 'update' && $options['type'] === 'plugin' && isset($options['plugins']))
159 + {
160 + foreach ($options['plugins'] as $plugin)
161 + {
162 + if ($plugin !== plugin_basename(__FILE__))
163 + {
164 + continue;
165 + }
166 +
167 + $migrator = new \FireBox\Core\Migrator(get_option('firebox_version', '1.0.0'));
168 + $migrator->run();
169 + }
170 + }
171 + }
172 + add_action('upgrader_process_complete', 'firebox_upgrader_migrator_start', 10, 2);
173 +
174 + function firebox_init_migrator_start()
175 + {
176 + add_action('fpf_init', function() {
177 + $migrator = new \FireBox\Core\Migrator(get_option('firebox_version', '1.0.0'));
178 + $migrator->run();
179 + });
180 + }
181 + add_action('plugins_loaded', 'firebox_init_migrator_start', -1);
182 +
150 183 // Start Plugin
151 184 require_once dirname(__FILE__) . '/Inc/Core/Plugin.php';
152 185 firebox();
186 +
187 + if (is_admin())
188 + {
189 + // Run Activation/Deactivation procedures
190 + $maintenance = new \FireBox\Core\Admin\Maintenance(firebox()->hook_data);
191 + $maintenance->init();
192 + }
153 193 }
154 194
155 195 /**
156 196 * FireBox admin notice for minimum PHP version.
@@ -158,10 +198,13 @@
158 198 * Warning when the site doesn't have the minimum required PHP version.
159 199 *
160 200 * @return void
161 201 */
162 -function firebox_fail_php_version()
202 +if (!function_exists('firebox_fail_php_version'))
163 203 {
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 );
204 + function firebox_fail_php_version()
205 + {
206 + $message = sprintf(fpframework()->_('FPF_PHP_VERSION_FAIL'), 'FireBox', FBOX_MINIMUM_PHP_VERSION);
207 + $html_message = sprintf( '<div class="error">%s</div>', wpautop( $message ) );
208 + echo wp_kses_post( $html_message );
209 + }
167 210 }