Allow to disable the user activity calendar
Description
In certain situations, when user privacy is of concern, showing the user activity calendar can be problematic. Also some people might feel uncomfortable in a team when others may judge them by the statistics shown in the calendar. To respect users that do not want others to see their activity in such a detailed graphic way - and to comply with privacy laws, that might prohibit distribution of these information, a setting to disable this view on user profiles would be great.
Proposal
Allow the user activity view to be disabled individually by the user (nobody else can see that user's activity calendar view).
Links / references
Relevant template locations might involve https://gitlab.com/gitlab-org/gitlab-ce/blob/master/app/views/users/show.html.haml#L104-108
Documentation blurb
Overview
What is it?
Simple setting to disable the display of the user activity calendar view on user profile pages.
Why should someone use this feature?
- Regulatory reasons (privacy laws)
- Comforting users (team climate to lessen "pressure")
What is the underlying (business) problem?
Some users in the team don't want this information displayed.
How do you use this feature?
Rarely if at all.
Use cases
This feature could be used to comply to privacy regulations prohibiting display timescale statistics of people's behavior and inside teams to reduce felt "competitive pressure".
Feature checklist
Make sure these are completed before closing the issue, with a link to the relevant commit.
-
Feature assurance -
Documentation -
Added to features.yml
Design
- Move setting for private profile to "profile" in personal settings (similar to https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/17296 )
- Settings for private profile should hide:
- All tabs and content inside of thos tabs (For a first iteration we should just hide everything, we can later iterate to let the user choose what to hide for example)
- Show empty state that conveys that the user has decided to not show his/her activity publicly.
- Private profile is only visible to people other than the profile owner (this way you can still make use of it yourself)
Settings:
Prevent public access to any activity content on the user profile
Choose to hide activity content on the user profile including Activity, Groups, Contributed projects, Personal projects, and Snippets.
We might want to see if both this as well as https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/17296 ship in 11.2 as to what kind of an effect they should have on each other and if it needs some style/structure changes.
Empty state:
-
username, social links, and bio would still be shown if added in the profile settings and are not affected.
-
Headline:
This user has a private profile
-
Description:
Only the owner has access to this profile’s activity content, including Activity, Groups, Contributed projects, Personal projects, and Snippets.
-
Graphic:
profile_private_mode
in gitlab-svgs