function social_profile_privacy_private_fields_list in Open Social 10.0.x
Same name and namespace in other branches
- 8.9 modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 8 modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 8.2 modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 8.3 modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 8.4 modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 8.5 modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 8.6 modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 8.7 modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 8.8 modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 10.3.x modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 10.1.x modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
- 10.2.x modules/social_features/social_profile/modules/social_profile_privacy/social_profile_privacy.module \social_profile_privacy_private_fields_list()
Returns fields the names that marked as hidden.
Parameters
int $uid: Identifier of a user.
Return value
array Array with the names of fields that marked as hidden.
1 call to social_profile_privacy_private_fields_list()
- social_profile_privacy_entity_field_access in modules/
social_features/ social_profile/ modules/ social_profile_privacy/ social_profile_privacy.module - Implements hook_entity_field_access().
File
- modules/
social_features/ social_profile/ modules/ social_profile_privacy/ social_profile_privacy.module, line 243 - The Social profile privacy module file.
Code
function social_profile_privacy_private_fields_list($uid) {
$fields =& drupal_static(__FUNCTION__, []);
if (isset($fields[$uid])) {
return $fields[$uid];
}
/** @var \Drupal\Core\Entity\Display\EntityFormDisplayInterface $display */
$display = \Drupal::entityTypeManager()
->getStorage('entity_form_display')
->load('profile.profile.default');
$config = \Drupal::config('social_profile_privacy.settings');
$global_visibility = (array) $config
->get('fields');
$fields[$uid] = [];
/** @var \Drupal\user\UserDataInterface $user_data */
$user_data = \Drupal::service('user.data');
$user_visibility = (array) $user_data
->get('social_profile_privacy', $uid, 'fields');
foreach ($display
->getThirdPartySettings('field_group') as $field_group) {
foreach ($field_group['children'] as $field) {
if (!isset($global_visibility[$field])) {
continue;
}
$visibility = $global_visibility[$field];
if ($visibility === SocialProfilePrivacyHelperInterface::HIDE || $visibility === SocialProfilePrivacyHelperInterface::CONFIGURABLE && isset($user_visibility[$field]) && !$user_visibility[$field]) {
$fields[$uid][] = $field;
}
}
}
return $fields[$uid];
}