Prepare email notifications templates for dark mode (#1285)

Signed-off-by: Cintia Sanchez Garcia <cynthiasg@icloud.com>
This commit is contained in:
Cynthia S. Garcia 2021-04-30 10:59:27 +02:00 committed by GitHub
parent 46f6338cc9
commit 4782c583e5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 955 additions and 213 deletions

View File

@ -9,18 +9,26 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>{{ .Package.name }} new release</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
@ -33,6 +41,7 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
table[class=body] .container {
padding: 0 !important;
width: 100% !important;
max-width: 100% !important;
}
table[class=body] .main {
border-left-width: 0 !important;
@ -66,11 +75,11 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -90,10 +99,96 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.title, .AHlink {
color: #39596C;
}
.subtitle {
color: #1c2c35;
}
.hr {
border-top: 1px solid #659DBD;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: #ffffff;
}
.text-muted {
color: #545454;
}
.warning {
color: #856404;
background-color: #fff3cd;
border: 1px solid #856404;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td, .subtitle {
color: #a3a3a6 !important;
}
.title, .AHlink {
color: #1164a3;
}
.hr {
border-color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
.warning {
background-color: #cec4a5;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 580px; padding: 10px; width: 580px;">
@ -101,7 +196,7 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">{{ .Package.name }} version {{ .Package.version }} released</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #659DBD;">
<table class="main line" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -110,8 +205,8 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top; text-align: center;">
<img style="margin: 30px;" height="40px" src="{{ .BaseURL }}{{ if .Package.logoImageID }}/image/{{ .Package.logoImageID }}@3x{{ else }}/static/media/placeholder_pkg_{{ .Package.repository.kind }}.png{{ end }}">
<h2 style="color: #39596c; font-family: sans-serif; margin: 0; Margin-bottom: 15px;"><img style="margin-right: 5px; margin-bottom: -2px;" height="18px" src="{{ .BaseURL }}/static/media/{{ .Package.repository.kind }}_icon.png">{{ .Package.name }}</h2>
<h4 style="color: #1c2c35; font-family: sans-serif; margin: 0; Margin-bottom: 15px;">{{ .Package.repository.publisher }} </h4>
<h2 class="title" style="font-family: sans-serif; margin: 0; Margin-bottom: 15px;"><img style="margin-right: 5px; margin-bottom: -2px;" height="18px" src="{{ .BaseURL }}/static/media/{{ .Package.repository.kind }}_icon.png">{{ .Package.name }}</h2>
<h4 class="subtitle" style="font-family: sans-serif; margin: 0; Margin-bottom: 15px;">{{ .Package.repository.publisher }} </h4>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 30px;">Version <b>{{ .Package.version }}</b> has been released</p>
</td>
@ -124,7 +219,7 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
<tbody>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-top: 5px; padding-bottom: {{ if .Package.containsSecurityUpdates }} 15px; {{ else }} 30px;{{ end }}">
<div style="color: #ffffff; color: #856404; background-color: #fff3cd; border: 1px solid #ffeeba; border-radius: 5px; box-sizing: border-box; cursor: pointer; font-size: 14px; font-weight: 400; margin: 0; padding: 12px 20px; text-align: left;">This package version is a <b>pre-release</b> and it is not ready for production use.</div>
<div class="warning" style="border-radius: 5px; box-sizing: border-box; cursor: pointer; font-size: 14px; font-weight: 400; margin: 0; padding: 12px 20px; text-align: left;">This package version is a <b>pre-release</b> and it is not ready for production use.</div>
</td>
</tr>
</tbody>
@ -140,7 +235,7 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
<tbody>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-top: 5px; padding-bottom: 30px;">
<div style="color: #ffffff; color: #856404; background-color: #fff3cd; border: 1px solid #ffeeba; border-radius: 5px; box-sizing: border-box; cursor: pointer; font-size: 14px; font-weight: 400; margin: 0; padding: 12px 20px; text-align: left;">This package version contains security updates.</div>
<div class="warning" style="border-radius: 5px; box-sizing: border-box; cursor: pointer; font-size: 14px; font-weight: 400; margin: 0; padding: 12px 20px; text-align: left;">This package version contains security updates.</div>
</td>
</tr>
</tbody>
@ -152,14 +247,14 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
<tr>
<td style="font-family: sans-serif; font-size: 14px;">
{{ if .Package.changes }}
<hr style="border-top: 1px solid #659DBD; border-bottom: none;" />
<h4 style="color: #39596c; font-family: sans-serif; font-size: 12px; Margin-top: 20px;">CHANGES:</h4>
<hr class="hr" style="border-bottom: none;" />
<h4 class="subtitle" style="font-family: sans-serif; font-size: 12px; Margin-top: 20px;">CHANGES:</h4>
<ul style="Margin-bottom: 20px;">
{{range $change := .Package.changes}}
<li>{{$change}}</li>
{{end}}
</ul>
<hr style="border-top: 1px solid #659DBD; border-bottom: none;" />
<hr class="hr" style="border-bottom: none;" />
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 45px;"></p>
{{ end }}
</td>
@ -174,7 +269,7 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt;">
<tbody>
<tr>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top;"><div style="text-align: center;"> <a href="{{ .Package.url }}" target="_blank" style="display: inline-block; color: #ffffff; background-color: #39596C; border: solid 1px #39596C; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; border-color: #39596C;">View in Artifact Hub</a> </div></td>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top;"><div style="text-align: center;"> <a href="{{ .Package.url }}" class="AHbtn" target="_blank" style="display: inline-block; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px;">View in Artifact Hub</a> </div></td>
</tr>
</tbody>
</table>
@ -186,8 +281,8 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
<tbody>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; color: #545454; padding-bottom: 30px; padding-top: 10px;">
<p style="color: #545454; font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span style="color: #545454; background-color: #ffffff;">{{ .Package.url }}</span></p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; padding-bottom: 30px; padding-top: 10px;">
<p class="text-muted" style="font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span class="copy-link">{{ .Package.url }}</span></p>
</td>
</tr>
</tbody>
@ -205,13 +300,13 @@ var newReleaseEmailTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 10px; color: #545454; text-align: center;">
<p style="color: #545454; font-size: 10px; text-align: center; text-decoration: none;">Didn't subscribe to Artifact Hub notifications for {{ .Package.name }} package? You can unsubscribe <a href="{{ .BaseURL }}/control-panel/settings/subscriptions" target="_blank" style="text-decoration: underline; color: #545454;">here</a>.</p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 10px; text-align: center;">
<p class="text-muted" style="font-size: 10px; text-align: center; text-decoration: none;">Didn't subscribe to Artifact Hub notifications for {{ .Package.name }} package? You can unsubscribe <a href="{{ .BaseURL }}/control-panel/settings/subscriptions" target="_blank" class="text-muted" style="text-decoration: underline;">here</a>.</p>
</td>
</tr>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="{{ .BaseURL }}" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; text-align: center;">
<a href="{{ .BaseURL }}" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>

View File

@ -9,18 +9,26 @@ var ownershipClaimEmailTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>{{ .Repository.name }} repository ownership has been claimed</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
@ -33,6 +41,7 @@ var ownershipClaimEmailTmpl = template.Must(template.New("").Parse(`
table[class=body] .container {
padding: 0 !important;
width: 100% !important;
max-width: 100% !important;
}
table[class=body] .main {
border-left-width: 0 !important;
@ -66,11 +75,11 @@ var ownershipClaimEmailTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -90,10 +99,74 @@ var ownershipClaimEmailTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.AHlink {
color: #39596C;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: #ffffff;
}
.text-muted {
color: #545454;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td {
color: #a3a3a6 !important;
}
.AHlink {
color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 580px; padding: 10px; width: 580px;">
@ -101,7 +174,7 @@ var ownershipClaimEmailTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">{{ .Repository.name }} repository ownership has been claimed</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #659DBD;">
<table class="main line" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -109,7 +182,7 @@ var ownershipClaimEmailTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">
<h4 style="font-family: sans-serif; margin: 0; Margin-bottom: 30px;"><span style="color: #39596c;">{{ .Repository.name }}</span> repository has been transferred to {{ if .Repository.userAlias }} user <span style="color: #39596c;">{{ .Repository.userAlias }}</span> {{ else }} organization <span style="color: #39596c;">{{ .Repository.organizationName }}</span> {{ end }}</h4>
<h4 style="font-family: sans-serif; margin: 0; Margin-bottom: 30px;"><span class="AHlink">{{ .Repository.name }}</span> repository has been transferred to {{ if .Repository.userAlias }} user <span class="AHlink">{{ .Repository.userAlias }}</span> {{ else }} organization <span class="AHlink">{{ .Repository.organizationName }}</span> {{ end }}</h4>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 30px;">{{ if .Repository.userAlias }} User <b>{{ .Repository.userAlias }}</b> {{ else }} Organization <b>{{ .Repository.organizationName }}</b> {{ end }} claimed the ownership of the <b>{{ .Repository.name }}</b> repository. After successfully verifying that the claiming entity owns it, we have proceeded with the transfer.</p>
</td>
</tr>
@ -124,8 +197,8 @@ var ownershipClaimEmailTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="{{ .BaseURL }}" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; text-align: center;">
<a href="{{ .BaseURL }}" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>

View File

@ -9,22 +9,26 @@ var scanningErrorsEmailTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>{{ .Repository.name }} scanning errors</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] code p,
table[class=body] code a {
font-size: 13px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
@ -71,11 +75,11 @@ var scanningErrorsEmailTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -95,10 +99,74 @@ var scanningErrorsEmailTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.AHlink {
color: #39596C;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: #ffffff;
}
.text-muted {
color: #545454;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td {
color: #a3a3a6 !important;
}
.AHlink {
color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 90%; padding: 10px; width: 90%;">
@ -106,7 +174,7 @@ var scanningErrorsEmailTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">{{ .Repository.name }} security vulnerabilities scan errors</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #C00004;">
<table class="main line-danger" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -119,7 +187,7 @@ var scanningErrorsEmailTmpl = template.Must(template.New("").Parse(`
</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 30px;">
If you find something in them that doesn't make sense, or there is anything you need help with, please file an issue <a href="https://github.com/artifacthub/hub/issues" style="color: #39596C; text-decoration: none;">here</a>.
If you find something in them that doesn't make sense, or there is anything you need help with, please file an issue <a href="https://github.com/artifacthub/hub/issues" class="AHlink" style="text-decoration: none;">here</a>.
</p>
<h4 style="color: #921e12; font-family: sans-serif; margin: 0; Margin-bottom: 15px;">Errors log</h4>
@ -149,7 +217,7 @@ var scanningErrorsEmailTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt;">
<tbody>
<tr>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top;"><div style="text-align: center;"> <a href="{{ .BaseURL }}/control-panel/repositories?modal=scanning&user-alias={{ .Repository.userAlias }}&org-name={{ .Repository.organizationName }}&repo-name={{ .Repository.name }}" target="_blank" style="display: inline-block; color: #ffffff; background-color: #39596C; border: solid 1px #39596C; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; border-color: #39596C;">View in Artifact Hub</a> </div></td>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top;"><div style="text-align: center;"> <a href="{{ .BaseURL }}/control-panel/repositories?modal=scanning&user-alias={{ .Repository.userAlias }}&org-name={{ .Repository.organizationName }}&repo-name={{ .Repository.name }}" class="AHbtn" target="_blank" style="display: inline-block; color: #ffffff; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px;">View in Artifact Hub</a> </div></td>
</tr>
</tbody>
</table>
@ -161,8 +229,8 @@ var scanningErrorsEmailTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
<tbody>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; color: #545454; padding-bottom: 10px; padding-top: 10px; text-align: center;">
<p style="color: #545454; font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span style="color: #545454; background-color: #ffffff; text-align: center;">{{ .BaseURL }}/control-panel/repositories?modal=scanning&user-alias={{ .Repository.userAlias }}&org-name={{ .Repository.organizationName }}&repo-name={{ .Repository.name }}</span></p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; padding-bottom: 10px; padding-top: 10px; text-align: center;">
<p class="text-muted" style="font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span class="copy-link" style="text-align: center;">{{ .BaseURL }}/control-panel/repositories?modal=scanning&user-alias={{ .Repository.userAlias }}&org-name={{ .Repository.organizationName }}&repo-name={{ .Repository.name }}</span></p>
</td>
</tr>
</tbody>
@ -180,8 +248,8 @@ var scanningErrorsEmailTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="{{ .BaseURL }}" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; text-align: center;">
<a href="{{ .BaseURL }}" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>

View File

@ -9,22 +9,26 @@ var trackingErrorsEmailTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>{{ .Repository.name }} tracking errors</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] code p,
table[class=body] code a {
font-size: 13px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
@ -71,11 +75,11 @@ var trackingErrorsEmailTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -95,10 +99,74 @@ var trackingErrorsEmailTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.AHlink {
color: #39596C;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: #ffffff;
}
.text-muted {
color: #545454;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td {
color: #a3a3a6 !important;
}
.AHlink {
color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 90%; padding: 10px; width: 90%;">
@ -106,7 +174,7 @@ var trackingErrorsEmailTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">{{ .Repository.name }} tracking errors</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #C00004;">
<table class="main line-danger" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -153,7 +221,7 @@ var trackingErrorsEmailTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt;">
<tbody>
<tr>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top;"><div style="text-align: center;"> <a href="{{ .BaseURL }}/control-panel/repositories?modal=tracking&user-alias={{ .Repository.userAlias }}&org-name={{ .Repository.organizationName }}&repo-name={{ .Repository.name }}" target="_blank" style="display: inline-block; color: #ffffff; background-color: #39596C; border: solid 1px #39596C; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; border-color: #39596C;">View in Artifact Hub</a> </div></td>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top;"><div style="text-align: center;"> <a href="{{ .BaseURL }}/control-panel/repositories?modal=tracking&user-alias={{ .Repository.userAlias }}&org-name={{ .Repository.organizationName }}&repo-name={{ .Repository.name }}" class="AHbtn" target="_blank" style="display: inline-block; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px;">View in Artifact Hub</a> </div></td>
</tr>
</tbody>
</table>
@ -165,8 +233,8 @@ var trackingErrorsEmailTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
<tbody>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; color: #545454; padding-bottom: 10px; padding-top: 10px; text-align: center;">
<p style="color: #545454; font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span style="color: #545454; background-color: #ffffff; text-align: center;">{{ .BaseURL }}/control-panel/repositories?modal=tracking&user-alias={{ .Repository.userAlias }}&org-name={{ .Repository.organizationName }}&repo-name={{ .Repository.name }}</span></p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; padding-bottom: 10px; padding-top: 10px; text-align: center;">
<p class="text-muted" style="font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span class="copy-link" style="text-align: center;">{{ .BaseURL }}/control-panel/repositories?modal=tracking&user-alias={{ .Repository.userAlias }}&org-name={{ .Repository.organizationName }}&repo-name={{ .Repository.name }}</span></p>
</td>
</tr>
</tbody>
@ -184,8 +252,8 @@ var trackingErrorsEmailTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="{{ .BaseURL }}" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; text-align: center;">
<a href="{{ .BaseURL }}" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>

View File

@ -9,22 +9,30 @@ var invitationTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Email confirmation</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
table[class=body] .article {
table[class=body] .article {
padding: 10px !important;
}
table[class=body] .content {
@ -33,6 +41,7 @@ var invitationTmpl = template.Must(template.New("").Parse(`
table[class=body] .container {
padding: 0 !important;
width: 100% !important;
max-width: 100% !important;
}
table[class=body] .main {
border-left-width: 0 !important;
@ -66,11 +75,11 @@ var invitationTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -90,10 +99,74 @@ var invitationTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.AHlink {
color: #39596C;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: #ffffff;
}
.text-muted {
color: #545454;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td {
color: #a3a3a6 !important;
}
.AHlink {
color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 580px; padding: 10px; width: 580px;">
@ -101,7 +174,7 @@ var invitationTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">Invitation to {{ .orgName }} organization on Artifact Hub</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #659DBD;">
<table class="main line" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -118,7 +191,7 @@ var invitationTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: auto;">
<tbody>
<tr>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top; text-align: center;"> <a href="{{ .link }}" target="_blank" style="display: inline-block; color: #ffffff; background-color: #39596C; border: solid 1px #39596C; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; text-transform: capitalize; border-color: #39596C;">Accept invitation</a> </td>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top; text-align: center;"> <a href="{{ .link }}" class="AHbtn" target="_blank" style="display: inline-block; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; text-transform: capitalize;">Accept invitation</a> </td>
</tr>
</tbody>
</table>
@ -129,8 +202,8 @@ var invitationTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
<tbody>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; color: #545454; padding-bottom: 30px; padding-top: 10px;">
<p style="color: #545454; font-size: 11px; text-decoration: none;">You can also accept the invitation by visiting the page directly at <span style="color: #545454; background-color: #ffffff;">{{ .link }}</span></p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; padding-bottom: 30px; padding-top: 10px;">
<p class="text-muted" style="font-size: 11px; text-decoration: none;">You can also accept the invitation by visiting the page directly at <span class="copy-link">{{ .link }}</span></p>
</td>
</tr>
</tbody>
@ -149,13 +222,13 @@ var invitationTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 10px; color: #545454; text-align: center;">
<p style="color: #545454; font-size: 10px; text-align: center; text-decoration: none;">If this email means nothing to you, then it is possible that somebody else has entered your user alias accidentally, so please ignore this email.</p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 10px; text-align: center;">
<p class="text-muted" style="font-size: 10px; text-align: center; text-decoration: none;">If this email means nothing to you, then it is possible that somebody else has entered your user alias accidentally, so please ignore this email.</p>
</td>
</tr>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="https://artifacthub.io" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; text-align: center;">
<a href="https://artifacthub.io" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>

View File

@ -9,22 +9,30 @@ var emailVerificationTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Email confirmation</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
table[class=body] .article {
table[class=body] .article {
padding: 10px !important;
}
table[class=body] .content {
@ -33,6 +41,7 @@ var emailVerificationTmpl = template.Must(template.New("").Parse(`
table[class=body] .container {
padding: 0 !important;
width: 100% !important;
max-width: 100% !important;
}
table[class=body] .main {
border-left-width: 0 !important;
@ -66,11 +75,11 @@ var emailVerificationTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -90,10 +99,74 @@ var emailVerificationTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.AHlink {
color: #39596C;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: #ffffff;
}
.text-muted {
color: #545454;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td {
color: #a3a3a6 !important;
}
.AHlink {
color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 580px; padding: 10px; width: 580px;">
@ -101,7 +174,7 @@ var emailVerificationTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">Welcome to Artifact Hub!</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #659DBD;">
<table class="main line" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -119,7 +192,7 @@ var emailVerificationTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: auto;">
<tbody>
<tr>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top; text-align: center;"> <a href="{{ .link }}" target="_blank" style="display: inline-block; color: #ffffff; background-color: #39596C; border: solid 1px #39596C; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; text-transform: capitalize; border-color: #39596C;">Confirm your account</a> </td>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top; text-align: center;"> <a href="{{ .link }}" class="AHbtn" target="_blank" style="display: inline-block; color: #ffffff; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; text-transform: capitalize;">Confirm your account</a> </td>
</tr>
</tbody>
</table>
@ -130,8 +203,8 @@ var emailVerificationTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
<tbody>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; color: #545454; padding-bottom: 30px; padding-top: 10px;">
<p style="color: #545454; font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span style="color: #545454; background-color: #ffffff;">{{ .link }}</span></p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; padding-bottom: 30px; padding-top: 10px;">
<p class="text-muted" style="font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span class="copy-link">{{ .link }}</span></p>
</td>
</tr>
</tbody>
@ -151,13 +224,13 @@ var emailVerificationTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 10px; color: #545454; text-align: center;">
<p style="color: #545454; font-size: 10px; text-align: center; text-decoration: none;">Didn't create an Artifact Hub account? I's likely someone just typed in your email address by accident.<br>Feel free to ignore this email.</p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 10px; text-align: center;">
<p class="text-muted" style="font-size: 10px; text-align: center; text-decoration: none;">Didn't create an Artifact Hub account? I's likely someone just typed in your email address by accident.<br>Feel free to ignore this email.</p>
</td>
</tr>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="https://artifacthub.io" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<a href="https://artifacthub.io" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>

View File

@ -9,22 +9,30 @@ var passwordResetTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Password reset</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
table[class=body] .article {
table[class=body] .article {
padding: 10px !important;
}
table[class=body] .content {
@ -33,6 +41,7 @@ var passwordResetTmpl = template.Must(template.New("").Parse(`
table[class=body] .container {
padding: 0 !important;
width: 100% !important;
max-width: 100% !important;
}
table[class=body] .main {
border-left-width: 0 !important;
@ -66,11 +75,11 @@ var passwordResetTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -90,10 +99,74 @@ var passwordResetTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.AHlink {
color: #39596C;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: #ffffff;
}
.text-muted {
color: #545454;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td {
color: #a3a3a6 !important;
}
.AHlink {
color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 580px; padding: 10px; width: 580px;">
@ -101,7 +174,7 @@ var passwordResetTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">Password reset</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #659DBD;">
<table class="main line" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -110,7 +183,7 @@ var passwordResetTmpl = template.Must(template.New("").Parse(`
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;">Hi!</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;"> We got a request to reset your <span style="color: #39596C; font-weight: bold;">Artifact Hub</span> password.</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;"> We got a request to reset your <span class="AHlink" style="font-weight: bold;">Artifact Hub</span> password.</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;">If you did not perform this request, you can safely ignore this email. Otherwise, click the link below to complete the process.</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 30px;">Please note that the password reset link <span style="font-weight: bold;">will only be valid for 15 minutes</span>. If you haven't completed the process by then, you'll need to get a new password reset link.</p>
<table border="0" cellpadding="0" cellspacing="0" class="btn btn-primary" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
@ -120,7 +193,7 @@ var passwordResetTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: auto;">
<tbody>
<tr>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top; text-align: center;"> <a href="{{ .link }}" target="_blank" style="display: inline-block; color: #ffffff; background-color: #39596C; border: solid 1px #39596C; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; text-transform: capitalize; border-color: #39596C;">Reset password</a> </td>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top; text-align: center;"> <a href="{{ .link }}" class="AHbtn" target="_blank" style="display: inline-block; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; text-transform: capitalize;">Reset password</a> </td>
</tr>
</tbody>
</table>
@ -131,8 +204,8 @@ var passwordResetTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
<tbody>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; color: #545454; padding-bottom: 30px; padding-top: 10px;">
<p style="color: #545454; font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span style="color: #545454; background-color: #ffffff;">{{ .link }}</span></p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; padding-bottom: 30px; padding-top: 10px;">
<p class="text-muted" style="font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span class="copy-link">{{ .link }}</span></p>
</td>
</tr>
</tbody>
@ -150,8 +223,8 @@ var passwordResetTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="https://artifacthub.io" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; text-align: center;">
<a href="https://artifacthub.io" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>

View File

@ -9,22 +9,30 @@ var passwordResetSuccessTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Your Artifact Hub password has been reset</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
table[class=body] .article {
table[class=body] .article {
padding: 10px !important;
}
table[class=body] .content {
@ -33,6 +41,7 @@ var passwordResetSuccessTmpl = template.Must(template.New("").Parse(`
table[class=body] .container {
padding: 0 !important;
width: 100% !important;
max-width: 100% !important;
}
table[class=body] .main {
border-left-width: 0 !important;
@ -66,11 +75,11 @@ var passwordResetSuccessTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -90,10 +99,74 @@ var passwordResetSuccessTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.AHlink {
color: #39596C;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: white;
}
.text-muted {
color: #545454;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td {
color: #a3a3a6 !important;
}
.AHlink {
color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 580px; padding: 10px; width: 580px;">
@ -101,7 +174,7 @@ var passwordResetSuccessTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">Your Artifact Hub password has been reset</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #659DBD;">
<table class="main line" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -110,7 +183,7 @@ var passwordResetSuccessTmpl = template.Must(template.New("").Parse(`
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;">Hi!</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;">Your <span style="color: #39596C; font-weight: bold;">Artifact Hub</span> password has been reset. You can now use your new password to log in to your account.</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;">Your <span class="AHlink" style="font-weight: bold;">Artifact Hub</span> password has been reset. You can now use your new password to log in to your account.</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 30px;">If this wasn't you, please reset your password to secure your account.</p>
<table border="0" cellpadding="0" cellspacing="0" class="btn btn-primary" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
<tbody>
@ -119,7 +192,7 @@ var passwordResetSuccessTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: auto;">
<tbody>
<tr>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top; text-align: center;"> <a href="{{ .baseURL }}/?modal=login" target="_blank" style="display: inline-block; color: #ffffff; background-color: #39596C; border: solid 1px #39596C; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; text-transform: capitalize; border-color: #39596C;">Login</a> </td>
<td style="font-family: sans-serif; font-size: 14px; border-radius: 5px; vertical-align: top; text-align: center;"> <a href="{{ .baseURL }}/?modal=login" class="AHbtn" target="_blank" style="display: inline-block; border-radius: 5px; box-sizing: border-box; cursor: pointer; text-decoration: none; font-size: 14px; font-weight: bold; margin: 0; padding: 12px 25px; text-transform: capitalize;">Login</a> </td>
</tr>
</tbody>
</table>
@ -130,8 +203,8 @@ var passwordResetSuccessTmpl = template.Must(template.New("").Parse(`
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; box-sizing: border-box;">
<tbody>
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; color: #545454; padding-bottom: 30px; padding-top: 10px;">
<p style="color: #545454; font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span style="color: #545454; background-color: #ffffff;">{{ .baseURL }}/?modal=login</span></p>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; font-size: 11px; padding-bottom: 30px; padding-top: 10px;">
<p class="text-muted" style="font-size: 11px; text-decoration: none;">Or you can copy-paste this link: <span class="copy-link">{{ .baseURL }}/?modal=login</span></p>
</td>
</tr>
</tbody>
@ -149,8 +222,8 @@ var passwordResetSuccessTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="https://artifacthub.io" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; text-align: center;">
<a href="https://artifacthub.io" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>

View File

@ -9,22 +9,30 @@ var tfaDisabledTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Two-factor authentication has been disabled</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
table[class=body] .article {
table[class=body] .article {
padding: 10px !important;
}
table[class=body] .content {
@ -33,6 +41,7 @@ var tfaDisabledTmpl = template.Must(template.New("").Parse(`
table[class=body] .container {
padding: 0 !important;
width: 100% !important;
max-width: 100% !important;
}
table[class=body] .main {
border-left-width: 0 !important;
@ -66,11 +75,11 @@ var tfaDisabledTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -90,10 +99,74 @@ var tfaDisabledTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.AHlink {
color: #39596C;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: #ffffff;
}
.text-muted {
color: #545454;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td {
color: #a3a3a6 !important;
}
.AHlink {
color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 580px; padding: 10px; width: 580px;">
@ -101,7 +174,7 @@ var tfaDisabledTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">Two-factor authentication has been disabled</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #659DBD;">
<table class="main line" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -111,7 +184,7 @@ var tfaDisabledTmpl = template.Must(template.New("").Parse(`
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;">Hi!</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;">
Two-factor authentication has been successfully disabled for your <span style="color: #39596C; font-weight: bold;">Artifact Hub</span> account.</p>
Two-factor authentication has been successfully disabled for your <span class="AHlink" style="font-weight: bold;">Artifact Hub</span> account.</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 30px;">Please, remember that two-factor authentication is an additional layer of security designed to prevent unauthorised access to your account and protect all your data in Artifact Hub.</p>
</td>
</tr>
@ -126,8 +199,8 @@ var tfaDisabledTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="https://artifacthub.io" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; text-align: center;">
<a href="https://artifacthub.io" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>

View File

@ -9,22 +9,30 @@ var tfaEnabledTmpl = template.Must(template.New("").Parse(`
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Two-factor authentication has been enabled</title>
<style>
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<style type="text/css">
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
}
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
table[class=body] .article {
table[class=body] .article {
padding: 10px !important;
}
table[class=body] .content {
@ -33,6 +41,7 @@ var tfaEnabledTmpl = template.Must(template.New("").Parse(`
table[class=body] .container {
padding: 0 !important;
width: 100% !important;
max-width: 100% !important;
}
table[class=body] .main {
border-left-width: 0 !important;
@ -66,11 +75,11 @@ var tfaEnabledTmpl = template.Must(template.New("").Parse(`
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
@ -90,10 +99,74 @@ var tfaEnabledTmpl = template.Must(template.New("").Parse(`
line-height: inherit;
}
}
.body {
background-color: #f4f4f4;
color: #38383f;
}
.line {
border-top: 7px solid #659DBD;
}
.line-danger {
border-top: 7px solid #C00004;
}
.main, .copy-link {
background-color: #ffffff;
}
.AHlink {
color: #39596C;
}
.AHbtn {
background-color: #39596C;
border: solid 1px #39596C;
color: #ffffff;
}
.text-muted {
color: #545454;
}
@media (prefers-color-scheme: dark ) {
.body {
background-color: #222529 !important;
color: #a3a3a6 !important;
}
.main, .copy-link {
background-color: #131216 !important;
}
.line {
border-color: #1164a3 !important;
}
.line-danger {
border-color: #C00004 !important;
}
h1, h2, h3, p, td {
color: #a3a3a6 !important;
}
.AHlink {
color: #1164a3;
}
.AHbtn {
background-color: #1164a3;
border-color: #1164a3;
color: #ffffff;
}
}
</style>
</head>
<body class="" style="background-color: #f4f4f4; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f4f4f4;">
<body class="body" style="font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 580px; padding: 10px; width: 580px;">
@ -101,7 +174,7 @@ var tfaEnabledTmpl = template.Must(template.New("").Parse(`
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">Two-factor authentication has been enabled</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px; border-top: 7px solid #659DBD;">
<table class="main line" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
@ -110,7 +183,7 @@ var tfaEnabledTmpl = template.Must(template.New("").Parse(`
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 15px;">Hi!</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 30px;">Two-factor authentication has been successfully enabled for your <span style="color: #39596C; font-weight: bold;">Artifact Hub</span> account. Please don't forget to print the recovery codes provided during the setup process.</p>
<p style="font-family: sans-serif; font-size: 14px; font-weight: normal; margin: 0; Margin-bottom: 30px;">Two-factor authentication has been successfully enabled for your <span class="AHlink" style="font-weight: bold;">Artifact Hub</span> account. Please don't forget to print the recovery codes provided during the setup process.</p>
</td>
</tr>
</table>
@ -124,8 +197,8 @@ var tfaEnabledTmpl = template.Must(template.New("").Parse(`
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #39596C; text-align: center;">
<a href="https://artifacthub.io" style="color: #39596C; font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
<td class="content-block powered-by" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; text-align: center;">
<a href="https://artifacthub.io" class="AHlink" style="font-size: 12px; text-align: center; text-decoration: none;">© Artifact Hub</a>
</td>
</tr>
</table>