PluginProbe
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP / 1.2.76
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP v1.2.76
1.2.76 1.2.75 1.2.74 1.2.73 1.2.72 1.2.71 1.2.70 1.2.69 1.2.68 1.2.67 1.2.66 1.2.65 1.2.64 1.2.63 trunk 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.17 1.0.18 1.0.19 All 176 releases
← All changes | uninstall.php +73 -56 1.0.18 → 1.2.76 View file →
@@ -9,83 +9,100 @@
9 9 */
10 10
11 11 // Exit if accessed directly.
12 12 if ( ! defined( 'WP_UNINSTALL_PLUGIN' ) ) {
13 - exit;
13 + exit;
14 14 }
15 15
16 16 global $wpdb;
17 17
18 -if ( !class_exists( 'UsersWP' ) ) {
19 - // Load plugin file.
20 - include_once( 'userswp.php' );
21 -}
22 -
23 18 $wpdb->hide_errors();
24 19
25 -if (is_multisite()) {
26 - $main_site = get_network()->site_id;
27 - $sql = "SELECT blog_id FROM $wpdb->blogs
20 +if ( is_multisite() ) {
21 + $main_site = get_network()->site_id;
22 + $sql = "SELECT blog_id FROM $wpdb->blogs
28 23 WHERE archived = '0' AND spam = '0'
29 24 AND deleted = '0'";
30 25
31 - $blog_ids = $wpdb->get_col( $sql );
26 + $blog_ids = $wpdb->get_col( $sql );
32 27
33 - foreach ( $blog_ids as $blog_id ) {
34 - switch_to_blog( $blog_id );
35 - uwp_uninstall();
36 - }
37 - switch_to_blog( $main_site );
38 - uwp_drop_usermeta_table();
39 - restore_current_blog();
28 + foreach ( $blog_ids as $blog_id ) {
29 + switch_to_blog( $blog_id );
30 + uwp_uninstall();
31 + }
32 + switch_to_blog( $main_site );
33 + uwp_drop_usermeta_table();
34 + restore_current_blog();
40 35 } else {
41 - uwp_uninstall();
42 - uwp_drop_usermeta_table();
36 + uwp_uninstall();
37 + uwp_drop_usermeta_table();
43 38 }
44 39
45 -function uwp_uninstall(){
46 - if ( uwp_get_option('uninstall_erase_data') == '1' ) {
47 - global $wpdb;
40 +function uwp_uninstall() {
41 + $uwp_options = get_option( 'uwp_settings' );
42 + if ( isset($uwp_options['uninstall_erase_data']) && $uwp_options['uninstall_erase_data'] == '1' ) {
43 + global $wpdb;
48 44
49 - // Delete options
50 - delete_option('uwp_settings');
51 - delete_option('uwp_activation_redirect');
52 - delete_option('uwp_flush_rewrite');
53 - delete_option('uwp_default_data_installed');
54 - delete_option('uwp_db_version');
45 + $table_name = $wpdb->prefix . 'uwp_form_fields';
46 + $rows = $wpdb->get_results( "select * from " . $table_name . "" );
55 47
48 + // Delete user meta for all users
49 + $meta_type = 'user';
50 + $user_id = 0; // This will be ignored, since we are deleting for all users.
51 + $meta_value = ''; // Also ignored. The meta will be deleted regardless of value.
52 + $delete_all = true;
56 53
57 - $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
58 - $rows = $wpdb->get_results("select * from " . $table_name . "");
54 + foreach ( $rows as $row ) {
55 + delete_metadata( $meta_type, $user_id, $row->htmlvar_name, $meta_value, $delete_all );
56 + }
59 57
60 - // Delete user meta for all users
61 - $meta_type = 'user';
62 - $user_id = 0; // This will be ignored, since we are deleting for all users.
63 - $meta_key = 'uwp_usermeta';
64 - $meta_value = ''; // Also ignored. The meta will be deleted regardless of value.
65 - $delete_all = true;
58 + // Remove crop meta stored outside the form fields.
59 + foreach ( array( 'avatar', 'banner' ) as $uwp_image_type ) {
60 + delete_metadata( $meta_type, $user_id, '_uwp_' . $uwp_image_type . '_original', $meta_value, $delete_all );
61 + delete_metadata( $meta_type, $user_id, '_uwp_pending_' . $uwp_image_type . '_upload', $meta_value, $delete_all );
62 + }
66 63
67 - foreach ($rows as $row) {
68 - delete_metadata( $meta_type, $user_id, $row->htmlvar_name, $meta_value, $delete_all );
69 - }
64 + // Drop form fields table
65 + $table_name = $wpdb->prefix . 'uwp_form_fields';
66 + $sql = "DROP TABLE IF EXISTS $table_name";
67 + $wpdb->query( $sql );
70 68
71 - // Drop form fields table
72 - $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
73 - $sql = "DROP TABLE IF EXISTS $table_name";
74 - $wpdb->query($sql);
69 + // Drop form extras table
70 + $extras_table_name = $wpdb->prefix . 'uwp_form_extras';
71 + $sql = "DROP TABLE IF EXISTS $extras_table_name";
72 + $wpdb->query( $sql );
75 73
76 - // Drop form extras table
77 - $extras_table_name = uwp_get_table_prefix() . 'uwp_form_extras';
78 - $sql = "DROP TABLE IF EXISTS $extras_table_name";
79 - $wpdb->query($sql);
80 - }
74 + // Drop form profile tabs table
75 + $profile_table_name = $wpdb->prefix . 'uwp_profile_tabs';
76 + $sql = "DROP TABLE IF EXISTS $profile_table_name";
77 + $wpdb->query( $sql );
78 +
79 + // Drop user sorting table
80 + $sorting_table_name = $wpdb->prefix . 'uwp_user_sorting';
81 + $sql = "DROP TABLE IF EXISTS $sorting_table_name";
82 + $wpdb->query( $sql );
83 +
84 + // Delete pages
85 + $pages = array( 'register_page', 'login_page', 'profile_page', 'account_page', 'change_page', 'forgot_page', 'reset_page', 'users_page', 'user_list_item_page');
86 +
87 + foreach ($pages as $page){
88 + if(isset($uwp_options[$page]) && !empty($uwp_options[$page])){
89 + wp_delete_post( $uwp_options[$page], true );
90 + }
91 + }
92 +
93 + // Delete options
94 + delete_option( 'uwp_settings' );
95 + delete_option( 'uwp_activation_redirect' );
96 + delete_option( 'uwp_flush_rewrite' );
97 + delete_option( 'uwp_default_data_installed' );
98 + delete_option( 'uwp_db_version' );
99 + }
81 100 }
82 101
83 -function uwp_drop_usermeta_table(){
84 - global $wpdb;
85 - if ( uwp_get_option('uninstall_erase_data') == '1' ) {
86 - // Drop usermeta table
87 - $meta_table_name = uwp_get_table_prefix() . 'uwp_usermeta';
88 - $sql = "DROP TABLE IF EXISTS $meta_table_name";
89 - $wpdb->query($sql);
90 - }
102 +function uwp_drop_usermeta_table() {
103 + global $wpdb;
104 + // Drop usermeta table
105 + $meta_table_name = $wpdb->prefix . 'uwp_usermeta';
106 + $sql = "DROP TABLE IF EXISTS $meta_table_name";
107 + $wpdb->query( $sql );
91 108 }