diff --git a/modules/templates/helper.go b/modules/templates/helper.go index 532fc7989ec..0997239a55a 100644 --- a/modules/templates/helper.go +++ b/modules/templates/helper.go @@ -165,7 +165,6 @@ func NewFuncMap() template.FuncMap { "RenderMarkdownToHtml": RenderMarkdownToHtml, "RenderLabel": RenderLabel, "RenderLabels": RenderLabels, - "RenderDependencies": RenderDependencies, // ----------------------------------------------------------------- // misc diff --git a/modules/templates/util_render.go b/modules/templates/util_render.go index 37feb800110..cdff31698ca 100644 --- a/modules/templates/util_render.go +++ b/modules/templates/util_render.go @@ -224,25 +224,3 @@ func RenderLabels(ctx context.Context, labels []*issues_model.Label, repoLink st htmlCode += "" return template.HTML(htmlCode) } - -func RenderDependencies(ctx context.Context, dependencies []*issues_model.DependencyInfo) template.HTML { - if len(dependencies) == 0 { - return "" - } - - htmlCode := "" - - for index, dependency := range dependencies { - if index != 0 { - htmlCode += `,` - } - anchorClasses := "gt-ml-2" - if dependency.Issue.IsClosed { - anchorClasses += " term-fg9" - } - htmlCode += fmt.Sprintf(`#%d`, - dependency.Issue.Link(), dependency.Issue.Index, RenderEmoji(ctx, dependency.Issue.Title), anchorClasses, dependency.Issue.Index) - } - - return template.HTML(htmlCode + "") -} diff --git a/routers/web/repo/issue.go b/routers/web/repo/issue.go index 9c6eaa9f8cf..d3f49425632 100644 --- a/routers/web/repo/issue.go +++ b/routers/web/repo/issue.go @@ -141,6 +141,28 @@ func MustAllowPulls(ctx *context.Context) { } } +func dependenciesToHTML(ctx *context.Context, dependencies []*issues_model.DependencyInfo) template.HTML { + if len(dependencies) == 0 { + return "" + } + + htmlCode := "" + + for index, dependency := range dependencies { + if index != 0 { + htmlCode += `,` + } + anchorClasses := "gt-ml-2" + if dependency.Issue.IsClosed { + anchorClasses += " gt-line-through" + } + htmlCode += fmt.Sprintf(`#%d`, + dependency.Issue.Link(), dependency.Issue.Index, templates.RenderEmoji(ctx, dependency.Issue.Title), anchorClasses, dependency.Issue.Index) + } + + return template.HTML(htmlCode + "") +} + func issues(ctx *context.Context, milestoneID, projectID int64, isPullOption optional.Option[bool]) { var err error viewType := ctx.FormString("type") @@ -324,8 +346,8 @@ func issues(ctx *context.Context, milestoneID, projectID int64, isPullOption opt return } - blockingDependenciesMap := make(map[int64][]*issues_model.DependencyInfo, len(issues)) - blockedByDependenciesMap := make(map[int64][]*issues_model.DependencyInfo, len(issues)) + blockingDependenciesMap := make(map[int64]template.HTML, len(issues)) + blockedByDependenciesMap := make(map[int64]template.HTML, len(issues)) // Get posters. for i := range issues { // Check read status @@ -341,7 +363,7 @@ func issues(ctx *context.Context, milestoneID, projectID int64, isPullOption opt return } slices.Reverse(blockingDependencies) - blockingDependenciesMap[issues[i].ID] = blockingDependencies + blockingDependenciesMap[issues[i].ID] = dependenciesToHTML(ctx, blockingDependencies) blockedByDependencies, err := issues[i].BlockedByDependencies(ctx, db.ListOptions{}) if err != nil { @@ -349,7 +371,7 @@ func issues(ctx *context.Context, milestoneID, projectID int64, isPullOption opt return } slices.Reverse(blockedByDependencies) - blockedByDependenciesMap[issues[i].ID] = blockedByDependencies + blockedByDependenciesMap[issues[i].ID] = dependenciesToHTML(ctx, blockedByDependencies) } ctx.Data["BlockingDependenciesMap"] = blockingDependenciesMap ctx.Data["BlockedByDependenciesMap"] = blockedByDependenciesMap diff --git a/templates/shared/issue_dependency.tmpl b/templates/shared/issue_dependency.tmpl index e97e8550849..0587b9bcb10 100644 --- a/templates/shared/issue_dependency.tmpl +++ b/templates/shared/issue_dependency.tmpl @@ -1,5 +1,5 @@ {{if .Dependencies}}