| @@ -705,16 +705,21 @@ | ||
| 705 | 705 | ); |
| 706 | 706 | |
| 707 | 707 | do_action('fluentform/submission_user_changed', $submission, $user); |
| 708 | 708 | |
| 709 | + // Email is roster PII; gate it on list_users (permalink self-gates). FF-SEC-45. | |
| 710 | + $responseUser = [ | |
| 711 | + 'name' => $user->display_name, | |
| 712 | + 'ID' => $user->ID, | |
| 713 | + 'permalink' => get_edit_user_link($user->ID), | |
| 714 | + ]; | |
| 715 | + if (current_user_can('list_users')) { | |
| 716 | + $responseUser['email'] = $user->user_email; | |
| 717 | + } | |
| 718 | + | |
| 709 | 719 | return ([ |
| 710 | 720 | 'message' => __('Selected user has been successfully assigned to this submission', 'fluentform'), |
| 711 | - 'user' => [ | |
| 712 | - 'name' => $user->display_name, | |
| 713 | - 'email' => $user->user_email, | |
| 714 | - 'ID' => $user->ID, | |
| 715 | - 'permalink' => get_edit_user_link($user->ID), | |
| 716 | - ], | |
| 721 | + 'user' => $responseUser, | |
| 717 | 722 | 'user_id' => $userId, |
| 718 | 723 | ]); |
| 719 | 724 | } |
| 720 | 725 | |