Remove useless JS operation for relative time tooltips (#20756)
This operation that shifts the content from title to data-content is useless when we can directly render the expected HTML instead. This change does prevent these tooltips from working when the user has JS disabled in their browser, but I think we made it clear by now that JS is required for gitea to work properly. Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
parent
74515d3d17
commit
20b3a90450
4 changed files with 4 additions and 12 deletions
|
@ -64,7 +64,7 @@ func testViewRepo(t *testing.T) {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
f.commitTime, _ = s.Find("span.time-since").Attr("title")
|
f.commitTime, _ = s.Find("span.time-since").Attr("data-content")
|
||||||
items = append(items, f)
|
items = append(items, f)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -234,7 +234,7 @@ func TimeSince(then time.Time, lang translation.Locale) template.HTML {
|
||||||
}
|
}
|
||||||
|
|
||||||
func htmlTimeSince(then, now time.Time, lang translation.Locale) template.HTML {
|
func htmlTimeSince(then, now time.Time, lang translation.Locale) template.HTML {
|
||||||
return template.HTML(fmt.Sprintf(`<span class="time-since" title="%s">%s</span>`,
|
return template.HTML(fmt.Sprintf(`<span class="time-since tooltip" data-content="%s">%s</span>`,
|
||||||
then.In(setting.DefaultUILocation).Format(GetTimeFormat(lang.Language())),
|
then.In(setting.DefaultUILocation).Format(GetTimeFormat(lang.Language())),
|
||||||
timeSince(then, now, lang)))
|
timeSince(then, now, lang)))
|
||||||
}
|
}
|
||||||
|
@ -245,7 +245,7 @@ func TimeSinceUnix(then TimeStamp, lang translation.Locale) template.HTML {
|
||||||
}
|
}
|
||||||
|
|
||||||
func htmlTimeSinceUnix(then, now TimeStamp, lang translation.Locale) template.HTML {
|
func htmlTimeSinceUnix(then, now TimeStamp, lang translation.Locale) template.HTML {
|
||||||
return template.HTML(fmt.Sprintf(`<span class="time-since" title="%s">%s</span>`,
|
return template.HTML(fmt.Sprintf(`<span class="time-since tooltip" data-content="%s">%s</span>`,
|
||||||
then.FormatInLocation(GetTimeFormat(lang.Language()), setting.DefaultUILocation),
|
then.FormatInLocation(GetTimeFormat(lang.Language()), setting.DefaultUILocation),
|
||||||
timeSinceUnix(int64(then), int64(now), lang)))
|
timeSinceUnix(int64(then), int64(now), lang)))
|
||||||
}
|
}
|
||||||
|
|
|
@ -119,7 +119,7 @@ func TestHtmlTimeSince(t *testing.T) {
|
||||||
// test that `diff` yields a result containing `expected`
|
// test that `diff` yields a result containing `expected`
|
||||||
test := func(expected string, diff time.Duration) {
|
test := func(expected string, diff time.Duration) {
|
||||||
actual := htmlTimeSince(BaseDate, BaseDate.Add(diff), translation.NewLocale("en-US"))
|
actual := htmlTimeSince(BaseDate, BaseDate.Add(diff), translation.NewLocale("en-US"))
|
||||||
assert.Contains(t, actual, `title="Sat Jan 1 00:00:00 UTC 2000"`)
|
assert.Contains(t, actual, `data-content="Sat Jan 1 00:00:00 UTC 2000"`)
|
||||||
assert.Contains(t, actual, expected)
|
assert.Contains(t, actual, expected)
|
||||||
}
|
}
|
||||||
test("1 second", time.Second)
|
test("1 second", time.Second)
|
||||||
|
|
|
@ -70,14 +70,6 @@ export function initGlobalTooltips() {
|
||||||
}
|
}
|
||||||
|
|
||||||
export function initGlobalCommon() {
|
export function initGlobalCommon() {
|
||||||
// Show exact time
|
|
||||||
$('.time-since').each(function () {
|
|
||||||
$(this)
|
|
||||||
.addClass('tooltip')
|
|
||||||
.attr('data-content', $(this).attr('title'))
|
|
||||||
.attr('title', '');
|
|
||||||
});
|
|
||||||
|
|
||||||
// Undo Safari emoji glitch fix at high enough zoom levels
|
// Undo Safari emoji glitch fix at high enough zoom levels
|
||||||
if (navigator.userAgent.match('Safari')) {
|
if (navigator.userAgent.match('Safari')) {
|
||||||
$(window).resize(() => {
|
$(window).resize(() => {
|
||||||
|
|
Loading…
Reference in a new issue