aboutsummaryrefslogtreecommitdiffstats
path: root/routers/user
diff options
context:
space:
mode:
authorl-jonas <43265000+l-jonas@users.noreply.github.com>2020-06-05 22:01:53 +0200
committerGitHub <noreply@github.com>2020-06-05 16:01:53 -0400
commitaa3c0f8eba9b75b3d4206fbcf3fcfc23929ade2f (patch)
treed504c127ed722a93889f954da2799d11c9f148c3 /routers/user
parentac0741801101d56b6bccd1089ffedf2b3480758b (diff)
downloadgitea-aa3c0f8eba9b75b3d4206fbcf3fcfc23929ade2f.tar.gz
gitea-aa3c0f8eba9b75b3d4206fbcf3fcfc23929ade2f.zip
Add hide activity option (#11353)
* Add hide activity option This closes https://github.com/go-gitea/gitea/issues/7927 * Adjust for linter * Adjust for linter * Add tests * Remove info that admins can view the activity * Adjust new tests for linter * Rename v139.go to v140.go * Rename v140.go to v141.go * properly indent * gofmt Co-authored-by: Jonas Lochmann <git@inkompetenz.org> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Diffstat (limited to 'routers/user')
-rw-r--r--routers/user/home.go4
-rw-r--r--routers/user/profile.go4
-rw-r--r--routers/user/setting/profile.go1
3 files changed, 7 insertions, 2 deletions
diff --git a/routers/user/home.go b/routers/user/home.go
index 2fc0c60aad..4e5fc3e4df 100644
--- a/routers/user/home.go
+++ b/routers/user/home.go
@@ -112,7 +112,9 @@ func Dashboard(ctx *context.Context) {
ctx.Data["PageIsDashboard"] = true
ctx.Data["PageIsNews"] = true
ctx.Data["SearchLimit"] = setting.UI.User.RepoPagingNum
- ctx.Data["EnableHeatmap"] = setting.Service.EnableUserHeatmap
+ // no heatmap access for admins; GetUserHeatmapDataByUser ignores the calling user
+ // so everyone would get the same empty heatmap
+ ctx.Data["EnableHeatmap"] = setting.Service.EnableUserHeatmap && !ctxUser.KeepActivityPrivate
ctx.Data["HeatmapUser"] = ctxUser.Name
var err error
diff --git a/routers/user/profile.go b/routers/user/profile.go
index 215dff0084..82fab4ad87 100644
--- a/routers/user/profile.go
+++ b/routers/user/profile.go
@@ -93,7 +93,9 @@ func Profile(ctx *context.Context) {
ctx.Data["PageIsUserProfile"] = true
ctx.Data["Owner"] = ctxUser
ctx.Data["OpenIDs"] = openIDs
- ctx.Data["EnableHeatmap"] = setting.Service.EnableUserHeatmap
+ // no heatmap access for admins; GetUserHeatmapDataByUser ignores the calling user
+ // so everyone would get the same empty heatmap
+ ctx.Data["EnableHeatmap"] = setting.Service.EnableUserHeatmap && !ctxUser.KeepActivityPrivate
ctx.Data["HeatmapUser"] = ctxUser.Name
showPrivate := ctx.IsSigned && (ctx.User.IsAdmin || ctx.User.ID == ctxUser.ID)
diff --git a/routers/user/setting/profile.go b/routers/user/setting/profile.go
index d6f25f9135..ba9ba2b257 100644
--- a/routers/user/setting/profile.go
+++ b/routers/user/setting/profile.go
@@ -96,6 +96,7 @@ func ProfilePost(ctx *context.Context, form auth.UpdateProfileForm) {
ctx.User.Location = form.Location
ctx.User.Language = form.Language
ctx.User.Description = form.Description
+ ctx.User.KeepActivityPrivate = form.KeepActivityPrivate
if err := models.UpdateUserSetting(ctx.User); err != nil {
if _, ok := err.(models.ErrEmailAlreadyUsed); ok {
ctx.Flash.Error(ctx.Tr("form.email_been_used"))