aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--models/user_heatmap.go16
1 files changed, 13 insertions, 3 deletions
diff --git a/models/user_heatmap.go b/models/user_heatmap.go
index 0745a66058..3fdabbbf79 100644
--- a/models/user_heatmap.go
+++ b/models/user_heatmap.go
@@ -32,12 +32,22 @@ func GetUserHeatmapDataByUser(user *User) ([]*UserHeatmapData, error) {
groupByName = groupBy
}
- err := x.Select(groupBy+" AS timestamp, count(user_id) as contributions").
+ sess := x.Select(groupBy+" AS timestamp, count(user_id) as contributions").
Table("action").
Where("user_id = ?", user.ID).
- And("created_unix > ?", (util.TimeStampNow() - 31536000)).
- GroupBy(groupByName).
+ And("created_unix > ?", (util.TimeStampNow() - 31536000))
+
+ // * Heatmaps for individual users only include actions that the user themself
+ // did.
+ // * For organizations actions by all users that were made in owned
+ // repositories are counted.
+ if user.Type == UserTypeIndividual {
+ sess = sess.And("act_user_id = ?", user.ID)
+ }
+
+ err := sess.GroupBy(groupByName).
OrderBy("timestamp").
Find(&hdata)
+
return hdata, err
}