diff options
Diffstat (limited to '')
-rw-r--r-- | templates/mail/auth/2fa_disabled.tmpl | 15 | ||||
-rw-r--r-- | templates/mail/auth/activate.tmpl | 16 | ||||
-rw-r--r-- | templates/mail/auth/activate_email.tmpl | 16 | ||||
-rw-r--r-- | templates/mail/auth/password_change.tmpl | 16 | ||||
-rw-r--r-- | templates/mail/auth/primary_mail_change.tmpl | 14 | ||||
-rw-r--r-- | templates/mail/auth/register_notify.tmpl | 17 | ||||
-rw-r--r-- | templates/mail/auth/removed_security_key.tmpl | 15 | ||||
-rw-r--r-- | templates/mail/auth/reset_passwd.tmpl | 16 | ||||
-rw-r--r-- | templates/mail/auth/totp_enrolled.tmpl | 15 | ||||
-rw-r--r-- | templates/mail/common/footer_simple.tmpl | 1 | ||||
-rw-r--r-- | templates/mail/issue/assigned.tmpl | 28 | ||||
-rw-r--r-- | templates/mail/issue/default.tmpl | 90 | ||||
-rw-r--r-- | templates/mail/notify/admin_new_user.tmpl | 20 | ||||
-rw-r--r-- | templates/mail/notify/collaborator.tmpl | 20 | ||||
-rw-r--r-- | templates/mail/notify/repo_transfer.tmpl | 18 | ||||
-rw-r--r-- | templates/mail/release.tmpl | 60 | ||||
-rw-r--r-- | templates/mail/team_invite.tmpl | 15 |
17 files changed, 392 insertions, 0 deletions
diff --git a/templates/mail/auth/2fa_disabled.tmpl b/templates/mail/auth/2fa_disabled.tmpl new file mode 100644 index 0000000..3f9d379 --- /dev/null +++ b/templates/mail/auth/2fa_disabled.tmpl @@ -0,0 +1,15 @@ +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> + +<body> + <p>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}</p><br> + <p>{{.locale.Tr "mail.totp_disabled.text_1"}}</p><br> + {{if not .HasWebAuthn}}<p>{{.locale.Tr "mail.totp_disabled.no_2fa"}}</p><br>{{end}} + <p>{{.locale.Tr "mail.account_security_caution.text_1"}}</p><br> + <p>{{.locale.Tr "mail.account_security_caution.text_2"}}</p><br> + + {{template "common/footer_simple" .}} +</body> +</html> diff --git a/templates/mail/auth/activate.tmpl b/templates/mail/auth/activate.tmpl new file mode 100644 index 0000000..eb7ea5a --- /dev/null +++ b/templates/mail/auth/activate.tmpl @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> + +{{$activate_url := printf "%suser/activate?code=%s" AppUrl (QueryEscape .Code)}} +<body> + <p>{{.locale.Tr "mail.activate_account.text_1" (.DisplayName|DotEscape) AppName}}</p><br> + <p>{{.locale.Tr "mail.activate_account.text_2" .ActiveCodeLives}}</p><p><a href="{{$activate_url}}">{{$activate_url}}</a></p><br> + <p>{{.locale.Tr "mail.link_not_working_do_paste"}}</p> + + <p>© <a target="_blank" rel="noopener noreferrer" href="{{AppUrl}}">{{AppName}}</a></p> +</body> +</html> diff --git a/templates/mail/auth/activate_email.tmpl b/templates/mail/auth/activate_email.tmpl new file mode 100644 index 0000000..9ca54d3 --- /dev/null +++ b/templates/mail/auth/activate_email.tmpl @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta Name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> + +{{$activate_url := printf "%suser/activate_email?code=%s&email=%s" AppUrl (QueryEscape .Code) (QueryEscape .Email)}} +<body> + <p>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}</p><br> + <p>{{.locale.Tr "mail.activate_email.text" .ActiveCodeLives}}</p><p><a href="{{$activate_url}}">{{$activate_url}}</a></p><br> + <p>{{.locale.Tr "mail.link_not_working_do_paste"}}</p> + + <p>© <a target="_blank" rel="noopener noreferrer" href="{{AppUrl}}">{{AppName}}</a></p> +</body> +</html> diff --git a/templates/mail/auth/password_change.tmpl b/templates/mail/auth/password_change.tmpl new file mode 100644 index 0000000..4366b8d --- /dev/null +++ b/templates/mail/auth/password_change.tmpl @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> + +<body> + <p>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}</p><br> + <p>{{.locale.Tr "mail.password_change.text_1"}}</p><br> + <p>{{.locale.Tr "mail.account_security_caution.text_1"}}</p><br> + <p>{{.locale.Tr "mail.account_security_caution.text_2"}}</p><br> + + {{template "common/footer_simple" .}} +</body> +</html> diff --git a/templates/mail/auth/primary_mail_change.tmpl b/templates/mail/auth/primary_mail_change.tmpl new file mode 100644 index 0000000..d17be19 --- /dev/null +++ b/templates/mail/auth/primary_mail_change.tmpl @@ -0,0 +1,14 @@ +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> + +<body> + <p>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}</p><br> + <p>{{.locale.Tr "mail.primary_mail_change.text_1" .NewPrimaryMail}}</p><br> + <p>{{.locale.Tr "mail.account_security_caution.text_1"}}</p><br> + <p>{{.locale.Tr "mail.account_security_caution.text_2"}}</p><br> + + {{template "common/footer_simple" .}} +</body> +</html> diff --git a/templates/mail/auth/register_notify.tmpl b/templates/mail/auth/register_notify.tmpl new file mode 100644 index 0000000..d3a668b --- /dev/null +++ b/templates/mail/auth/register_notify.tmpl @@ -0,0 +1,17 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> + +{{$set_pwd_url := printf "%[1]suser/forgot_password" AppUrl}} +<body> + <p>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}</p><br> + <p>{{.locale.Tr "mail.register_notify.text_1" AppName}}</p><br> + <p>{{.locale.Tr "mail.register_notify.text_2" .Username}}</p><p><a href="{{AppUrl}}user/login">{{AppUrl}}user/login</a></p><br> + <p>{{.locale.Tr "mail.register_notify.text_3" $set_pwd_url}}</p><br> + + <p>© <a target="_blank" rel="noopener noreferrer" href="{{AppUrl}}">{{AppName}}</a></p> +</body> +</html> diff --git a/templates/mail/auth/removed_security_key.tmpl b/templates/mail/auth/removed_security_key.tmpl new file mode 100644 index 0000000..18ae187 --- /dev/null +++ b/templates/mail/auth/removed_security_key.tmpl @@ -0,0 +1,15 @@ +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> + +<body> + <p>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}</p><br> + <p>{{.locale.Tr "mail.removed_security_key.text_1" .SecurityKeyName}}</p><br> + {{if and (not .HasWebAuthn) (not .HasTOTP)}}<p>{{.locale.Tr "mail.removed_security_key.no_2fa"}}</p><br>{{end}} + <p>{{.locale.Tr "mail.account_security_caution.text_1"}}</p><br> + <p>{{.locale.Tr "mail.account_security_caution.text_2"}}</p><br> + + {{template "common/footer_simple" .}} +</body> +</html> diff --git a/templates/mail/auth/reset_passwd.tmpl b/templates/mail/auth/reset_passwd.tmpl new file mode 100644 index 0000000..b85b770 --- /dev/null +++ b/templates/mail/auth/reset_passwd.tmpl @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> + +{{$recover_url := printf "%suser/recover_account?code=%s" AppUrl (QueryEscape .Code)}} +<body> + <p>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}</p><br> + <p>{{.locale.Tr "mail.reset_password.text" .ResetPwdCodeLives}}</p><p><a href="{{$recover_url}}">{{$recover_url}}</a></p><br> + <p>{{.locale.Tr "mail.link_not_working_do_paste"}}</p> + + <p>© <a target="_blank" rel="noopener noreferrer" href="{{AppUrl}}">{{AppName}}</a></p> +</body> +</html> diff --git a/templates/mail/auth/totp_enrolled.tmpl b/templates/mail/auth/totp_enrolled.tmpl new file mode 100644 index 0000000..9c665e0 --- /dev/null +++ b/templates/mail/auth/totp_enrolled.tmpl @@ -0,0 +1,15 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> + +<body> + <p>{{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}</p><br> + {{if .HasWebAuthn}}<p>{{.locale.Tr "mail.totp_enrolled.text_1.has_webauthn"}}</p>{{else}}<p>{{.locale.Tr "mail.totp_enrolled.text_1.no_webauthn"}}</p>{{end}}<br> + <p>{{.locale.Tr "mail.account_security_caution.text_1"}}</p><br> + <p>{{.locale.Tr "mail.account_security_caution.text_2"}}</p><br> + {{template "common/footer_simple" .}} +</body> +</html> diff --git a/templates/mail/common/footer_simple.tmpl b/templates/mail/common/footer_simple.tmpl new file mode 100644 index 0000000..baec3e5 --- /dev/null +++ b/templates/mail/common/footer_simple.tmpl @@ -0,0 +1 @@ +<p><a target="_blank" rel="noopener noreferrer" href="{{AppUrl}}">{{AppName}}</a></p> diff --git a/templates/mail/issue/assigned.tmpl b/templates/mail/issue/assigned.tmpl new file mode 100644 index 0000000..f8ad62a --- /dev/null +++ b/templates/mail/issue/assigned.tmpl @@ -0,0 +1,28 @@ +<!DOCTYPE html> +<html> +<head> + <style> + .footer { font-size:small; color:#666;} + </style> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +</head> + +{{$repo_url := HTMLFormat "<a href='%s'>%s</a>" .Issue.Repo.HTMLURL .Issue.Repo.FullName}} +{{$link := HTMLFormat "<a href='%s'>#%d</a>" .Link .Issue.Index}} +<body> + <p> + {{if .IsPull}} + {{.locale.Tr "mail.issue_assigned.pull" .Doer.Name $link $repo_url}} + {{else}} + {{.locale.Tr "mail.issue_assigned.issue" .Doer.Name $link $repo_url}} + {{end}} + </p> + <div class="footer"> + <p> + --- + <br> + <a href="{{.Link}}">{{.locale.Tr "mail.view_it_on" AppName}}</a>. + </p> + </div> +</body> +</html> diff --git a/templates/mail/issue/default.tmpl b/templates/mail/issue/default.tmpl new file mode 100644 index 0000000..a94a10e --- /dev/null +++ b/templates/mail/issue/default.tmpl @@ -0,0 +1,90 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + + <style> + blockquote { padding-left: 1em; margin: 1em 0; border-left: 1px solid grey; color: #777} + .footer { font-size:small; color:#666;} + {{if .ReviewComments}} + .review { padding-left: 1em; margin: 1em 0; } + .review > pre { padding: 1em; border-left: 1px solid grey; } + {{end}} + </style> + +</head> + +<body> + {{if .IsMention}}<p>{{.locale.Tr "mail.issue.x_mentioned_you" .Doer.Name}}</p>{{end}} + {{if eq .ActionName "push"}} + <p> + {{if .Comment.IsForcePush}} + {{$oldCommitUrl := printf "%s/commit/%s" .Comment.Issue.PullRequest.BaseRepo.HTMLURL .Comment.OldCommit}} + {{$oldShortSha := ShortSha .Comment.OldCommit}} + {{$oldCommitLink := HTMLFormat "<a href='%[1]s'><b>%[2]s</b></a>" $oldCommitUrl $oldShortSha}} + + {{$newCommitUrl := printf "%s/commit/%s" .Comment.Issue.PullRequest.BaseRepo.HTMLURL .Comment.NewCommit}} + {{$newShortSha := ShortSha .Comment.NewCommit}} + {{$newCommitLink := HTMLFormat "<a href='%[1]s'><b>%[2]s</b></a>" $newCommitUrl $newShortSha}} + + {{.locale.Tr "mail.issue.action.force_push" .Doer.Name .Comment.Issue.PullRequest.HeadBranch $oldCommitLink $newCommitLink}} + {{else}} + {{.locale.TrN (len .Comment.Commits) "mail.issue.action.push_1" "mail.issue.action.push_n" .Doer.Name .Comment.Issue.PullRequest.HeadBranch (len .Comment.Commits)}} + {{end}} + </p> + {{end}} + <p> + {{if eq .ActionName "close"}} + {{.locale.Tr "mail.issue.action.close" .Doer.Name .Issue.Index}} + {{else if eq .ActionName "reopen"}} + {{.locale.Tr "mail.issue.action.reopen" .Doer.Name .Issue.Index}} + {{else if eq .ActionName "merge"}} + {{.locale.Tr "mail.issue.action.merge" .Doer.Name .Issue.Index .Issue.PullRequest.BaseBranch}} + {{else if eq .ActionName "approve"}} + {{.locale.Tr "mail.issue.action.approve" .Doer.Name}} + {{else if eq .ActionName "reject"}} + {{.locale.Tr "mail.issue.action.reject" .Doer.Name}} + {{else if eq .ActionName "review"}} + {{.locale.Tr "mail.issue.action.review" .Doer.Name}} + {{else if eq .ActionName "review_dismissed"}} + {{.locale.Tr "mail.issue.action.review_dismissed" .Doer.Name .Comment.Review.Reviewer.Name}} + {{else if eq .ActionName "ready_for_review"}} + {{.locale.Tr "mail.issue.action.ready_for_review" .Doer.Name}} + {{end}} + + {{- if eq .Body ""}} + {{if eq .ActionName "new"}} + {{.locale.Tr "mail.issue.action.new" .Doer.Name .Issue.Index}} + {{end}} + {{else}} + {{.Body}} + {{end -}} + {{- range .ReviewComments}} + <hr> + {{$.locale.Tr "mail.issue.in_tree_path" .TreePath}} + <div class="review"> + <pre>{{.Patch}}</pre> + <div>{{.RenderedContent}}</div> + </div> + {{end -}} + {{if eq .ActionName "push"}} + <ul> + {{range .Comment.Commits}} + <li> + <a href="{{$.Comment.Issue.PullRequest.BaseRepo.HTMLURL}}/commit/{{.ID}}"> + {{ShortSha .ID.String}} + </a> - {{.Summary}} + </li> + {{end}} + </ul> + {{end}} + </p> + <div class="footer"> + <p> + --- + <br> + <a href="{{.Link}}">{{.locale.Tr "mail.view_it_on" AppName}}</a>{{if .CanReply}} {{.locale.Tr "mail.reply"}}{{end}}. + </p> + </div> +</body> +</html> diff --git a/templates/mail/notify/admin_new_user.tmpl b/templates/mail/notify/admin_new_user.tmpl new file mode 100644 index 0000000..655c7ce --- /dev/null +++ b/templates/mail/notify/admin_new_user.tmpl @@ -0,0 +1,20 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + + <style> + blockquote { padding-left: 1em; margin: 1em 0; border-left: 1px solid grey; color: #777} + .footer { font-size:small; color:#666;} + </style> + +</head> + +<body> + <ul> + <h3>{{.Locale.Tr "mail.admin.new_user.user_info"}}: <a href="{{.NewUserUrl}}">@{{.NewUser.Name}}</a></h3> + <li>{{.Locale.Tr "admin.users.created"}}: {{DateTime "full" .NewUser.CreatedUnix}}</li> + </ul> + <p> {{.Body | SanitizeHTML}} </p> +</body> +</html> diff --git a/templates/mail/notify/collaborator.tmpl b/templates/mail/notify/collaborator.tmpl new file mode 100644 index 0000000..6108d40 --- /dev/null +++ b/templates/mail/notify/collaborator.tmpl @@ -0,0 +1,20 @@ +<!DOCTYPE html> +<html> +<head> + <style> + .footer { font-size:small; color:#666;} + </style> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +</head> + +<body> + <p>{{.locale.Tr "mail.repo.collaborator.added.text"}} <code>{{.RepoName}}</code></p> + <div class="footer"> + <p> + --- + <br> + <a href="{{.Link}}">{{.locale.Tr "mail.view_it_on" AppName}}</a>. + </p> + </div> +</body> +</html> diff --git a/templates/mail/notify/repo_transfer.tmpl b/templates/mail/notify/repo_transfer.tmpl new file mode 100644 index 0000000..bc4c4b3 --- /dev/null +++ b/templates/mail/notify/repo_transfer.tmpl @@ -0,0 +1,18 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +</head> + +{{$url := HTMLFormat "<a href='%[1]s'>%[2]s</a>" .Link .Repo}} +<body> + <p>{{.Subject}}. + {{.locale.Tr "mail.repo.transfer.body" $url}} + </p> + <p> + --- + <br> + <a href="{{.Link}}">{{.locale.Tr "mail.view_it_on" AppName}}</a>. + </p> +</body> +</html> diff --git a/templates/mail/release.tmpl b/templates/mail/release.tmpl new file mode 100644 index 0000000..8c01aec --- /dev/null +++ b/templates/mail/release.tmpl @@ -0,0 +1,60 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + + <style> + blockquote { padding-left: 1em; margin: 1em 0; border-left: 1px solid grey; color: #777} + .footer { font-size:small; color:#666;} + </style> + +</head> + +{{$release_url := HTMLFormat "<a href='%s'>%s</a>" .Release.HTMLURL .Release.TagName}} +{{$repo_url := HTMLFormat "<a href='%s'>%s</a>" .Release.Repo.HTMLURL .Release.Repo.FullName}} +<body> + <p> + {{.locale.Tr "mail.release.new.text" .Release.Publisher.Name $release_url $repo_url}} + </p> + <h4>{{.locale.Tr "mail.release.title" .Release.Title}}</h4> + <p> + {{.locale.Tr "mail.release.note"}}<br> + {{- if eq .Release.RenderedNote ""}} + {{else}} + {{.Release.RenderedNote}} + {{end -}} + </p> + <br><br> + <p> + --- + <br> + {{.locale.Tr "mail.release.downloads"}} + <ul> + {{if not .DisableDownloadSourceArchives}} + <li> + <a href="{{.Release.Repo.Link}}/archive/{{.Release.TagName | PathEscapeSegments}}.zip" rel="nofollow"><strong>{{.locale.Tr "mail.release.download.zip"}}</strong></a> + </li> + <li> + <a href="{{.Release.Repo.Link}}/archive/{{.Release.TagName | PathEscapeSegments}}.tar.gz" rel="nofollow"><strong>{{.locale.Tr "mail.release.download.targz"}}</strong></a> + </li> + {{end}} + {{if .Release.Attachments}} + {{range .Release.Attachments}} + <li> + <a target="_blank" rel="noopener noreferrer" href="{{.DownloadURL}}"> + <strong>{{.Name}} ({{.Size | $.locale.TrSize}})</strong> + </a> + </li> + {{end}} + {{end}} + </ul> + </p> + <div class="footer"> + <p> + --- + <br> + <a href="{{.Link}}">{{.locale.Tr "mail.view_it_on" AppName}}</a>. + </p> + </div> +</body> +</html> diff --git a/templates/mail/team_invite.tmpl b/templates/mail/team_invite.tmpl new file mode 100644 index 0000000..cb0c0c0 --- /dev/null +++ b/templates/mail/team_invite.tmpl @@ -0,0 +1,15 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <meta name="format-detection" content="telephone=no,date=no,address=no,email=no,url=no"> +</head> +<body> + <p>{{.locale.Tr "mail.team_invite.text_1" (DotEscape .Inviter.DisplayName) (DotEscape .Team.Name) (DotEscape .Organization.DisplayName)}}</p> + <p>{{.locale.Tr "mail.team_invite.text_2"}}</p><p><a href="{{.InviteURL}}">{{.InviteURL}}</a></p> + <p>{{.locale.Tr "mail.link_not_working_do_paste"}}</p> + <p>{{.locale.Tr "mail.team_invite.text_3" .Invite.Email}}</p> + + <p>© <a target="_blank" rel="noopener noreferrer" href="{{AppUrl}}">{{AppName}}</a></p> +</body> +</html> |