Files
Charon/backend/internal/services/templates/email_base.html
GitHub Actions 65b82a8e08 feat: add email notification provider with HTML templates
- Implemented email notification functionality in the NotificationService.
- Added support for rendering email templates based on event types.
- Created HTML templates for various notification types (security alerts, SSL events, uptime events, and system events).
- Updated the dispatchEmail method to utilize the new email templates.
- Added tests for email template rendering and fallback mechanisms.
- Enhanced documentation to include email notification setup and usage instructions.
- Introduced end-to-end tests for the email notification provider in the settings.
2026-03-07 19:54:21 +00:00

35 lines
1.7 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Charon Notification</title>
</head>
<body style="margin: 0; padding: 0; background-color: #f5f5f5; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;">
<table role="presentation" style="width: 100%; border-collapse: collapse;">
<tr>
<td style="padding: 20px 0;" align="center">
<table role="presentation" style="width: 600px; max-width: 100%; border-collapse: collapse;">
<tr>
<td style="background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%); padding: 24px 30px; border-radius: 8px 8px 0 0; text-align: center;">
<h1 style="color: #ffffff; margin: 0; font-size: 24px; font-weight: 600;">Charon</h1>
</td>
</tr>
<tr>
<td style="background: #ffffff; padding: 30px; border: 1px solid #e0e0e0; border-top: none;">
{{.Content}}
</td>
</tr>
<tr>
<td style="background: #fafafa; padding: 16px 30px; border: 1px solid #e0e0e0; border-top: none; border-radius: 0 0 8px 8px; text-align: center;">
<p style="color: #999999; font-size: 12px; margin: 0;">{{.Timestamp}}</p>
<p style="color: #999999; font-size: 12px; margin: 4px 0 0 0;">Charon Reverse Proxy Manager</p>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>