PluginProbe ʕ •ᴥ•ʔ
Hustle – Email Marketing, Lead Generation, Optins, Popups / 7.6.3
Hustle – Email Marketing, Lead Generation, Optins, Popups v7.6.3
7.8.13 7.8.13.1 trunk 3.0 3.1 3.1.1 3.1.2 3.1.3 3.1.4 4.3.2 4.4.4 4.4.5 4.4.5.1 4.4.5.4 4.6 4.6.1.1 4.6.1.4 4.7.0.2 4.7.0.3 4.7.0.7 4.7.0.9 4.7.1.0 4.7.1.1 4.8.0.0 5.0.0 5.0.1 5.0.1.1 5.0.1.2 5.1 5.1.1 5.1.2 5.1.3 5.1.3.1 5.1.3.2 5.1.4 5.1.5 6.0 6.0.1 6.0.2 6.0.3 6.0.4.2 6.0.5 6.0.6.1 6.0.7 6.0.8.1 6.0.9 7.0.0.1 7.0.2 7.0.3 7.0.4 7.1.0 7.1.1 7.2.0 7.2.1 7.3.0 7.3.1 7.3.3 7.3.5 7.3.6 7.3.7 7.4.0 7.4.1 7.4.11 7.4.13 7.4.13.1 7.4.2 7.4.3 7.4.4 7.4.5 7.4.5.1 7.4.5.2 7.4.6 7.4.7 7.5.0 7.6.0 7.6.1 7.6.3 7.6.4 7.6.6 7.7.0 7.7.1 7.8.0 7.8.1 7.8.10 7.8.10.1 7.8.10.2 7.8.11 7.8.12 7.8.12.1 7.8.2 7.8.3 7.8.4 7.8.5 7.8.6 7.8.7 7.8.8 7.8.9 7.8.9.1 7.8.9.2 7.8.9.3
wordpress-popup / uninstall.php
wordpress-popup Last commit date
assets 3 years ago inc 3 years ago languages 3 years ago lib 3 years ago vendor 3 years ago views 3 years ago humans.txt 4 years ago license.txt 5 years ago popover.php 3 years ago readme.txt 3 years ago uninstall.php 3 years ago
uninstall.php
92 lines
1 <?php
2 /**
3 * Hustle Uninstall methods
4 * Called when plugin is deleted
5 *
6 * @since 4.0.3
7 * @package Hustle
8 */
9
10 // If uninstall.php is not called by WordPress, die.
11 if ( ! defined( 'WP_UNINSTALL_PLUGIN' ) ) {
12 die;
13 }
14
15 // Require helper file for uninstallation.
16 if ( ! class_exists( 'Hustle_Deletion' ) ) {
17 require_once dirname( __FILE__ ) . '/inc/hustle-deletion.php';
18 }
19
20 // Get Hustle settings for the main site.
21 $hustle_settings = get_option( 'hustle_settings', array() );
22
23 $reset_main_site_settings = ! empty( $hustle_settings['data'] )
24 && ! empty( $hustle_settings['data']['reset_settings_uninstall'] )
25 && '1' === $hustle_settings['data']['reset_settings_uninstall'];
26
27 if ( ! is_multisite() ||
28 empty( $hustle_settings['data']['reset_all_sites'] )
29 || '1' !== $hustle_settings['data']['reset_all_sites'] ) {
30 hustle_reset_settings( $reset_main_site_settings );
31 } else {
32 $sites = get_sites();
33
34 foreach ( $sites as $site ) {
35 $site_id = $site->blog_id;
36
37 // Switch to blog before deleting settings.
38 switch_to_blog( $site_id );
39 hustle_reset_settings( $reset_main_site_settings );
40 restore_current_blog();
41 }
42 }
43
44 /**
45 * Remove all Hustle settings for the current blog
46 *
47 * @param bool $reset_main_site_settings Should reset settings or not.
48 */
49 function hustle_reset_settings( $reset_main_site_settings ) {
50 Hustle_Deletion::clear_cronjobs();
51
52 if ( ! is_main_site() || $reset_main_site_settings ) {
53 Hustle_Deletion::hustle_reset_notifications();
54 Hustle_Deletion::hustle_delete_custom_options();
55 Hustle_Deletion::hustle_delete_addon_options( hustle_addon_slugs() );
56 Hustle_Deletion::hustle_clear_modules();
57 Hustle_Deletion::hustle_clear_module_submissions();
58 Hustle_Deletion::hustle_clear_module_views();
59 Hustle_Deletion::hustle_drop_custom_tables();
60 }
61 }
62
63 /**
64 * Delete slug params
65 *
66 * @since 1.4
67 */
68 function hustle_addon_slugs() {
69 $addon_slugs = array(
70 'activecampaign',
71 'aweber',
72 'campaignmonitor',
73 'constantcontact',
74 'convertkit',
75 'e_newsletter',
76 'getresponse',
77 'hubspot',
78 'icontact',
79 'infusionsoft',
80 'mad_mimi',
81 'mailchimp',
82 'mailerlite',
83 'mautic',
84 'sendgrid',
85 'sendinblue',
86 'sendy',
87 'zapier',
88 );
89
90 return $addon_slugs;
91 }
92