Export schedule: Fix computation of start time on same day

This commit is contained in:
Raphael Michel
2023-01-19 14:34:15 +01:00
parent 4d75438a11
commit 8b74f791f4
4 changed files with 19 additions and 4 deletions

View File

@@ -94,7 +94,12 @@ class AbstractScheduledExport(LoggedModel):
def compute_next_run(self):
tz = self.tz
r = rrulestr(self.schedule_rrule)
new_d = r.after(now().astimezone(tz).replace(tzinfo=None), inc=False)
base_dt = now().astimezone(tz).replace(tzinfo=None)
if now().astimezone(tz).time() < self.schedule_rrule_time:
base_dt -= timedelta(days=1)
new_d = r.after(base_dt, inc=False)
if not new_d:
self.schedule_next_run = None
return

View File

@@ -2484,8 +2484,9 @@ class RunScheduledExportView(EventPermissionRequiredMixin, ExportMixin, View):
messages.success(self.request, _('Your export is queued to start soon. The results will be send via email. '
'Depending on system load and type and size of export, this may take a few '
'minutes.'))
return redirect(reverse('control:organizer.export', kwargs={
'organizer': self.request.organizer.slug
return redirect(reverse('control:event.orders.export', kwargs={
'event': self.request.event.slug,
'organizer': self.request.event.organizer.slug
}))