This is aimed as breaking change in 11.0
Open Social has various modules that handle functionality related to user profiles (e.g. social_profile_privacy
and social_profile_fields
). Most of the functionality is optional but has a big impact on the way sites work when they're enabled. This requires modules that extend profile functionality to implement multiple paths depending on what configuration of modules is enabled.
Additioanlly each module implements their own features in a way that does not properly utilise Drupal's access and fields system but instead relies on form and display alter hooks.
Finally because the functionality is split among several modules, configuration forms are either split out over multiple pages or require using form alter hooks, leading to a poor user and developer experience.
Merge the functionality of the social_profile_fields
, social_profile_privacy
and our internal social_registration_fields
module into the social_profile
module.
Create a unified configuration screen that allows a site manager to edit whether a profile field is enabled, who can see it, who can edit it, whether it's required and whether it should be shown on the registration field.
Use Drupal's fields and permission system to handle the different options. For every editable profile field a "visibility" field is added to the profile as well. This is used to store the per-user visibility of their fields (this allows altering database or search queries based on field visibility) (this data was previously stored in users.data).
// TODO: Migrate users.data visibility into visibility fields.
// TODO: Update a user's profile visibility configuration form to use new fields.
// TODO: Merge SocialProfileFieldSettingsForm as "disabled" into form.
// TODO: Replace the need for `SocialProfileFieldsFlushForm` by hooking into search.
// TODO: Add install config for form/display view modes for email, preferred language, nickname and nationality fields.
// TODO: Add update hook for form/display view modes for nickname and nationality based on social_profile_fields_entity_form_display_alter
// TODO: Figure out SocialProfileFieldsHelper and profile_field_export_mapping alter hook.
// TODO: Replace SocialProfileFieldsOverride by configuration.
// TODO: Create schema for the third-party-settings.
// TODO: Rewrite all the profile tests x.x
// TODO: Index visibility info into search as it's needed to filter information.
// TODO: Set default visibility value for created fields.
// TODO: Assign default SM permissions in update hook.
// TODO: Add tooltips to header row of the settings form to explain each column.
// TODO: Check if profile tags "Allow profile tags" is needed because it overlaps with the profile_tags field config.
Active
10.3
Profiles
Not all content is available!
It's likely this issue predates Contrib.social: some issue and comment data are missing.