Completed
Push — 151-fix/delete-buddy-press-pen... ( ee62d7 )
by
unknown
11:24
created

DeleteBPPendingUsersModule::render()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 26
Code Lines 20

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 20
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 26
ccs 0
cts 18
cp 0
crap 2
rs 9.6
1
<?php
2
3
namespace BulkWP\BulkDelete\Core\Users\Modules;
4
5
use BulkWP\BulkDelete\Core\Users\Modules\DeleteUsersByUserMetaModule;
6
7
defined( 'ABSPATH' ) || exit; // Exit if accessed directly.
8
9
if ( ! class_exists( 'Buddy Press' ) ) {
10
	return;
11
}
12
13
/**
14
 * Bulk Delete Buddy Press pending users.
15
 *
16
 * @since 6.2.0.
17
 */
18
class DeleteBPPendingUsersModule extends DeleteUsersByUserMetaModule {
19
	/**
20
	 * Initialize and setup variables.
21
	 */
22
	protected function initialize() {
23
		$this->item_type     = 'users';
24
		$this->field_slug    = 'u_meta';
25
		$this->meta_box_slug = 'bd_bp_users_by_meta';
26
		$this->action        = 'delete_users_by_meta';
27
		$this->messages      = array(
28
			'box_label'         => __( 'Delete Pending Users', 'bulk-delete' ),
29
			'confirm_deletion'  => __( 'Are you sure you want to delete all the Buddy Press pending users?', 'bulk-delete' ),
30
			'confirm_scheduled' => __( 'Are you sure you want to schedule deletion for all the users?', 'bulk-delete' ),
31
			/* translators: 1 Number of users deleted */
32
			'deleted_one'       => __( 'Deleted %d Buddy Press pending user', 'bulk-delete' ),
33
			/* translators: 1 Number of users deleted */
34
			'deleted_multiple'  => __( 'Deleted %d Buddy Press pending users', 'bulk-delete' ),
35
		);
36
	}
37
	/**
38
	 * Render delete users box.
39
	 */
40
	public function render() {
41
		$options = array(
42
			'fields'       => 'ids',
43
			'meta_key'     => '_bprwg_is_moderated',
44
			'meta_value'   => 'true',
45
			'meta_compare' => '=',
46
		);
47
48
		$users = $this->query_users( $options );
49
		$count = count( $users );
50
		?>
51
		<!-- Users Start-->
52
		<h4><?php _e( 'Delete ' . esc_attr( $count ) . ' pending users signed up via buddy press', 'bulk-delete' ); ?></h4>
53
54
		<fieldset class="options">
55
			<table class="optiontable">
56
				<?php
57
				$this->render_filtering_table_header();
58
				$this->render_user_login_restrict_settings( false );
59
				?>
60
			</table>
61
		</fieldset>
62
		<!-- Users end-->
63
64
		<?php
65
		$this->render_submit_button();
66
	}
67
68
	/**
69
	 * Process user input and create metabox options.
70
	 *
71
	 * @param array $request Request array.
72
	 * @param array $options User options.
73
	 *
74
	 * @return array User options.
75
	 */
76
	protected function convert_user_input_to_options( $request, $options ) {
77
		$options['meta_key']     = '_bprwg_is_moderated';
78
		$options['meta_compare'] = '=';
79
		$options['meta_value']   = 'true';
80
81
		return $options;
82
	}
83
}
84