diff options
author | David Schneiderbauer <daviian@users.noreply.github.com> | 2017-09-16 02:18:25 +0200 |
---|---|---|
committer | Lunny Xiao <xiaolunwen@gmail.com> | 2017-09-16 08:18:25 +0800 |
commit | d766d0c4e064bf7f66098123f39d15c2dc67e415 (patch) | |
tree | 274eebecadd724502dd5c82e95f2f6f4cc4d6d34 /models/repo_watch.go | |
parent | b496e3e1cc70829e5a6f78f3dff28277993f8406 (diff) | |
download | gitea-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.go | 6 |
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. |