Jun 29 - Update: Fail2ban, welcome email, dunning sequence, escalation

This commit is contained in:
2026-06-29 13:47:57 -04:00
parent c133b5d419
commit b00bbba2da
14 changed files with 414 additions and 1 deletions
@@ -0,0 +1,37 @@
{% extends "billing/email/base.html" %}
{% set subject = "Reminder: Payment still needed for your JQC subscription" %}
{% block body %}
<h2 style="margin:0 0 8px;font-size:1.2rem;color:#111827;">Payment reminder</h2>
<p style="margin:0 0 20px;color:#6b7280;font-size:.9rem;">
Your JQC subscription payment is still outstanding. Please update your payment
method to restore full access to your workspace.
</p>
<table width="100%" cellpadding="12" cellspacing="0" style="background:#fefce8;border-radius:6px;margin-bottom:24px;border:1px solid #fde68a;">
<tr>
<td>
<p style="margin:0;font-size:.9rem;color:#92400e;line-height:1.6;">
<strong>&#9888; Your workspace access is limited</strong> until payment is received.
Update your payment method to remove this restriction.
</p>
</td>
</tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0" style="margin-bottom:24px;">
<tr>
<td align="center">
<a href="{{ portal_url }}"
style="display:inline-block;background:#1a56db;color:#fff;text-decoration:none;
padding:12px 28px;border-radius:6px;font-size:.95rem;font-weight:600;">
Update Payment Method
</a>
</td>
</tr>
</table>
<p style="margin:0;font-size:.85rem;color:#9ca3af;">
If you have any questions, reply to this email or contact
<a href="mailto:support@jqc.app" style="color:#1a56db;">support@jqc.app</a>.
</p>
{% endblock %}