Introduces email notifications for order status changes (created, cancelled, completed, paid, missing payment, refund events) and adds corresponding HTML email templates. Refactors notification tasks to use only the order object and updates model logic to trigger notifications on relevant status changes.
54 lines
2.5 KiB
HTML
54 lines
2.5 KiB
HTML
<h3 style="color:#5cb85c; font-size:18px; margin-top:0;">✓ Refund Processed</h3>
|
|
|
|
<p>Dear {{ order.first_name }} {{ order.last_name }},</p>
|
|
|
|
<p>Excellent! Your refund has been approved and processed. The funds will appear in your account within 3-5 business days, depending on your financial institution.</p>
|
|
|
|
<h4 style="color:#333; margin-top:20px; margin-bottom:10px;">Refund Details</h4>
|
|
<table width="100%" cellpadding="8" cellspacing="0" style="border-collapse:collapse;">
|
|
<tr style="border-bottom:1px solid #ddd;">
|
|
<td style="padding:8px; font-weight:bold;">Original Order ID:</td>
|
|
<td style="padding:8px;">{{ order.id }}</td>
|
|
</tr>
|
|
<tr style="border-bottom:1px solid #ddd;">
|
|
<td style="padding:8px; font-weight:bold;">Refund Amount:</td>
|
|
<td style="padding:8px;">{{ order.total_price }} {{ order.get_currency }}</td>
|
|
</tr>
|
|
<tr style="border-bottom:1px solid #ddd;">
|
|
<td style="padding:8px; font-weight:bold;">Processing Date:</td>
|
|
<td style="padding:8px;">{{ order.updated_at|date:"d.m.Y H:i" }}</td>
|
|
</tr>
|
|
<tr>
|
|
<td style="padding:8px; font-weight:bold;">Status:</td>
|
|
<td style="padding:8px; color:#5cb85c; font-weight:bold;">✓ Completed</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4 style="color:#333; margin-top:20px; margin-bottom:10px;">Refunded Items</h4>
|
|
<table width="100%" cellpadding="10" cellspacing="0" border="1" style="border-collapse:collapse; border-color:#ddd;">
|
|
<thead>
|
|
<tr style="background-color:#f9f9f9;">
|
|
<th style="text-align:left; padding:10px; border:1px solid #ddd;">Product</th>
|
|
<th style="text-align:center; padding:10px; border:1px solid #ddd;">Qty</th>
|
|
<th style="text-align:right; padding:10px; border:1px solid #ddd;">Refund</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for item in order.items.all %}
|
|
<tr>
|
|
<td style="padding:10px; border:1px solid #ddd;">{{ item.product.name }}</td>
|
|
<td style="text-align:center; padding:10px; border:1px solid #ddd;">{{ item.quantity }}</td>
|
|
<td style="text-align:right; padding:10px; border:1px solid #ddd;">{{ item.get_total_price }} {{ order.get_currency }}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
|
|
<p style="margin-top:20px; padding:15px; background-color:#f0f8f0; border-left:4px solid #5cb85c;">
|
|
<strong>Timeline:</strong> Your refund should appear in your account within 3-5 business days. Some banks may take longer during weekends or holidays.
|
|
</p>
|
|
|
|
<p style="margin-top:20px; color:#666;">
|
|
Thank you for giving us the opportunity to serve you. If you need anything else, please don't hesitate to contact us.
|
|
</p>
|