PluginProbe
Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder / trunk
Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder vtrunk
6.2.15 6.2.14 6.2.13 6.2.12 6.2.10 6.2.11 6.2.9 6.2.8 6.2.7 6.2.6 6.2.5 6.2.4 6.2.3 6.2.2 3.6.22 3.6.31 3.6.40 3.6.41 3.6.42 3.6.50 3.6.51 3.6.60 3.6.61 3.6.62 3.6.64 All 197 releases
← All changes | app/Http/Controllers/ManagersController.php +14 -7 6.2.7 → trunk View file →
@@ -56,15 +56,22 @@
56 56
57 57 public function getUsers(ManagerService $managerService)
58 58 {
59 59 $search = sanitize_text_field($this->request->get('search', ''));
60 -
61 - $users = get_users([
62 - 'search' => "*{$search}*",
63 - 'number' => 50,
64 - 'fields' => ['ID', 'display_name', 'user_email']
65 - ]);
66 -
60 +
61 + if (current_user_can('list_users')) {
62 + $users = get_users([
63 + 'search' => "*{$search}*",
64 + 'number' => 50,
65 + 'fields' => ['ID', 'display_name', 'user_email']
66 + ]);
67 + } else {
68 + // A delegated full-access manager may confirm an address they already know,
69 + // but must not browse the site's user roster (FF-SEC-45).
70 + $user = is_email($search) ? get_user_by('email', $search) : false;
71 + $users = $user ? [$user] : [];
72 + }
73 +
67 74 $formattedUsers = [];
68 75 foreach ($users as $user) {
69 76 $formattedUsers[] = [
70 77 'ID' => $user->ID,