| @@ -653,8 +653,9 @@ func (repo *Repository) getReviewersPrivate(e Engine, doerID, posterID int64) (u | |||||
| users = make([]*User, 0, 20) | users = make([]*User, 0, 20) | ||||
| if err = e. | 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). | doerID, posterID). | ||||
| Find(&users); err != nil { | Find(&users); err != nil { | ||||
| return nil, err | return nil, err | ||||
| @@ -668,11 +669,14 @@ func (repo *Repository) getReviewersPublic(e Engine, doerID, posterID int64) (_ | |||||
| users := make([]*User, 0) | users := make([]*User, 0) | ||||
| const SQLCmd = "SELECT * FROM `user` WHERE id IN ( " + | 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. | if err = e. | ||||
| SQL(SQLCmd, | SQL(SQLCmd, | ||||
| repo.ID, AccessModeWrite, doerID, posterID). | |||||
| repo.ID, AccessModeWrite, repo.ID, doerID, posterID). | |||||
| Find(&users); err != nil { | Find(&users); err != nil { | ||||
| return nil, err | return nil, err | ||||
| } | } | ||||