function social_group_preprocess_field in Open Social 10.2.x
Same name and namespace in other branches
- 8.9 modules/social_features/social_group/social_group.module \social_group_preprocess_field()
- 10.3.x modules/social_features/social_group/social_group.module \social_group_preprocess_field()
- 10.0.x modules/social_features/social_group/social_group.module \social_group_preprocess_field()
- 10.1.x modules/social_features/social_group/social_group.module \social_group_preprocess_field()
Implements hook_preprocess_field().
File
- modules/
social_features/ social_group/ social_group.module, line 2486 - The Social group module.
Code
function social_group_preprocess_field(&$variables) {
$formatter = $variables['element']['#formatter'];
if (in_array($formatter, [
'address_plain',
'address_default',
])) {
$entity = $variables['element']['#object'];
if ($entity && $entity instanceof GroupInterface) {
$social_group_settings = \Drupal::config('social_group.settings');
$address_visibility_settings = $social_group_settings
->get('address_visibility_settings');
if (isset($address_visibility_settings['street_code_private']) && !empty($address_visibility_settings['street_code_private'])) {
if (!$entity
->getMember(\Drupal::currentUser())) {
switch ($formatter) {
case 'address_plain':
if (isset($variables['items'][0]['content']['#address_line1'])) {
$variables['items'][0]['content']['#address_line1'] = NULL;
}
if (isset($variables['items'][0]['content']['#postal_code'])) {
$variables['items'][0]['content']['#postal_code'] = NULL;
}
break;
case 'address_default':
if (isset($variables['items'][0]['content']['address_line1']['#value'])) {
$variables['items'][0]['content']['address_line1']['#value'] = '';
}
if (isset($variables['items'][0]['content']['postal_code']['#value'])) {
$variables['items'][0]['content']['postal_code']['#value'] = '';
}
break;
}
}
}
}
}
}