mirror of
https://github.com/pretix/pretix.git
synced 2026-05-07 15:34:02 +00:00
Sendmail rules: Add "missed" state
This commit is contained in:
@@ -41,11 +41,13 @@ class ScheduledMail(models.Model):
|
||||
STATE_SCHEDULED = 'scheduled'
|
||||
STATE_FAILED = 'failed'
|
||||
STATE_COMPLETED = 'completed'
|
||||
STATE_MISSED = 'missed'
|
||||
|
||||
STATE_CHOICES = [
|
||||
(STATE_SCHEDULED, STATE_SCHEDULED),
|
||||
(STATE_FAILED, STATE_FAILED),
|
||||
(STATE_COMPLETED, STATE_COMPLETED),
|
||||
(STATE_MISSED, STATE_MISSED),
|
||||
]
|
||||
|
||||
id = models.BigAutoField(primary_key=True)
|
||||
|
||||
@@ -138,6 +138,12 @@ def sendmail_run_rules(sender, **kwargs):
|
||||
if m.computed_datetime != previous:
|
||||
m.save(update_fields=['last_computed', 'computed_datetime'])
|
||||
|
||||
mails.filter(
|
||||
state=ScheduledMail.STATE_SCHEDULED,
|
||||
computed_datetime__lte=timezone.now() - datetime.timedelta(days=2),
|
||||
).update(
|
||||
state=ScheduledMail.STATE_MISSED
|
||||
)
|
||||
for m_id in mails.filter(
|
||||
state__in=(ScheduledMail.STATE_SCHEDULED, ScheduledMail.STATE_FAILED),
|
||||
computed_datetime__gte=timezone.now() - datetime.timedelta(days=2),
|
||||
|
||||
Reference in New Issue
Block a user