Merge pull request 'FIX #4' (#33) from heinzel into master
Some checks failed
buildbot/tox Build done.

Reviewed-on: #33
This commit was merged in pull request #33.
This commit is contained in:
2020-12-18 15:40:11 +01:00

View File

@@ -688,6 +688,31 @@ class EventCreateView(EventPermissionMixin, generic.FormView):
return self.render_to_response(self.get_context_data(form=next_form, event=event))
else:
event.editor = self.request.user
# Check for double submission (seems to happens accidentally if smartphone user reload the submit page)
possible_doublets = models.Event.objects.filter(owner=event.editor,
title=event.title,
first_day=event.first_day)
if possible_doublets.exists():
accident_period = datetime.datetime.now() - datetime.timedelta(hours=24)
possible_doublets = possible_doublets.filter(created_at__gt=accident_period)
if possible_doublets.exists():
doublet = possible_doublets.first()
doublet_created_at = doublet.created_at.strftime('%d.%m.%Y %H:%M:%S')
error_msg = _(u'Du hast bereits eine Veranstaltung'
u' mit dem Titel "%(title)s"'
u' für das Datum %(day)s angelegt'
u' (am %(created_at)s).') % {'title': event.title,
'day': event.first_day,
'created_at': doublet_created_at}
warn_msg = _(u'Deine eingegebenen Daten sind noch da,'
u' wenn du jetzt auf "Neue Veranstaltung anlegen" klickst.'
u' Du musst aber entweder den Titel oder das Startdatum ändern,'
u' um die Veranstaltung anlegen zu können.')
messages.error(self.request, error_msg)
messages.warning(self.request, warn_msg)
return HttpResponseRedirect(reverse('dav_events:list'))
event.save()
if 'submit' in form.data:
event.workflow.update_status('submitted', event.owner)