initial import for Open Source 🎉
This commit is contained in:
parent
1898c361f3
commit
9c0dd3b722
2048 changed files with 218743 additions and 0 deletions
76
emails/base.html
Normal file
76
emails/base.html
Normal file
|
@ -0,0 +1,76 @@
|
|||
{% if with_base_template %}
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns="http://www.w3.org/1999/xhtml" style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<title>{{ subject }}</title>
|
||||
|
||||
{% if action_metadata %}
|
||||
<script type="application/ld+json">
|
||||
{{ action_metadata }}
|
||||
</script>
|
||||
{% endif %}
|
||||
</head>
|
||||
<body bgcolor="#F5F5F5" style="padding-left: 50px; padding-right: 50px; font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; width: 100% !important; height: 100%; margin: 0; padding: 0;"><style type="text/css">
|
||||
@media only screen and (max-width: 600px) {
|
||||
a[class="btn"] {
|
||||
display: block !important; margin-bottom: 10px !important; background-image: none !important; margin-right: 0 !important;
|
||||
}
|
||||
div[class="column"] {
|
||||
width: auto !important; float: none !important;
|
||||
}
|
||||
table.social div[class="column"] {
|
||||
width: auto !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- HEADER -->
|
||||
<table cell-padding="10" class="head-wrap" bgcolor="#F5F5F5" style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; width: 100%; margin: 0; padding: 0;"><tr style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;"><td style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;"></td>
|
||||
<td class="header container" style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; display: block !important; max-width: 100% !important; clear: both !important; margin: 0; padding: 0;">
|
||||
|
||||
<div class="content" style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; max-width: 100%; display: block; margin: 0; padding: 15px;">
|
||||
<table bgcolor="#F5F5F5" style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; width: 100%; margin: 0; padding: 0;"><tr style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;"><td style="text-align: center; font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;"><img src="{{ app_logo }}" width="100" style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; max-width: 100%; margin: 0; padding: 0;" alt="{{ app_title }}" title="{{ app_title }}"/></td>
|
||||
</tr></table></div>
|
||||
|
||||
</td>
|
||||
<td style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;"></td>
|
||||
</tr></table><!-- /HEADER --><!-- BODY --><table class="body-wrap" style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0 auto; padding: 0; max-width: 640px; width: 100%;"><tr style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;"><td style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;"></td>
|
||||
<td class="container" bgcolor="#FFFFFF" style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; display: block !important; max-width: 100% !important; clear: both !important; margin: 0; padding: 0; box-shadow: 0px 2px 4px 0px #888;">
|
||||
|
||||
<div class="content" style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; max-width: 100%; display: block; margin: 0; padding: 15px;">
|
||||
<table style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; width: 100%; margin: 0; padding: 0;"><tr style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;"><td style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;">
|
||||
{% endif %}
|
||||
{% block content %}{% endblock %}
|
||||
{% if with_base_template %}
|
||||
<br>
|
||||
<br>
|
||||
<table style="font-size: 11px; font-weight: 200; font-style: italic; margin: 0 0 20px 0;">
|
||||
<tr><td>If you have any questions, respond to this email and we’ll be happy to help!</td></tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr></table></div><!-- /content -->
|
||||
|
||||
</td>
|
||||
<td style="font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif; margin: 0; padding: 0;"></td>
|
||||
</tr></table><!-- /BODY -->
|
||||
{% if hosted %}
|
||||
<table style="text-align:center; margin:25px auto 0;">
|
||||
<tr>
|
||||
<td style="font-size: 13px; font-weight: 200">Quay [ builds, analyzes, distributes ] your container images</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table style="margin: 0 auto;">
|
||||
<tr style="font-size: 11px;" >
|
||||
{% if username %}
|
||||
<td><a style="color: #52A3D9;" href="{{ app_url }}/user/{{ username }}?tab=settings">Your Account</a></td>
|
||||
{% endif %}
|
||||
<td><a style="color: #52A3D9;" href="https://docs.quay.io/">Documentation</a></td>
|
||||
<td><a style="color: #52A3D9;" href="{{ app_url }}">Quay.io</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
{% endif %}
|
||||
</body>
|
||||
</html>
|
||||
{% endif %}
|
26
emails/changeemail.html
Normal file
26
emails/changeemail.html
Normal file
|
@ -0,0 +1,26 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-size: 20px; font-weight:400">E-mail Address Change Requested</h3>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
<span style="font-size: 13px; margin: 25px 0;">This email address was added to the {{ app_title }} account <strong>{{ username }}</strong>.
|
||||
|
||||
<table style="margin: 25px 0;">
|
||||
<tr>
|
||||
<td style="background: #40B4E5; padding: 10px; border-radius: 3px; color: #fff; font-size: 20px; font-weight: 500"><a style="text-decoration: none; color: #ffffff;" href="{{ app_link('confirm?code=' + token) }}">Confirm Email</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
<table style="margin-bottom: 25px">
|
||||
<tr>
|
||||
<td>If you did not add this address to <strong>{{ username }}</strong>, you can safely ignore this message.</td>
|
||||
</tr>
|
||||
</table>
|
||||
Best Regards,
|
||||
<br>
|
||||
The {{ app_title }} Team
|
||||
<br>
|
||||
<br>
|
||||
|
||||
|
||||
{% endblock %}
|
30
emails/confirmemail.html
Normal file
30
emails/confirmemail.html
Normal file
|
@ -0,0 +1,30 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-weight: 400">Confirm email for new user: <strong>{{ username }}</strong></h3>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">This email address was used to register user <strong>{{ username }}.</strong> </td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin-top: 25px">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">Once you confirm this email, you’ll be able to access your {{ app_title }} account.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0;">
|
||||
<tr>
|
||||
<td style="background: #40B4E5; padding: 10px; border-radius: 3px; color: #fff; font-size: 20px; font-weight: 500"><a style="text-decoration: none; color: #ffffff;" href="{{ app_link('confirm?code=' + token) }}">Confirm Email</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<span style="font-size: 13px;">Welcome!</span><br>
|
||||
<span style="font-size: 13px;">The {{ app_title }} Team</span><br>
|
||||
|
||||
{% endblock %}
|
17
emails/email-template-viewer.html
Normal file
17
emails/email-template-viewer.html
Normal file
|
@ -0,0 +1,17 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Email Template Viewer</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Email Template Viewer</h1>
|
||||
Here is a list of the templates available:
|
||||
<ul>
|
||||
{% for template in templates %}
|
||||
{% if template != 'email-template-viewer' %}
|
||||
<li><a href="{{template}}">{{template}}</a></li>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
29
emails/emailchanged.html
Normal file
29
emails/emailchanged.html
Normal file
|
@ -0,0 +1,29 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-weight: 400">Account password changed: <strong>{{ username }}</strong></h3>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">The password for user <strong>{{ username }}</strong> has been changed. </td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin-top: 25px">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">No action is required if you made this change.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0 35px">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">If you did not make this change, please <a href="https://quay.io/contact/">contact support</a>.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<span style="font-size: 13px;">Best wishes,</span><br>
|
||||
<span style="font-size: 13px;">The {{ app_title }} Team</span><br>
|
||||
|
||||
{% endblock %}
|
44
emails/logsexported.html
Normal file
44
emails/logsexported.html
Normal file
|
@ -0,0 +1,44 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-weight: 400">Usage Logs Export has completed</h3>
|
||||
<h4>Export ID: {{ export_id }}</h4>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
|
||||
{% if status == 'success' %}
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">The exported logs information can be found at <a href="{{ exported_data_url }}">{{ exported_data_url }}</a> and will remain accessible for <b>{{ exported_data_expiration }} seconds</b> before being deleted.</td>
|
||||
</tr>
|
||||
</table>
|
||||
{% elif status == 'failed' %}
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">The attempt to export the logs in the specified range has failed. This operation will be retried up to 3 times. Please contact support if this problem persists.</td>
|
||||
</tr>
|
||||
</table>
|
||||
{% elif status == 'timedout' %}
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">The attempt to export the logs in the specified range has timed out. Please contact support if this problem persists.</td>
|
||||
</tr>
|
||||
</table>
|
||||
{% elif status == 'invalidrequest' %}
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">The attempt to export the logs failed due to an invalid request. Please contact support if this problem persists.</td>
|
||||
</tr>
|
||||
</table>
|
||||
{% endif %}
|
||||
|
||||
<table style="margin: 25px 0 35px">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">If you did not initiate this operation, please delete this e-mail.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<span style="font-size: 13px;">Best Wishes,</span><br>
|
||||
<span style="font-size: 13px;">The {{ app_title }} Team</span><br>
|
||||
|
||||
{% endblock %}
|
45
emails/orgrecovery.html
Normal file
45
emails/orgrecovery.html
Normal file
|
@ -0,0 +1,45 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-weight: 400">Organization recovery: <strong>{{ organization }}</strong></h3>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">A user at <a href="{{ app_link() }}">{{ app_link() }}</a> has attempted to recover access to organization <strong>{{ organization }}</strong> via this email address.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin-top: 25px;">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">Please login with one of the following user accounts to access this organization:</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table>
|
||||
<tr>
|
||||
<ul>
|
||||
{% for admin_user in admin_usernames %}
|
||||
<li style="font-weight: 500; font-size: 13px; margin-top: 15px;">{{ admin_user | user_reference }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="">
|
||||
<tr>
|
||||
<td style="background: #40B4E5; padding: 10px; border-radius: 3px; color: #fff; font-size: 20px; font-weight: 500"><a style="text-decoration: none; color: #ffffff;" href="https://quay.io/signin/">Login to Recover</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0 35px">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">If you did not make this request, your organization has not been compromised and the user was not given access. You can safely ignore this message.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<span style="font-size: 13px;">Best Wishes,</span><br>
|
||||
<span style="font-size: 13px;">The {{ app_title }} Team</span><br>
|
||||
|
||||
{% endblock %}
|
30
emails/passwordchanged.html
Normal file
30
emails/passwordchanged.html
Normal file
|
@ -0,0 +1,30 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-weight: 400">Account password changed: <strong>{{ username }}</strong></h3>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">The password for user <strong>{{ username }}</strong> has been changed.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin-top: 25px">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">No action is required if you made this change.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0 35px">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">If you did not make this change, please <a href="https://quay.io/contact/">contact support</a>.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<span style="font-size: 13px;">Best Wishes,</span><br>
|
||||
<span style="font-size: 13px;">The {{ app_title }} Team</span><br>
|
||||
|
||||
{% endblock %}
|
30
emails/paymentfailure.html
Normal file
30
emails/paymentfailure.html
Normal file
|
@ -0,0 +1,30 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-weight: 400">Subscription payment failure: <strong>{{ username }}</strong></h3>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">A recent payment for account <strong>{{ username }}</strong> failed.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0 35px;">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">If you would like to continue to use the account <strong>{{ username }}</strong> without interruption, update your payment information.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<table style="margin: 25px 0 35px">
|
||||
<tr>
|
||||
<td style="background: #40B4E5; padding: 8px 25px; border-radius: 3px; color: #fff; font-size: 20px; font-weight: 500"><a style="text-decoration: none; color: #ffffff;" href="https://quay.io/signin/">Log in to update payment info</a>.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<span style="font-size: 13px;">Thank you,</span><br>
|
||||
<span style="font-size: 13px;">The {{ app_title }} Team</span><br>
|
||||
|
||||
{% endblock %}
|
30
emails/recovery.html
Normal file
30
emails/recovery.html
Normal file
|
@ -0,0 +1,30 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-weight: 400">Account recovery</h3>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">A user at {{ app_title }} has attempted to recover their access to the account registered to this email address.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0;">
|
||||
<tr>
|
||||
<td style="background: #40B4E5; padding: 10px; border-radius: 3px; color: #fff; font-size: 20px; font-weight: 500"><a style="text-decoration: none; color: #ffffff;" href="{{ app_link('recovery?code=' + token) }}">Recover Account</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0 35px">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">If you did not request this password reset, you can safely ignore this message and the account password and access will not change.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<span style="font-size: 13px;">Best Wishes,</span><br>
|
||||
<span style="font-size: 13px;">The {{ app_title }} Team</span><br>
|
||||
|
||||
{% endblock %}
|
30
emails/repoauthorizeemail.html
Normal file
30
emails/repoauthorizeemail.html
Normal file
|
@ -0,0 +1,30 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-weight: 400">Verify e-mail to recieve <strong>{{namespace}}/{{repository}}</strong> notifications</h3>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">A request has been made to send notifications to this email address for the repository <strong>{{namespace}}/{{repository}}</strong>.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0;">
|
||||
<tr>
|
||||
<td style="background: #40B4E5; padding: 10px; border-radius: 3px; color: #fff; font-size: 20px; font-weight: 500"><a style="text-decoration: none; color: #ffffff;" href="{{ app_link('authrepoemail?code=' + token) }}">Confirm Email</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0 35px">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">If you do not wish to receive notifications for <strong>{{namespace}}/{{repository}}</strong>, you can ignore this message.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<span style="font-size: 13px;">Thank you,</span><br>
|
||||
<span style="font-size: 13px;">The {{ app_title }} Team</span><br>
|
||||
|
||||
{% endblock %}
|
30
emails/teaminvite.html
Normal file
30
emails/teaminvite.html
Normal file
|
@ -0,0 +1,30 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<h3 style="font-weight: 400">Invitation to join team: <strong>{{ organization }}/{{ teamname }}</strong></h3>
|
||||
<hr style="border:none; border-top: 1px solid #D9D9D9; margin: 25px 0">
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="font-size: 13px;">You’ve been invited to join the team <strong>{{ teamname }}</strong> in the organization <strong>{{ organization }}</strong> by user <strong>{{ inviter | user_reference }}</strong>.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin-top: 25px">
|
||||
<tr>
|
||||
<td style="background: #40B4E5; padding: 8px 25px; border-radius: 3px; color: #fff; font-size: 20px; font-weight: 500"><a style="text-decoration: none; color: #ffffff;" href="{{ app_link('confirminvite?code=' + token) }}">Join Team</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 25px 0 35px;">
|
||||
<tr>
|
||||
<td style="font-size: 13px;">If you were not expecting this invitation, you can safely ignore this email.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<span style="font-size: 13px;">Thank you,</span><br>
|
||||
<span style="font-size: 13px;">The {{ app_title }} Team</span><br>
|
||||
|
||||
{% endblock %}
|
Reference in a new issue