{{if eq .LastStatus 1}}
{{svg "octicon-check"}}
{{else if eq .LastStatus 2}}
@@ -49,8 +49,8 @@
{{else}}
{{svg "octicon-dot-fill"}}
{{end}}
-
{{.URL}}
-
+
{{.URL}}
+
diff --git a/templates/user/auth/forgot_passwd.tmpl b/templates/user/auth/forgot_passwd.tmpl
index 241deeed4a79..2ff7acb97de4 100644
--- a/templates/user/auth/forgot_passwd.tmpl
+++ b/templates/user/auth/forgot_passwd.tmpl
@@ -22,7 +22,13 @@
{{else if .IsResetDisable}}
-
{{.i18n.Tr "auth.disable_forgot_password_mail"}}
+
+ {{if $.IsAdmin}}
+ {{.i18n.Tr "auth.disable_forgot_password_mail_admin"}}
+ {{else}}
+ {{.i18n.Tr "auth.disable_forgot_password_mail"}}
+ {{end}}
+
{{else if .ResendLimited}}
{{.i18n.Tr "auth.resent_limit_prompt"}}
{{end}}
diff --git a/tools/fuzz.go b/tools/fuzz.go
index 4b5b72d1d0d5..b48ae0add944 100644
--- a/tools/fuzz.go
+++ b/tools/fuzz.go
@@ -23,7 +23,7 @@ import (
var (
renderContext = markup.RenderContext{
- URLPrefix: "https://example.com",
+ URLPrefix: "https://example.com/go-gitea/gitea",
Metas: map[string]string{
"user": "go-gitea",
"repo": "gitea",
diff --git a/web_src/js/features/heatmap.js b/web_src/js/features/heatmap.js
index d1cb43dde0ed..07ecaee46167 100644
--- a/web_src/js/features/heatmap.js
+++ b/web_src/js/features/heatmap.js
@@ -7,8 +7,15 @@ export default async function initHeatmap() {
if (!el) return;
try {
- const values = JSON.parse(el.dataset.heatmapData).map(({contributions, timestamp}) => {
- return {date: new Date(timestamp * 1000), count: contributions};
+ const heatmap = {};
+ JSON.parse(el.dataset.heatmapData).forEach(({contributions, timestamp}) => {
+ // Convert to user timezone and sum contributions by date
+ const dateStr = new Date(timestamp * 1000).toDateString();
+ heatmap[dateStr] = (heatmap[dateStr] || 0) + contributions;
+ });
+
+ const values = Object.keys(heatmap).map((v) => {
+ return {date: new Date(v), count: heatmap[v]};
});
const View = Vue.extend({