Fix emoji replacements, make emoji images consistent (#12567)

- Fix emoji not being replaced in issue title change text
- Make the image attributes consistent, add alt, remove align

Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
silverwind 2020-08-24 03:44:53 +02:00 committed by GitHub
parent 26bf4c51fb
commit ee047312a1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 5 additions and 4 deletions

View File

@ -481,6 +481,7 @@ func createCustomEmoji(alias, class string) *html.Node {
Attr: []html.Attribute{}, Attr: []html.Attribute{},
} }
if class != "" { if class != "" {
img.Attr = append(img.Attr, html.Attribute{Key: "alt", Val: fmt.Sprintf(`:%s:`, alias)})
img.Attr = append(img.Attr, html.Attribute{Key: "src", Val: fmt.Sprintf(`%s/img/emoji/%s.png`, setting.StaticURLPrefix, alias)}) img.Attr = append(img.Attr, html.Attribute{Key: "src", Val: fmt.Sprintf(`%s/img/emoji/%s.png`, setting.StaticURLPrefix, alias)})
} }

View File

@ -255,7 +255,7 @@ func TestRender_emoji(t *testing.T) {
//Text that should be turned into or recognized as emoji //Text that should be turned into or recognized as emoji
test( test(
":gitea:", ":gitea:",
`<p><span class="emoji" aria-label="gitea"><img src="`+setting.StaticURLPrefix+`/img/emoji/gitea.png"/></span></p>`) `<p><span class="emoji" aria-label="gitea"><img alt=":gitea:" src="`+setting.StaticURLPrefix+`/img/emoji/gitea.png"/></span></p>`)
test( test(
"Some text with 😄 in the middle", "Some text with 😄 in the middle",

View File

@ -607,7 +607,7 @@ func ReactionToEmoji(reaction string) template.HTML {
if val != nil { if val != nil {
return template.HTML(val.Emoji) return template.HTML(val.Emoji)
} }
return template.HTML(fmt.Sprintf(`<img src=%s/img/emoji/%s.png></img>`, setting.StaticURLPrefix, reaction)) return template.HTML(fmt.Sprintf(`<img alt=":%s:" src="%s/img/emoji/%s.png"></img>`, reaction, setting.StaticURLPrefix, reaction))
} }
// RenderNote renders the contents of a git-notes file as a commit message. // RenderNote renders the contents of a git-notes file as a commit message.

View File

@ -218,7 +218,7 @@
</a> </a>
<span class="text grey"> <span class="text grey">
<a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a> <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
{{$.i18n.Tr "repo.issues.change_title_at" (.OldTitle|Escape) (.NewTitle|Escape) $createdStr | Safe}} {{$.i18n.Tr "repo.issues.change_title_at" (.OldTitle|RenderEmoji) (.NewTitle|RenderEmoji) $createdStr | Safe}}
</span> </span>
</div> </div>
{{else if eq .Type 11}} {{else if eq .Type 11}}

View File

@ -24,7 +24,7 @@ for (const key of emojiKeys) {
export function emojiHTML(name) { export function emojiHTML(name) {
let inner; let inner;
if (name === 'gitea') { if (name === 'gitea') {
inner = `<img class="emoji" alt=":${name}:" src="${StaticUrlPrefix}/img/emoji/gitea.png" align="absmiddle">`; inner = `<img alt=":${name}:" src="${StaticUrlPrefix}/img/emoji/gitea.png">`;
} else { } else {
inner = emojiString(name); inner = emojiString(name);
} }