mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	Clickable links in pull request (and issue) titles (#13695)
* clickable links in pull request (and issue) titles #13658 reuses the existing logic to render clickable links in commit messages * dedicated RenderIssueTitle function applied patch from @mrsdizzie
This commit is contained in:
		@@ -268,6 +268,25 @@ func RenderCommitMessageSubject(
 | 
			
		||||
	return ctx.postProcess(rawHTML)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// RenderIssueTitle to process title on individual issue/pull page
 | 
			
		||||
func RenderIssueTitle(
 | 
			
		||||
	rawHTML []byte,
 | 
			
		||||
	urlPrefix string,
 | 
			
		||||
	metas map[string]string,
 | 
			
		||||
) ([]byte, error) {
 | 
			
		||||
	ctx := &postProcessCtx{
 | 
			
		||||
		metas:     metas,
 | 
			
		||||
		urlPrefix: urlPrefix,
 | 
			
		||||
		procs: []processor{
 | 
			
		||||
			issueIndexPatternProcessor,
 | 
			
		||||
			sha1CurrentPatternProcessor,
 | 
			
		||||
			emojiShortCodeProcessor,
 | 
			
		||||
			emojiProcessor,
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
	return ctx.postProcess(rawHTML)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// RenderDescriptionHTML will use similar logic as PostProcess, but will
 | 
			
		||||
// use a single special linkProcessor.
 | 
			
		||||
func RenderDescriptionHTML(
 | 
			
		||||
 
 | 
			
		||||
@@ -154,6 +154,7 @@ func NewFuncMap() []template.FuncMap {
 | 
			
		||||
		"RenderCommitMessageLink":        RenderCommitMessageLink,
 | 
			
		||||
		"RenderCommitMessageLinkSubject": RenderCommitMessageLinkSubject,
 | 
			
		||||
		"RenderCommitBody":               RenderCommitBody,
 | 
			
		||||
		"RenderIssueTitle":               RenderIssueTitle,
 | 
			
		||||
		"RenderEmoji":                    RenderEmoji,
 | 
			
		||||
		"RenderEmojiPlain":               emoji.ReplaceAliases,
 | 
			
		||||
		"ReactionToEmoji":                ReactionToEmoji,
 | 
			
		||||
@@ -630,6 +631,16 @@ func RenderCommitBody(msg, urlPrefix string, metas map[string]string) template.H
 | 
			
		||||
	return template.HTML(renderedMessage)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// RenderIssueTitle renders issue/pull title with defined post processors
 | 
			
		||||
func RenderIssueTitle(text, urlPrefix string, metas map[string]string) template.HTML {
 | 
			
		||||
	renderedText, err := markup.RenderIssueTitle([]byte(template.HTMLEscapeString(text)), urlPrefix, metas)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		log.Error("RenderIssueTitle: %v", err)
 | 
			
		||||
		return template.HTML("")
 | 
			
		||||
	}
 | 
			
		||||
	return template.HTML(renderedText)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// RenderEmoji renders html text with emoji post processors
 | 
			
		||||
func RenderEmoji(text string) template.HTML {
 | 
			
		||||
	renderedText, err := markup.RenderEmoji([]byte(template.HTMLEscapeString(text)))
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user