mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-29 17:38:17 +00:00
fix approvals limitation (#5521)
This commit is contained in:
parent
58c4559d3b
commit
b1f3685015
2 changed files with 6 additions and 3 deletions
|
@ -99,11 +99,12 @@ func (protectBranch *ProtectedBranch) HasEnoughApprovals(pr *PullRequest) bool {
|
|||
|
||||
// GetGrantedApprovalsCount returns the number of granted approvals for pr. A granted approval must be authored by a user in an approval whitelist.
|
||||
func (protectBranch *ProtectedBranch) GetGrantedApprovalsCount(pr *PullRequest) int64 {
|
||||
reviews, err := GetReviewersByPullID(pr.ID)
|
||||
reviews, err := GetReviewersByPullID(pr.Issue.ID)
|
||||
if err != nil {
|
||||
log.Error(1, "GetUniqueApprovalsByPullRequestID:", err)
|
||||
return 0
|
||||
}
|
||||
|
||||
approvals := int64(0)
|
||||
userIDs := make([]int64, 0)
|
||||
for _, review := range reviews {
|
||||
|
|
|
@ -776,6 +776,7 @@ func ViewIssue(ctx *context.Context) {
|
|||
|
||||
if issue.IsPull {
|
||||
pull := issue.PullRequest
|
||||
pull.Issue = issue
|
||||
canDelete := false
|
||||
|
||||
if ctx.IsSigned {
|
||||
|
@ -833,8 +834,9 @@ func ViewIssue(ctx *context.Context) {
|
|||
return
|
||||
}
|
||||
if pull.ProtectedBranch != nil {
|
||||
ctx.Data["IsBlockedByApprovals"] = !pull.ProtectedBranch.HasEnoughApprovals(pull)
|
||||
ctx.Data["GrantedApprovals"] = pull.ProtectedBranch.GetGrantedApprovalsCount(pull)
|
||||
cnt := pull.ProtectedBranch.GetGrantedApprovalsCount(pull)
|
||||
ctx.Data["IsBlockedByApprovals"] = pull.ProtectedBranch.RequiredApprovals > 0 && cnt < pull.ProtectedBranch.RequiredApprovals
|
||||
ctx.Data["GrantedApprovals"] = cnt
|
||||
}
|
||||
ctx.Data["IsPullBranchDeletable"] = canDelete && pull.HeadRepo != nil && git.IsBranchExist(pull.HeadRepo.RepoPath(), pull.HeadBranch)
|
||||
|
||||
|
|
Loading…
Reference in a new issue