summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLunny Xiao <xiaolunwen@gmail.com>2019-12-28 22:43:46 +0800
committerzeripath <art27@cantab.net>2019-12-28 14:43:46 +0000
commited67bbe4442cc26fc64102c04d6fbea348f52e7c (patch)
tree3fcd6b83162867ae5f206941fd01d138827b8822
parent1ea447aedf50f8340a67ed1705ec145d30385c9d (diff)
downloadgitea-ed67bbe4442cc26fc64102c04d6fbea348f52e7c.tar.gz
gitea-ed67bbe4442cc26fc64102c04d6fbea348f52e7c.zip
Fix repository issues pagination bug when there are more than one label filter (#9512)
-rw-r--r--modules/templates/helper.go8
-rw-r--r--routers/repo/issue.go3
-rw-r--r--templates/repo/issue/list.tmpl2
-rw-r--r--templates/repo/issue/milestone_issues.tmpl4
4 files changed, 13 insertions, 4 deletions
diff --git a/modules/templates/helper.go b/modules/templates/helper.go
index deaa9526be..c3c92f856b 100644
--- a/modules/templates/helper.go
+++ b/modules/templates/helper.go
@@ -269,6 +269,14 @@ func NewFuncMap() []template.FuncMap {
return ""
}
},
+ "contain": func(s []int64, id int64) bool {
+ for i := 0; i < len(s); i++ {
+ if s[i] == id {
+ return true
+ }
+ }
+ return false
+ },
}}
}
diff --git a/routers/repo/issue.go b/routers/repo/issue.go
index 4810eecdc6..67c4ee3788 100644
--- a/routers/repo/issue.go
+++ b/routers/repo/issue.go
@@ -264,7 +264,8 @@ func issues(ctx *context.Context, milestoneID int64, isPullOption util.OptionalB
}
ctx.Data["IssueStats"] = issueStats
- ctx.Data["SelectLabels"] = com.StrTo(selectLabels).MustInt64()
+ ctx.Data["SelLabelIDs"] = labelIDs
+ ctx.Data["SelectLabels"] = selectLabels
ctx.Data["ViewType"] = viewType
ctx.Data["SortType"] = sortType
ctx.Data["MilestoneID"] = milestoneID
diff --git a/templates/repo/issue/list.tmpl b/templates/repo/issue/list.tmpl
index 41f90b1c13..d280878f2e 100644
--- a/templates/repo/issue/list.tmpl
+++ b/templates/repo/issue/list.tmpl
@@ -155,7 +155,7 @@
<div class="menu">
{{range .Labels}}
<div class="item issue-action has-emoji" data-action="toggle" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/labels">
- <span class="octicon {{if eq $.SelectLabels .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}
+ <span class="octicon {{if contain $.SelLabelIDs .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}
</div>
{{end}}
</div>
diff --git a/templates/repo/issue/milestone_issues.tmpl b/templates/repo/issue/milestone_issues.tmpl
index ad3f0b5c86..fb0609601c 100644
--- a/templates/repo/issue/milestone_issues.tmpl
+++ b/templates/repo/issue/milestone_issues.tmpl
@@ -61,7 +61,7 @@
<span class="info">{{.i18n.Tr "repo.issues.filter_label_exclude" | Safe}}</span>
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_label_no_select"}}</a>
{{range .Labels}}
- <a class="item has-emoji label-filter-item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.ID}}&assignee={{$.AssigneeID}}" data-label-id="{{.ID}}"><span class="octicon {{if .IsExcluded}}octicon-circle-slash{{else if eq $.SelectLabels .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}</a>
+ <a class="item has-emoji label-filter-item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.ID}}&assignee={{$.AssigneeID}}" data-label-id="{{.ID}}"><span class="octicon {{if .IsExcluded}}octicon-circle-slash{{else if contain $.SelLabelIDs .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}</a>
{{end}}
</div>
</div>
@@ -149,7 +149,7 @@
<div class="menu">
{{range .Labels}}
<div class="item issue-action has-emoji" data-action="toggle" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/labels">
- <span class="octicon {{if eq $.SelectLabels .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}
+ <span class="octicon {{if contain $.SelLabelIDs .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}
</div>
{{end}}
</div>