Fixed repo link in generated comment for cross repository dependency (#9863)

* fixed link to issue in issue comments after adding/removing a dependency, before links assumed the issue was in the same repository. also changed the format of the displayed issue since the issue will not necessarily be in the same repo

* based on pr comments, changed to use HTMLURL instead of piecing together the issue url, and added an if statement around the issue link display as a nil protection

* only showing repo name in dependency comment if the issue is from another repo

Co-authored-by: Antoine GIRARD <sapk@users.noreply.github.com>
This commit is contained in:
Brad Albright 2020-01-21 04:18:52 -06:00 committed by zeripath
parent 5cf241b312
commit 2f7a747e4f
2 changed files with 33 additions and 8 deletions

View File

@ -376,6 +376,11 @@ func (comments CommentList) loadDependentIssues(e Engine) error {
for _, comment := range comments { for _, comment := range comments {
if comment.DependentIssue == nil { if comment.DependentIssue == nil {
comment.DependentIssue = issues[comment.DependentIssueID] comment.DependentIssue = issues[comment.DependentIssueID]
if comment.DependentIssue != nil {
if err := comment.DependentIssue.loadRepo(e); err != nil {
return err
}
}
} }
} }
return nil return nil

View File

@ -277,10 +277,20 @@
<span class="text grey"> <span class="text grey">
{{$.i18n.Tr "repo.issues.dependency.added_dependency" .Poster.HomeLink (.Poster.GetDisplayName|Escape) $createdStr | Safe}} {{$.i18n.Tr "repo.issues.dependency.added_dependency" .Poster.HomeLink (.Poster.GetDisplayName|Escape) $createdStr | Safe}}
</span> </span>
<div class="detail"> {{if .DependentIssue}}
<span class="octicon octicon-plus"></span> <div class="detail">
<span class="text grey"><a href="{{$.RepoLink}}/issues/{{.DependentIssue.Index}}">#{{.DependentIssue.Index}} {{.DependentIssue.Title}}</a></span> <span class="octicon octicon-plus"></span>
</div> <span class="text grey">
<a href="{{.DependentIssue.HTMLURL}}">
{{if eq .DependentIssue.RepoID .Issue.RepoID}}
#{{.DependentIssue.Index}} {{.DependentIssue.Title}}
{{else}}
{{.DependentIssue.Repo.FullName}}#{{.DependentIssue.Index}} - {{.DependentIssue.Title}}
{{end}}
</a>
</span>
</div>
{{end}}
</div> </div>
{{else if eq .Type 20}} {{else if eq .Type 20}}
<div class="event" id="{{.HashTag}}"> <div class="event" id="{{.HashTag}}">
@ -291,10 +301,20 @@
<span class="text grey"> <span class="text grey">
{{$.i18n.Tr "repo.issues.dependency.removed_dependency" .Poster.HomeLink (.Poster.GetDisplayName|Escape) $createdStr | Safe}} {{$.i18n.Tr "repo.issues.dependency.removed_dependency" .Poster.HomeLink (.Poster.GetDisplayName|Escape) $createdStr | Safe}}
</span> </span>
<div class="detail"> {{if .DependentIssue}}
<span class="text grey octicon octicon-trashcan"></span> <div class="detail">
<span class="text grey"><a href="{{$.RepoLink}}/issues/{{.DependentIssue.Index}}">#{{.DependentIssue.Index}} {{.DependentIssue.Title}}</a></span> <span class="text grey octicon octicon-trashcan"></span>
</div> <span class="text grey">
<a href="{{.DependentIssue.HTMLURL}}">
{{if eq .DependentIssue.RepoID .Issue.RepoID}}
#{{.DependentIssue.Index}} {{.DependentIssue.Title}}
{{else}}
{{.DependentIssue.Repo.FullName}}#{{.DependentIssue.Index}} - {{.DependentIssue.Title}}
{{end}}
</a>
</span>
</div>
{{end}}
</div> </div>
{{else if eq .Type 22}} {{else if eq .Type 22}}
<div class="event" id="{{.HashTag}}"> <div class="event" id="{{.HashTag}}">