PluginProbe
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment / 2.1.14
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment v2.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 1.1.1 All 122 releases
← All changes | Inc/Core/Admin/PluginUninstall.php +34 -4 1.0.02.1.14 View file →
@@ -1,12 +1,12 @@
1 1 <?php
2 2 /**
3 3 * @package FireBox
4 - * @version 1.0.0 Free
4 + * @version 2.1.14 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
12 12 namespace FireBox\Core\Admin;
@@ -15,9 +15,9 @@
15 15 {
16 16 exit; // Exit if accessed directly.
17 17 }
18 18
19 -require_once FBOX_PLUGIN_DIR . '/Inc/Framework/Inc/Admin/Includes/Uninstall.php';
19 +require_once FBOX_PLUGIN_DIR . 'Inc/Framework/Inc/Admin/Includes/Uninstall.php';
20 20
21 21 class PluginUninstall extends \Uninstall
22 22 {
23 23 /**
@@ -30,17 +30,22 @@
30 30 if (!$settings = get_option('firebox_settings'))
31 31 {
32 32 return;
33 33 }
34 -
34 +
35 35 if (isset($settings['keep_data_on_uninstall']) && $settings['keep_data_on_uninstall'] == '1')
36 36 {
37 37 return;
38 38 }
39 39
40 + require_once FBOX_PLUGIN_DIR . 'Inc/Framework/Inc/Helpers/Directory.php';
41 + require_once FBOX_PLUGIN_DIR . 'Inc/Framework/Inc/Helpers/WPHelper.php';
42 +
40 43 // remove all db tables
41 44 $this->pluginUninstall();
42 45
46 + $this->removeCapabilities();
47 +
43 48 // de-register post type
44 49 unregister_post_type('firebox');
45 50
46 51 // remove all custom post types data
@@ -56,6 +61,31 @@
56 61
57 62 // remove all options
58 63 delete_option('firebox_version');
59 64 delete_option('firebox_settings');
65 + delete_option('firebox_import');
66 + delete_option('firebox_license_status');
67 + delete_option('firebox_license_key');
68 +
69 + // Delete /wp-content/uploads/firebox directory
70 + \FPFramework\Helpers\Directory::delete(\FPFramework\Helpers\WPHelper::getPluginUploadsDirectory('firebox'));
71 + }
72 +
73 + private function removeCapabilities()
74 + {
75 + $capabilities = \FireBox\Core\Admin\Capabilities::getCapabilities();
76 +
77 + // Remove capabilities from all roles
78 + foreach ($capabilities as $cap)
79 + {
80 + foreach (wp_roles()->roles as $role_name => $role_info)
81 + {
82 + $role = get_role($role_name);
83 +
84 + if ($role && $role->has_cap($cap))
85 + {
86 + $role->remove_cap($cap);
87 + }
88 + }
89 + }
60 90 }
61 91 }