Abos: taegliche Warnung fuer ueberfaellige Abos, ohne Nachbuchung
user:make_abo_order nimmt nur Abos mit next_date = heute; faellt ein Lauf aus, bleibt ein Abo stillschweigend liegen (Abo 39: Termin 25.03.2026). abo:check-overdue meldet taeglich um 05:30 alle aktiven Abos mit Status okay und verstrichenem Termin per Mail an mivita (Link ins Admin-Abo) und ins abo_order-Log. Es wird bewusst nichts nachgebucht; --no-mail nur fuer die Ausgabe. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
bb57522b70
commit
d6d8b3d716
5 changed files with 288 additions and 0 deletions
60
resources/views/emails/abo_overdue_alert.blade.php
Normal file
60
resources/views/emails/abo_overdue_alert.blade.php
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>Überfällige Abos – mivita.care</title>
|
||||
<style type="text/css">
|
||||
td, h1, h2, h3 { font-family: Helvetica, Verdana, Arial, sans-serif; font-weight: 400; }
|
||||
body { -webkit-font-smoothing: antialiased; color: #37302d; background: #ffffff; font-size: 15px; line-height: 24px; }
|
||||
a { color: #919f7a; text-decoration: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body style="padding:0; margin:0; display:block; background:#f8f8f8;">
|
||||
<table align="left" cellpadding="0" cellspacing="0" width="100%">
|
||||
<tr>
|
||||
<td align="left" valign="top" bgcolor="#f8f8f8" width="100%">
|
||||
<br>
|
||||
<table style="margin: 0 auto;" cellpadding="10" cellspacing="0" width="700" bgcolor="#ffffff">
|
||||
<tr>
|
||||
<td style="font-size: 18px; font-weight: bold;">Überfällige Abos: {{ count($rows) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
Diese laufenden Abos haben einen Ausführungstermin in der Vergangenheit und werden vom
|
||||
nächtlichen Abo-Lauf nicht mehr ausgeführt. Es wurde nichts nachgebucht. Bitte je Abo
|
||||
entscheiden: nachliefern, Termin korrigieren oder Abo beenden.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<table cellpadding="6" cellspacing="0" width="100%" style="font-size: 13px;">
|
||||
<tr style="background:#f6fdf5;">
|
||||
<td><b>Abo</b></td>
|
||||
<td><b>Art</b></td>
|
||||
<td><b>Name</b></td>
|
||||
<td><b>Termin</b></td>
|
||||
<td><b>Tage überfällig</b></td>
|
||||
</tr>
|
||||
@foreach ($rows as $row)
|
||||
<tr>
|
||||
<td style="border-bottom:1px solid #eeeeee;"><a href="{{ $row['url'] }}">#{{ $row['id'] }}</a></td>
|
||||
<td style="border-bottom:1px solid #eeeeee;">{{ $row['is_for'] }}</td>
|
||||
<td style="border-bottom:1px solid #eeeeee;">{{ $row['name'] !== '' ? $row['name'] : '–' }}</td>
|
||||
<td style="border-bottom:1px solid #eeeeee;">{{ $row['next_date'] }}</td>
|
||||
<td style="border-bottom:1px solid #eeeeee;">{{ $row['days'] }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="color:#7B7B7E; font-size: 12px;">Automatische Meldung von <code>abo:check-overdue</code>, täglich 05:30.</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
Loading…
Add table
Add a link
Reference in a new issue