From b6cdf39e507a3736b2736a340911eb01d4f170e0 Mon Sep 17 00:00:00 2001 From: chenyifan01 Date: Fri, 10 Dec 2021 10:29:55 +0800 Subject: [PATCH] #882 add owner to reviewer list --- models/repo.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/models/repo.go b/models/repo.go index fda5460f5..f82c3c6cf 100755 --- a/models/repo.go +++ b/models/repo.go @@ -653,8 +653,9 @@ func (repo *Repository) getReviewersPrivate(e Engine, doerID, posterID int64) (u users = make([]*User, 0, 20) if err = e. - SQL("SELECT * FROM `user` WHERE id in (SELECT user_id FROM `access` WHERE repo_id = ? AND mode >= ? AND user_id NOT IN ( ?, ?)) ORDER BY name", - repo.ID, AccessModeRead, + SQL("SELECT * FROM `user` WHERE id in (SELECT user_id FROM `access` WHERE repo_id = ? AND mode >= ? "+ + " UNION SELECT owner_id FROM `repository` WHERE id = ?) AND id NOT IN ( ?, ?) ORDER BY name", + repo.ID, AccessModeWrite, repo.ID, doerID, posterID). Find(&users); err != nil { return nil, err @@ -668,11 +669,14 @@ func (repo *Repository) getReviewersPublic(e Engine, doerID, posterID int64) (_ users := make([]*User, 0) const SQLCmd = "SELECT * FROM `user` WHERE id IN ( " + - "SELECT user_id FROM `access` WHERE repo_id = ? AND mode >= ? AND user_id NOT IN ( ?, ?) ) ORDER BY name " + "SELECT user_id FROM `access` WHERE repo_id = ? AND mode >= ? " + + " UNION" + + " SELECT owner_id FROM `repository` WHERE id = ?)" + + " AND id NOT IN ( ?, ?) ORDER BY name " if err = e. SQL(SQLCmd, - repo.ID, AccessModeWrite, doerID, posterID). + repo.ID, AccessModeWrite, repo.ID, doerID, posterID). Find(&users); err != nil { return nil, err }