aboutsummaryrefslogtreecommitdiffstats
path: root/models/repo_watch.go
diff options
context:
space:
mode:
authorDavid Schneiderbauer <daviian@users.noreply.github.com>2017-09-16 02:18:25 +0200
committerLunny Xiao <xiaolunwen@gmail.com>2017-09-16 08:18:25 +0800
commitd766d0c4e064bf7f66098123f39d15c2dc67e415 (patch)
tree274eebecadd724502dd5c82e95f2f6f4cc4d6d34 /models/repo_watch.go
parentb496e3e1cc70829e5a6f78f3dff28277993f8406 (diff)
downloadgitea-d766d0c4e064bf7f66098123f39d15c2dc67e415.tar.gz
gitea-d766d0c4e064bf7f66098123f39d15c2dc67e415.zip
Prevent sending emails and notifications to inactive users (#2384)
* Filter inactive users before sending emails or creating browser notifications Signed-off-by: David Schneiderbauer <dschneiderbauer@gmail.com> * fix formatting issues Signed-off-by: David Schneiderbauer <dschneiderbauer@gmail.com> * included requested changes Signed-off-by: David Schneiderbauer <dschneiderbauer@gmail.com> * optimized database queries * rebasing new master and add tablenames for clarification in xorm queries * remove escaped quotationmarks using backticks Signed-off-by: David Schneiderbauer <dschneiderbauer@gmail.com>
Diffstat (limited to 'models/repo_watch.go')
-rw-r--r--models/repo_watch.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/models/repo_watch.go b/models/repo_watch.go
index c3baab9d2f..cf9dba900a 100644
--- a/models/repo_watch.go
+++ b/models/repo_watch.go
@@ -51,7 +51,11 @@ func WatchRepo(userID, repoID int64, watch bool) (err error) {
func getWatchers(e Engine, repoID int64) ([]*Watch, error) {
watches := make([]*Watch, 0, 10)
- return watches, e.Find(&watches, &Watch{RepoID: repoID})
+ return watches, e.Where("`watch`.repo_id=?", repoID).
+ And("`user`.is_active=?", true).
+ And("`user`.prohibit_login=?", false).
+ Join("INNER", "user", "`user`.id = `watch`.user_id").
+ Find(&watches)
}
// GetWatchers returns all watchers of given repository.