Rustelo/templates/email/en_/html/notification.hbs
2025-07-07 23:07:55 +01:00

182 lines
5.1 KiB
Handlebars

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{title}}</title>
<style>
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
line-height: 1.6;
color: #333;
max-width: 600px;
margin: 0 auto;
padding: 20px;
background-color: #f8f9fa;
}
.container {
background-color: #ffffff;
border-radius: 8px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
overflow: hidden;
}
.header {
background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
color: white;
padding: 30px;
text-align: center;
}
.header h1 {
margin: 0;
font-size: 28px;
font-weight: 600;
}
.header .icon {
font-size: 48px;
margin-bottom: 15px;
}
.content {
padding: 30px;
}
.message {
background-color: #f8f9fa;
border-left: 4px solid #007bff;
padding: 20px;
margin-bottom: 20px;
border-radius: 0 6px 6px 0;
}
.message p {
margin: 0;
font-size: 16px;
line-height: 1.6;
}
.additional-content {
background-color: #fff;
border: 1px solid #dee2e6;
border-radius: 6px;
padding: 20px;
margin-top: 20px;
}
.additional-content h3 {
margin: 0 0 15px 0;
color: #495057;
font-size: 18px;
font-weight: 600;
}
.additional-content .content-body {
color: #212529;
line-height: 1.6;
}
.footer {
background-color: #f8f9fa;
padding: 20px;
text-align: center;
border-top: 1px solid #dee2e6;
}
.footer p {
margin: 0;
color: #6c757d;
font-size: 14px;
}
.timestamp {
margin-top: 20px;
padding-top: 20px;
border-top: 1px solid #dee2e6;
text-align: center;
color: #6c757d;
font-size: 14px;
}
.alert {
padding: 15px;
margin-bottom: 20px;
border: 1px solid transparent;
border-radius: 6px;
}
.alert-info {
color: #0c5460;
background-color: #d1ecf1;
border-color: #bee5eb;
}
.alert-warning {
color: #856404;
background-color: #fff3cd;
border-color: #ffeaa7;
}
.alert-success {
color: #155724;
background-color: #d4edda;
border-color: #c3e6cb;
}
.alert-danger {
color: #721c24;
background-color: #f8d7da;
border-color: #f5c6cb;
}
@media (max-width: 600px) {
body {
padding: 10px;
}
.header, .content {
padding: 20px;
}
.header h1 {
font-size: 24px;
}
.header .icon {
font-size: 36px;
}
}
</style>
</head>
<body>
<div class="container">
<div class="header">
<div class="icon">🔔</div>
<h1>{{title}}</h1>
</div>
<div class="content">
{{#if type}}
<div class="alert alert-{{type}}">
<strong>{{capitalize type}}:</strong> This is a {{type}} notification.
</div>
{{/if}}
<div class="message">
<p>{{message}}</p>
</div>
{{#if content}}
<div class="additional-content">
<h3>Additional Information</h3>
<div class="content-body">
{{{content}}}
</div>
</div>
{{/if}}
{{#if action_url}}
<div style="text-align: center; margin: 30px 0;">
<a href="{{action_url}}" style="display: inline-block; padding: 12px 24px; background-color: #007bff; color: white; text-decoration: none; border-radius: 6px; font-weight: 600;">
{{default action_text "Take Action"}}
</a>
</div>
{{/if}}
<div class="timestamp">
<p>Sent on {{date_format (default timestamp "now") "%B %d, %Y at %I:%M %p UTC"}}</p>
</div>
</div>
<div class="footer">
<p>This is an automated notification. Please do not reply to this email.</p>
{{#if unsubscribe_url}}
<p style="margin-top: 10px;">
<a href="{{unsubscribe_url}}" style="color: #6c757d; font-size: 12px;">Unsubscribe from notifications</a>
</p>
{{/if}}
</div>
</div>
</body>
</html>