feat(cloud): cleanup email formatting and design

This commit is contained in:
peaklabs-dev
2026-04-29 19:40:00 +02:00
parent fcc3615f03
commit 8053e15716
2 changed files with 28 additions and 26 deletions
@@ -56,6 +56,7 @@ class MaintenanceNotice extends CustomEmailNotification
'euAbbr' => $startEu->format('T'),
'durationMinutes' => $this->durationMinutes,
'subscriptionUrl' => 'https://app.coolify.io/subscription',
'subscriptionNewUrl' => 'https://app.coolify.io/subscription/new',
]);
return $mail;
@@ -9,7 +9,7 @@
<td style="padding:40px 40px 8px 40px;">
<p style="margin:0 0 8px 0;font-size:16px;line-height:1.6;color:#0f172a;font-weight:700;">Dear Coolify Cloud Customer,</p>
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#334155;">
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#0f172a;">
@if ($daysFromNow <= 0)
<strong>Today</strong> we will perform a scheduled maintenance to migrate Coolify Cloud from <strong>v4 to v5</strong>. The maintenance window:
@elseif ($daysFromNow === 1)
@@ -32,25 +32,26 @@
</tr>
<tr>
<td colspan="2" style="padding:12px 20px;border-top:1px solid #e2e8f0;font-size:13px;line-height:1.5;color:#64748b;">
Central European time: <strong style="color:#334155;">{{ $startEu }} to {{ $endEu }} {{ $euAbbr }}</strong>
Central European time: <strong style="color:#0f172a;">{{ $startEu }} to {{ $endEu }} {{ $euAbbr }}</strong>
</td>
</tr>
</table>
<p style="margin:0 0 8px 0;font-size:14px;line-height:1.6;color:#64748b;">
During the {{ $durationMinutes }}-minute window (it may complete sooner), the Coolify Cloud dashboard at <a href="https://app.coolify.io" style="color:#6366f1;text-decoration:underline;">app.coolify.io</a> will be offline and inaccessible.
<p style="margin:0 0 8px 0;font-size:15px;line-height:1.6;color:#0f172a;">
During the {{ $durationMinutes }}-minute window (it may complete sooner), the Coolify Cloud dashboard at <a href="https://app.coolify.io" style="color:#6b16ed;text-decoration:underline;">app.coolify.io</a> and the API at <a href="https://app.coolify.io/api" style="color:#6b16ed;text-decoration:underline;">app.coolify.io/api</a> will be offline and inaccessible.
</p>
<h2 style="margin:32px 0 12px 0;font-size:17px;line-height:1.4;font-weight:700;color:#0f172a;">How will this affect my service?</h2>
@if ($isInactive)
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#334155;"><strong>Your account is inactive (no active subscription for 90+ days). Unless you resubscribe before the maintenance window, your account will not be migrated to v5 and your data will be permanently deleted.</strong></p>
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#0f172a;">Your account is inactive (no active subscription for 90+ days). <strong>Unless you resubscribe before the maintenance window, your account will not be migrated to v5 and your data will be permanently deleted.</strong></p>
@else
<ul style="margin:0 0 24px 0;padding-left:20px;font-size:15px;line-height:1.7;color:#334155;">
<ul style="margin:0 0 24px 0;padding-left:20px;font-size:15px;line-height:1.7;color:#0f172a;">
@if ($hasInactiveTeams)
<li><strong>One or more of your teams are inactive (no active subscription for 90+ days). Inactive teams will not be migrated to v5 and their data will be permanently deleted.</strong></li>
<li>One or more of your teams are inactive (no active subscription for 90+ days). <strong>Inactive teams will not be migrated to v5 and their data will be permanently deleted.</strong></li>
@endif
<li>All your existing deployments, resources and servers will keep running as normal, <strong>so your public websites and services will continue to be fully accessible.</strong></li>
<li>No deployments can be triggered (this includes auto-deployments on commit) and no configuration changes can be made during the maintenance window.</li>
<li>No deployments can be triggered during the maintenance window (this includes auto-deployments on commits).</li>
<li>No configuration changes can be made during the maintenance window.</li>
<li>You will be logged out and need to re-authenticate on your next visit.</li>
</ul>
@endif
@@ -58,47 +59,47 @@
<h2 style="margin:32px 0 12px 0;font-size:17px;line-height:1.4;font-weight:700;color:#0f172a;">Are there any required actions I need to take?</h2>
@if ($isInactive)
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#334155;"><strong>Yes.</strong> Resubscribe before the maintenance window to keep your account: <a href="{{ $subscriptionUrl }}" style="color:#6366f1;text-decoration:underline;">{{ $subscriptionUrl }}</a></p>
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#0f172a;"><strong>Yes.</strong> Resubscribe before the maintenance window to keep your account: <a href="{{ $subscriptionNewUrl }}" style="color:#6b16ed;text-decoration:underline;">resubscribe here</a>.</p>
@else
@if ($hasInactiveTeams)
<p style="margin:0 0 8px 0;font-size:15px;line-height:1.6;color:#334155;">Before the maintenance window: <strong>Yes.</strong></p>
<ul style="margin:0 0 16px 0;padding-left:20px;font-size:15px;line-height:1.7;color:#334155;">
<li>To keep your inactive team(s) and their data, resubscribe before the maintenance window: <a href="{{ $subscriptionUrl }}" style="color:#6366f1;text-decoration:underline;">{{ $subscriptionUrl }}</a></li>
<li>A few recommended preparations are also listed in the <a href="https://coolify.io/docs/v5-migration/preparation" style="color:#6366f1;text-decoration:underline;">v5 preparation guide</a>.</li>
<p style="margin:0 0 8px 0;font-size:15px;line-height:1.6;color:#0f172a;">Before the maintenance window: <strong>Yes.</strong></p>
<ul style="margin:0 0 16px 0;padding-left:20px;font-size:15px;line-height:1.7;color:#0f172a;">
<li>To keep your inactive team(s) and their data, resubscribe before the maintenance window: <a href="{{ $subscriptionUrl }}" style="color:#6b16ed;text-decoration:underline;">manage your subscription</a>.</li>
<li>A few recommended preparations are also listed in the <a href="#" style="color:#6b16ed;text-decoration:underline;">v5 preparation guide</a>.</li>
</ul>
@else
<p style="margin:0 0 8px 0;font-size:15px;line-height:1.6;color:#334155;">Before the maintenance window: <strong>No.</strong></p>
<ul style="margin:0 0 16px 0;padding-left:20px;font-size:15px;line-height:1.7;color:#334155;">
<li>A few recommended preparations are listed in the <a href="https://coolify.io/docs/v5-migration/preparation" style="color:#6366f1;text-decoration:underline;">v5 preparation guide</a>.</li>
<p style="margin:0 0 8px 0;font-size:15px;line-height:1.6;color:#0f172a;">Before the maintenance window: <strong>No.</strong></p>
<ul style="margin:0 0 16px 0;padding-left:20px;font-size:15px;line-height:1.7;color:#0f172a;">
<li>A few recommended preparations are listed in the <a href="#" style="color:#6b16ed;text-decoration:underline;">v5 preparation guide</a>.</li>
</ul>
@endif
<p style="margin:0 0 8px 0;font-size:15px;line-height:1.6;color:#334155;">After the maintenance window: <strong>Yes</strong> (~10 minutes of work for most users):</p>
<ul style="margin:0 0 8px 0;padding-left:20px;font-size:15px;line-height:1.7;color:#334155;">
<li>Log in again.</li>
<p style="margin:0 0 8px 0;font-size:15px;line-height:1.6;color:#0f172a;">After the maintenance window: <strong>Yes</strong> (~10 minutes of work for most users):</p>
<ul style="margin:0 0 8px 0;padding-left:20px;font-size:15px;line-height:1.7;color:#0f172a;">
<li><a href="https://app.coolify.io/login" style="color:#6b16ed;text-decoration:underline;">Login</a> again.</li>
<li>Update all your servers from the dashboard.</li>
<li>Check each app's configuration for correctness.</li>
<li>Redeploy each application once to move it to the new deployment architecture (auto-deployments on commit are disabled until this step is completed).</li>
<li>Redeploy each application once to move it to the new deployment architecture (auto-deployments on commits are disabled until this step is completed).</li>
</ul>
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#334155;">Full details in the <a href="https://coolify.io/docs/v5-migration/upgrade-guide" style="color:#6366f1;text-decoration:underline;font-weight:700;">v5 upgrade guide</a>.</p>
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#0f172a;">Full details in the <a href="#" style="color:#6b16ed;text-decoration:underline;font-weight:700;">v5 upgrade guide</a>.</p>
@endif
<h2 style="margin:32px 0 12px 0;font-size:17px;line-height:1.4;font-weight:700;color:#0f172a;">Can I reschedule or avoid this maintenance window?</h2>
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#334155;">
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#0f172a;">
No. This is a required migration to a more reliable, modern and improved Coolify architecture and applies to all Cloud customers.
</p>
<h2 style="margin:32px 0 12px 0;font-size:17px;line-height:1.4;font-weight:700;color:#0f172a;">Questions?</h2>
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#334155;">
Reach out to us in the <strong>#migration</strong> channel on <a href="https://coolify.io/discord" style="color:#6366f1;text-decoration:underline;">Discord</a> or simply reply to this email.
<p style="margin:0 0 24px 0;font-size:15px;line-height:1.6;color:#0f172a;">
Reach out to us in the <a href="#" style="color:#6b16ed;text-decoration:underline;font-weight:700;">migration</a> channel on the <a href="#" style="color:#6b16ed;text-decoration:underline;">coolLabs Discord</a> or simply reply to this email.
</p>
<p style="margin:32px 0 0 0;font-size:14px;line-height:1.6;color:#334155;">Thanks,<br>The Coolify Team</p>
<p style="margin:32px 0 0 0;font-size:15px;line-height:1.6;color:#0f172a;">Thanks,<br>The Coolify Team</p>
</td>
</tr>
<tr>
<td style="padding:24px 40px 32px 40px;border-top:1px solid #f1f5f9;">
<p style="margin:0;font-size:12px;line-height:1.5;color:#94a3b8;">You're receiving this email because you have a Coolify Cloud account at <a href="https://coolify.io" style="color:#94a3b8;text-decoration:underline;">coolify.io</a>.</p>
<p style="margin:0;font-size:12px;line-height:1.5;color:#64748b;">You're receiving this email because you have a Coolify Cloud account at <a href="https://coolify.io" style="color:#64748b;text-decoration:underline;">coolify.io</a>.</p>
</td>
</tr>
</table>