From da56782fd51b6600fd9ddb67141e01283d69fd20 Mon Sep 17 00:00:00 2001 From: Maria Daniel Deepak Date: Mon, 6 Nov 2017 09:12:13 +0530 Subject: [PATCH 1/3] Revert "Extend "Delete users when no posts" to all post types" This reverts commit 273914be1e01db83b648356bbb35dcb96e99437b. --- include/base/users/class-bd-user-meta-box-module.php | 4 +--- .../users/modules/class-bulk-delete-users-by-user-role.php | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/include/base/users/class-bd-user-meta-box-module.php b/include/base/users/class-bd-user-meta-box-module.php index 42f0ae547..048f6974f 100644 --- a/include/base/users/class-bd-user-meta-box-module.php +++ b/include/base/users/class-bd-user-meta-box-module.php @@ -68,9 +68,7 @@ protected function delete_users( $options, $delete_options ) { * @return bool True if the user can be deleted, false otherwise. */ protected function can_delete_by_post_count( $delete_options, $user ) { - if ( $delete_options['no_posts'] && - array_key_exists( 'post_type', $delete_options ) && - count_user_posts( $user->ID, $delete_options['post_type'] ) > 0 ) { + if ( $delete_options['no_posts'] && count_user_posts( $user->ID ) > 0 ) { return false; } diff --git a/include/users/modules/class-bulk-delete-users-by-user-role.php b/include/users/modules/class-bulk-delete-users-by-user-role.php index 609a56af3..30f64b371 100644 --- a/include/users/modules/class-bulk-delete-users-by-user-role.php +++ b/include/users/modules/class-bulk-delete-users-by-user-role.php @@ -104,7 +104,7 @@ public function render() { public function process() { $delete_options = array(); $delete_options['selected_roles'] = array_get( $_POST, 'smbd_u_roles' ); - $delete_options['post_type'] = array_merge( array( 'post', 'page' ), get_post_types( array( '_builtin' => false ) ) ); + $this->process_user_delete( $delete_options ); } From 01915005116739a3935694b343bb00df19aedae2 Mon Sep 17 00:00:00 2001 From: Maria Daniel Deepak Date: Tue, 24 Oct 2017 10:48:35 +0530 Subject: [PATCH 2/3] Extend "Delete users when no posts" to all post types --- include/base/users/class-bd-user-meta-box-module.php | 4 +++- .../users/modules/class-bulk-delete-users-by-user-meta.php | 1 + .../users/modules/class-bulk-delete-users-by-user-role.php | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/include/base/users/class-bd-user-meta-box-module.php b/include/base/users/class-bd-user-meta-box-module.php index 048f6974f..42f0ae547 100644 --- a/include/base/users/class-bd-user-meta-box-module.php +++ b/include/base/users/class-bd-user-meta-box-module.php @@ -68,7 +68,9 @@ protected function delete_users( $options, $delete_options ) { * @return bool True if the user can be deleted, false otherwise. */ protected function can_delete_by_post_count( $delete_options, $user ) { - if ( $delete_options['no_posts'] && count_user_posts( $user->ID ) > 0 ) { + if ( $delete_options['no_posts'] && + array_key_exists( 'post_type', $delete_options ) && + count_user_posts( $user->ID, $delete_options['post_type'] ) > 0 ) { return false; } diff --git a/include/users/modules/class-bulk-delete-users-by-user-meta.php b/include/users/modules/class-bulk-delete-users-by-user-meta.php index 42ffbf0cb..78d0ec762 100644 --- a/include/users/modules/class-bulk-delete-users-by-user-meta.php +++ b/include/users/modules/class-bulk-delete-users-by-user-meta.php @@ -115,6 +115,7 @@ public function process() { $delete_options['meta_key'] = array_get( $_POST, 'smbd_u_meta_key' ); $delete_options['meta_compare'] = array_get( $_POST, 'smbd_u_meta_compare', '=' ); $delete_options['meta_value'] = array_get( $_POST, 'smbd_u_meta_value' ); + $delete_options['post_type'] = array_merge( array( 'post', 'page' ), get_post_types( array( '_builtin' => false ) ) ); $this->process_user_delete( $delete_options ); } diff --git a/include/users/modules/class-bulk-delete-users-by-user-role.php b/include/users/modules/class-bulk-delete-users-by-user-role.php index 30f64b371..609a56af3 100644 --- a/include/users/modules/class-bulk-delete-users-by-user-role.php +++ b/include/users/modules/class-bulk-delete-users-by-user-role.php @@ -104,7 +104,7 @@ public function render() { public function process() { $delete_options = array(); $delete_options['selected_roles'] = array_get( $_POST, 'smbd_u_roles' ); - + $delete_options['post_type'] = array_merge( array( 'post', 'page' ), get_post_types( array( '_builtin' => false ) ) ); $this->process_user_delete( $delete_options ); } From 1421d4f0fa184852d47359fe84e36478af7ab01d Mon Sep 17 00:00:00 2001 From: Maria Daniel Deepak Date: Wed, 8 Nov 2017 09:36:04 +0530 Subject: [PATCH 3/3] Separate of concerns while deleting Users by posts count --- include/base/users/class-bd-user-meta-box-module.php | 6 ++---- .../users/modules/class-bulk-delete-users-by-user-meta.php | 1 - .../users/modules/class-bulk-delete-users-by-user-role.php | 1 - 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/include/base/users/class-bd-user-meta-box-module.php b/include/base/users/class-bd-user-meta-box-module.php index 42f0ae547..44320447e 100644 --- a/include/base/users/class-bd-user-meta-box-module.php +++ b/include/base/users/class-bd-user-meta-box-module.php @@ -63,14 +63,12 @@ protected function delete_users( $options, $delete_options ) { * @access protected * * @param array $delete_options Delete Options. - * @param object $user User objet that needs to be deleted. + * @param object $user User object that needs to be deleted. * * @return bool True if the user can be deleted, false otherwise. */ protected function can_delete_by_post_count( $delete_options, $user ) { - if ( $delete_options['no_posts'] && - array_key_exists( 'post_type', $delete_options ) && - count_user_posts( $user->ID, $delete_options['post_type'] ) > 0 ) { + if ( $delete_options['no_posts'] && count_user_posts( $user->ID, get_post_types( array( 'public' => true ) ) ) > 0 ) { return false; } diff --git a/include/users/modules/class-bulk-delete-users-by-user-meta.php b/include/users/modules/class-bulk-delete-users-by-user-meta.php index 78d0ec762..42ffbf0cb 100644 --- a/include/users/modules/class-bulk-delete-users-by-user-meta.php +++ b/include/users/modules/class-bulk-delete-users-by-user-meta.php @@ -115,7 +115,6 @@ public function process() { $delete_options['meta_key'] = array_get( $_POST, 'smbd_u_meta_key' ); $delete_options['meta_compare'] = array_get( $_POST, 'smbd_u_meta_compare', '=' ); $delete_options['meta_value'] = array_get( $_POST, 'smbd_u_meta_value' ); - $delete_options['post_type'] = array_merge( array( 'post', 'page' ), get_post_types( array( '_builtin' => false ) ) ); $this->process_user_delete( $delete_options ); } diff --git a/include/users/modules/class-bulk-delete-users-by-user-role.php b/include/users/modules/class-bulk-delete-users-by-user-role.php index 609a56af3..174b2a099 100644 --- a/include/users/modules/class-bulk-delete-users-by-user-role.php +++ b/include/users/modules/class-bulk-delete-users-by-user-role.php @@ -104,7 +104,6 @@ public function render() { public function process() { $delete_options = array(); $delete_options['selected_roles'] = array_get( $_POST, 'smbd_u_roles' ); - $delete_options['post_type'] = array_merge( array( 'post', 'page' ), get_post_types( array( '_builtin' => false ) ) ); $this->process_user_delete( $delete_options ); }