function _social_private_message_set_private_message_thread_default_view_settings in Open Social 8.8
Same name and namespace in other branches
- 8.9 modules/social_features/social_private_message/social_private_message.install \_social_private_message_set_private_message_thread_default_view_settings()
- 10.3.x modules/social_features/social_private_message/social_private_message.install \_social_private_message_set_private_message_thread_default_view_settings()
- 10.0.x modules/social_features/social_private_message/social_private_message.install \_social_private_message_set_private_message_thread_default_view_settings()
- 10.1.x modules/social_features/social_private_message/social_private_message.install \_social_private_message_set_private_message_thread_default_view_settings()
- 10.2.x modules/social_features/social_private_message/social_private_message.install \_social_private_message_set_private_message_thread_default_view_settings()
Set the OS specific settings for the private message thread default view.
1 call to _social_private_message_set_private_message_thread_default_view_settings()
- social_private_message_install in modules/
social_features/ social_private_message/ social_private_message.install - Implements hook_uninstall().
File
- modules/
social_features/ social_private_message/ social_private_message.install, line 124 - The Social Private Message (de)installation file.
Code
function _social_private_message_set_private_message_thread_default_view_settings() {
/** @var \Drupal\Core\Entity\Display\EntityViewDisplayInterface $pm_view_display */
$pm_view_display = \Drupal::service('entity_type.manager')
->getStorage('entity_view_display')
->load('private_message_thread.private_message_thread.default');
$deleted_field = [
'weight' => -100,
'region' => 'content',
'settings' => [],
'third_party_settings' => [],
];
$members_field = $pm_view_display
->getComponent('members');
$members_field['type'] = 'social_private_message_thread_member_formatter';
$members_field['label'] = 'hidden';
$pm_field = $pm_view_display
->getComponent('private_messages');
$pm_field['label'] = 'hidden';
$pm_field['settings'] = [
'message_count' => 30,
'ajax_previous_load_count' => 5,
'ajax_refresh_rate' => 120,
'message_order' => 'asc',
];
$pm_view_display
->setComponent('deleted_field', $deleted_field)
->setComponent('members', $members_field)
->setComponent('private_messages', $pm_field)
->save();
}