Skip to content

Commit 2dc805c

Browse files
authored
Milestone issues and pull requests (#5293)
* add milestone issues and pulls page instead of redirecting issues page * add milestone when creating issue from milestone page * refactor to merge similiar codes as a new function issues * remove milestone info on milestone issues list * fix missing params
1 parent d5d847e commit 2dc805c

File tree

8 files changed

+572
-261
lines changed

8 files changed

+572
-261
lines changed

models/issue.go

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1401,7 +1401,7 @@ type IssueStatsOptions struct {
14011401
AssigneeID int64
14021402
MentionedID int64
14031403
PosterID int64
1404-
IsPull bool
1404+
IsPull util.OptionalBool
14051405
IssueIDs []int64
14061406
}
14071407

@@ -1411,8 +1411,7 @@ func GetIssueStats(opts *IssueStatsOptions) (*IssueStats, error) {
14111411

14121412
countSession := func(opts *IssueStatsOptions) *xorm.Session {
14131413
sess := x.
1414-
Where("issue.repo_id = ?", opts.RepoID).
1415-
And("issue.is_pull = ?", opts.IsPull)
1414+
Where("issue.repo_id = ?", opts.RepoID)
14161415

14171416
if len(opts.IssueIDs) > 0 {
14181417
sess.In("issue.id", opts.IssueIDs)
@@ -1447,6 +1446,13 @@ func GetIssueStats(opts *IssueStatsOptions) (*IssueStats, error) {
14471446
And("issue_user.is_mentioned = ?", true)
14481447
}
14491448

1449+
switch opts.IsPull {
1450+
case util.OptionalBoolTrue:
1451+
sess.And("issue.is_pull=?", true)
1452+
case util.OptionalBoolFalse:
1453+
sess.And("issue.is_pull=?", false)
1454+
}
1455+
14501456
return sess
14511457
}
14521458

models/issue_milestone.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,18 @@ func GetMilestoneByRepoID(repoID, id int64) (*Milestone, error) {
122122
return getMilestoneByRepoID(x, repoID, id)
123123
}
124124

125+
// GetMilestoneByID returns the milestone via id .
126+
func GetMilestoneByID(id int64) (*Milestone, error) {
127+
var m Milestone
128+
has, err := x.ID(id).Get(&m)
129+
if err != nil {
130+
return nil, err
131+
} else if !has {
132+
return nil, ErrMilestoneNotExist{id, 0}
133+
}
134+
return &m, nil
135+
}
136+
125137
// MilestoneList is a list of milestones offering additional functionality
126138
type MilestoneList []*Milestone
127139

options/locale/locale_en-US.ini

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -879,6 +879,7 @@ milestones.no_due_date = No due date
879879
milestones.open = Open
880880
milestones.close = Close
881881
milestones.new_subheader = Milestones organize issues and track progress.
882+
milestones.completeness = %d%% Completed
882883
milestones.create = Create Milestone
883884
milestones.title = Title
884885
milestones.desc = Description

0 commit comments

Comments
 (0)