Skip to content
Snippets Groups Projects
Commit 0d7f7870 authored by Nadja Geisler's avatar Nadja Geisler :sunny:
Browse files

Merge branch 'fix-event-inactive' into 'master'

Prevent creating and editing in submission for inactive events

Closes #21

See merge request kif/akplanning!25
parents 46adcb58 8ada54c9
No related branches found
No related tags found
1 merge request!25Prevent creating and editing in submission for inactive events
...@@ -2,7 +2,7 @@ msgid "" ...@@ -2,7 +2,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-05-11 20:45+0000\n" "POT-Creation-Date: 2020-05-11 22:27+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
......
...@@ -8,7 +8,7 @@ msgid "" ...@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-05-11 20:45+0000\n" "POT-Creation-Date: 2020-05-11 22:27+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -40,31 +40,31 @@ msgstr "Veranstaltung" ...@@ -40,31 +40,31 @@ msgstr "Veranstaltung"
msgid "Room" msgid "Room"
msgstr "Raum" msgstr "Raum"
#: AKPlan/templates/AKPlan/plan_index.html:81 #: AKPlan/templates/AKPlan/plan_index.html:82
#: AKPlan/templates/AKPlan/plan_room.html:34 #: AKPlan/templates/AKPlan/plan_room.html:34
msgid "Rooms" msgid "Rooms"
msgstr "Räume" msgstr "Räume"
#: AKPlan/templates/AKPlan/plan_index.html:91 #: AKPlan/templates/AKPlan/plan_index.html:94
#: AKPlan/templates/AKPlan/plan_track.html:34 #: AKPlan/templates/AKPlan/plan_track.html:34
msgid "Tracks" msgid "Tracks"
msgstr "Tracks" msgstr "Tracks"
#: AKPlan/templates/AKPlan/plan_index.html:102 #: AKPlan/templates/AKPlan/plan_index.html:106
msgid "AK Wall" msgid "AK Wall"
msgstr "AK-Wall" msgstr "AK-Wall"
#: AKPlan/templates/AKPlan/plan_index.html:114 #: AKPlan/templates/AKPlan/plan_index.html:118
#: AKPlan/templates/AKPlan/plan_wall.html:88 #: AKPlan/templates/AKPlan/plan_wall.html:88
msgid "Current AKs" msgid "Current AKs"
msgstr "Aktuelle AKs" msgstr "Aktuelle AKs"
#: AKPlan/templates/AKPlan/plan_index.html:121 #: AKPlan/templates/AKPlan/plan_index.html:125
#: AKPlan/templates/AKPlan/plan_wall.html:93 #: AKPlan/templates/AKPlan/plan_wall.html:93
msgid "Next AKs" msgid "Next AKs"
msgstr "Nächste AKs" msgstr "Nächste AKs"
#: AKPlan/templates/AKPlan/plan_index.html:129 #: AKPlan/templates/AKPlan/plan_index.html:133
msgid "This event is not active." msgid "This event is not active."
msgstr "Dieses Event ist nicht aktiv." msgstr "Dieses Event ist nicht aktiv."
......
...@@ -8,7 +8,7 @@ msgid "" ...@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-05-10 16:22+0000\n" "POT-Creation-Date: 2020-05-11 22:27+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -17,10 +17,10 @@ msgstr "" ...@@ -17,10 +17,10 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: AKPlanning/settings.py:126 #: AKPlanning/settings.py:127
msgid "German" msgid "German"
msgstr "Deutsch" msgstr "Deutsch"
#: AKPlanning/settings.py:127 #: AKPlanning/settings.py:128
msgid "English" msgid "English"
msgstr "Englisch" msgstr "Englisch"
...@@ -8,7 +8,7 @@ msgid "" ...@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-05-11 20:45+0000\n" "POT-Creation-Date: 2020-05-11 22:27+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -73,64 +73,64 @@ msgstr "AK-Eintragung" ...@@ -73,64 +73,64 @@ msgstr "AK-Eintragung"
msgid "Interest" msgid "Interest"
msgstr "Interesse" msgstr "Interesse"
#: AKSubmission/templates/AKSubmission/ak_detail.html:43 #: AKSubmission/templates/AKSubmission/ak_detail.html:45
#: AKSubmission/templates/AKSubmission/ak_list_table.html:32 #: AKSubmission/templates/AKSubmission/ak_list_table.html:32
msgid "AK Wish" msgid "AK Wish"
msgstr "AK-Wunsch" msgstr "AK-Wunsch"
#: AKSubmission/templates/AKSubmission/ak_detail.html:47 #: AKSubmission/templates/AKSubmission/ak_detail.html:49
#: AKSubmission/templates/AKSubmission/ak_list_table.html:10 #: AKSubmission/templates/AKSubmission/ak_list_table.html:10
msgid "Who?" msgid "Who?"
msgstr "Wer?" msgstr "Wer?"
#: AKSubmission/templates/AKSubmission/ak_detail.html:51 #: AKSubmission/templates/AKSubmission/ak_detail.html:53
#: AKSubmission/templates/AKSubmission/ak_list_table.html:11 #: AKSubmission/templates/AKSubmission/ak_list_table.html:11
msgid "Category" msgid "Category"
msgstr "Kategorie" msgstr "Kategorie"
#: AKSubmission/templates/AKSubmission/ak_detail.html:57 #: AKSubmission/templates/AKSubmission/ak_detail.html:59
msgid "Present this AK" msgid "Present this AK"
msgstr "Diesen AK vorstellen" msgstr "Diesen AK vorstellen"
#: AKSubmission/templates/AKSubmission/ak_detail.html:61 #: AKSubmission/templates/AKSubmission/ak_detail.html:63
#: AKSubmission/templates/AKSubmission/ak_list_table.html:12 #: AKSubmission/templates/AKSubmission/ak_list_table.html:12
msgid "Tags" msgid "Tags"
msgstr "Tags" msgstr "Tags"
#: AKSubmission/templates/AKSubmission/ak_detail.html:67 #: AKSubmission/templates/AKSubmission/ak_detail.html:69
msgid "Reso?" msgid "Reso?"
msgstr "Reso?" msgstr "Reso?"
#: AKSubmission/templates/AKSubmission/ak_detail.html:74 #: AKSubmission/templates/AKSubmission/ak_detail.html:76
msgid "Requirements" msgid "Requirements"
msgstr "Anforderungen" msgstr "Anforderungen"
#: AKSubmission/templates/AKSubmission/ak_detail.html:87 #: AKSubmission/templates/AKSubmission/ak_detail.html:89
msgid "Conflicting AKs" msgid "Conflicting AKs"
msgstr "AK Konflikte" msgstr "AK Konflikte"
#: AKSubmission/templates/AKSubmission/ak_detail.html:95 #: AKSubmission/templates/AKSubmission/ak_detail.html:97
msgid "Prerequisite AKs" msgid "Prerequisite AKs"
msgstr "AK Voraussetzungen" msgstr "AK Voraussetzungen"
#: AKSubmission/templates/AKSubmission/ak_detail.html:103 #: AKSubmission/templates/AKSubmission/ak_detail.html:105
msgid "Notes" msgid "Notes"
msgstr "Notizen" msgstr "Notizen"
#: AKSubmission/templates/AKSubmission/ak_detail.html:120 #: AKSubmission/templates/AKSubmission/ak_detail.html:122
msgid "When?" msgid "When?"
msgstr "Wann?" msgstr "Wann?"
#: AKSubmission/templates/AKSubmission/ak_detail.html:121 #: AKSubmission/templates/AKSubmission/ak_detail.html:123
#: AKSubmission/templates/AKSubmission/akslot_delete.html:35 #: AKSubmission/templates/AKSubmission/akslot_delete.html:35
msgid "Duration" msgid "Duration"
msgstr "Dauer" msgstr "Dauer"
#: AKSubmission/templates/AKSubmission/ak_detail.html:122 #: AKSubmission/templates/AKSubmission/ak_detail.html:124
msgid "Room" msgid "Room"
msgstr "Raum" msgstr "Raum"
#: AKSubmission/templates/AKSubmission/ak_detail.html:148 #: AKSubmission/templates/AKSubmission/ak_detail.html:150
msgid "Add another slot" msgid "Add another slot"
msgstr "Einen neuen AK-Slot hinzufügen" msgstr "Einen neuen AK-Slot hinzufügen"
...@@ -270,38 +270,42 @@ msgstr "" ...@@ -270,38 +270,42 @@ msgstr ""
"AKs die sich gewünscht wurden, aber bei denen noch nicht klar ist, wer sie " "AKs die sich gewünscht wurden, aber bei denen noch nicht klar ist, wer sie "
"macht. Falls du dir das vorstellen kannst, trag dich einfach ein" "macht. Falls du dir das vorstellen kannst, trag dich einfach ein"
#: AKSubmission/views.py:113 #: AKSubmission/views.py:109
msgid "Event inactive. Cannot create or update."
msgstr "Event inaktiv. Hinzufügen/Bearbeiten nicht möglich."
#: AKSubmission/views.py:125
msgid "AK successfully created" msgid "AK successfully created"
msgstr "AK erfolgreich angelegt" msgstr "AK erfolgreich angelegt"
#: AKSubmission/views.py:166 #: AKSubmission/views.py:183
msgid "AK successfully updated" msgid "AK successfully updated"
msgstr "AK erfolgreich aktualisiert" msgstr "AK erfolgreich aktualisiert"
#: AKSubmission/views.py:233 #: AKSubmission/views.py:261
msgid "Person Info successfully updated" msgid "Person Info successfully updated"
msgstr "Personen-Info erfolgreich aktualisiert" msgstr "Personen-Info erfolgreich aktualisiert"
#: AKSubmission/views.py:246 #: AKSubmission/views.py:281
msgid "No user selected" msgid "No user selected"
msgstr "Keine Person ausgewählt" msgstr "Keine Person ausgewählt"
#: AKSubmission/views.py:272 #: AKSubmission/views.py:307
msgid "AK Slot successfully added" msgid "AK Slot successfully added"
msgstr "AK-Slot erfolgreich angelegt" msgstr "AK-Slot erfolgreich angelegt"
#: AKSubmission/views.py:286 #: AKSubmission/views.py:321
msgid "You cannot edit a slot that has already been scheduled" msgid "You cannot edit a slot that has already been scheduled"
msgstr "Bereits geplante AK-Slots können nicht mehr bearbeitet werden" msgstr "Bereits geplante AK-Slots können nicht mehr bearbeitet werden"
#: AKSubmission/views.py:296 #: AKSubmission/views.py:331
msgid "AK Slot successfully updated" msgid "AK Slot successfully updated"
msgstr "AK-Slot erfolgreich aktualisiert" msgstr "AK-Slot erfolgreich aktualisiert"
#: AKSubmission/views.py:309 #: AKSubmission/views.py:344
msgid "You cannot delete a slot that has already been scheduled" msgid "You cannot delete a slot that has already been scheduled"
msgstr "Bereits geplante AK-Slots können nicht mehr gelöscht werden" msgstr "Bereits geplante AK-Slots können nicht mehr gelöscht werden"
#: AKSubmission/views.py:319 #: AKSubmission/views.py:354
msgid "AK Slot successfully deleted" msgid "AK Slot successfully deleted"
msgstr "AK-Slot erfolgreich angelegt" msgstr "AK-Slot erfolgreich angelegt"
...@@ -28,8 +28,10 @@ ...@@ -28,8 +28,10 @@
<div class="float-right"> <div class="float-right">
{% if ak.interest_counter >= 0 %} {% if ak.interest_counter >= 0 %}
{% trans 'Interest' %}: <b class='mx-1 text-muted'>{{ ak.interest_counter }}</b> {% trans 'Interest' %}: <b class='mx-1 text-muted'>{{ ak.interest_counter }}</b>
<a href="{% url 'submit:inc_interest' event_slug=ak.event.slug pk=ak.pk %}" {% if ak.event.active %}
class="btn btn-primary">{% fa5_icon 'thumbs-up' 'fas' %}</a> <a href="{% url 'submit:inc_interest' event_slug=ak.event.slug pk=ak.pk %}"
class="btn btn-primary">{% fa5_icon 'thumbs-up' 'fas' %}</a>
{% endif %}
{% endif %} {% endif %}
{% if ak.link != "" %} {% if ak.link != "" %}
<a href="{{ ak.link }}" class="btn btn-info">{% fa5_icon 'external-link-alt' 'fas' %}</a> <a href="{{ ak.link }}" class="btn btn-info">{% fa5_icon 'external-link-alt' 'fas' %}</a>
......
...@@ -104,7 +104,19 @@ class AKListByTrackView(AKListView): ...@@ -104,7 +104,19 @@ class AKListByTrackView(AKListView):
return super().get_queryset().filter(track=self.track) return super().get_queryset().filter(track=self.track)
class AKAndAKWishSubmissionView(EventSlugMixin, CreateView): class EventInactiveRedirectMixin:
def get_error_message(self):
return _("Event inactive. Cannot create or update.")
def get(self, request, *args, **kwargs):
s = super().get(request, *args, **kwargs)
if not self.event.active:
messages.add_message(self.request, messages.ERROR, self.get_error_message())
return redirect(reverse_lazy('submit:submission_overview', kwargs={'event_slug': self.event.slug}))
return s
class AKAndAKWishSubmissionView(EventSlugMixin, EventInactiveRedirectMixin, CreateView):
model = AK model = AK
template_name = 'AKSubmission/submit_new.html' template_name = 'AKSubmission/submit_new.html'
form_class = AKSubmissionForm form_class = AKSubmissionForm
...@@ -114,6 +126,11 @@ class AKAndAKWishSubmissionView(EventSlugMixin, CreateView): ...@@ -114,6 +126,11 @@ class AKAndAKWishSubmissionView(EventSlugMixin, CreateView):
return reverse_lazy('submit:ak_detail', kwargs={'event_slug': self.kwargs['event_slug'], 'pk': self.object.pk}) return reverse_lazy('submit:ak_detail', kwargs={'event_slug': self.kwargs['event_slug'], 'pk': self.object.pk})
def form_valid(self, form): def form_valid(self, form):
if not form.cleaned_data["event"].active:
messages.add_message(self.request, messages.ERROR, self.get_error_message())
return redirect(reverse_lazy('submit:submission_overview',
kwargs={'event_slug': form.cleaned_data["event"].slug}))
super_form_valid = super().form_valid(form) super_form_valid = super().form_valid(form)
# Generate wiki link # Generate wiki link
...@@ -157,7 +174,7 @@ class AKWishSubmissionView(AKAndAKWishSubmissionView): ...@@ -157,7 +174,7 @@ class AKWishSubmissionView(AKAndAKWishSubmissionView):
return initials return initials
class AKEditView(EventSlugMixin, UpdateView): class AKEditView(EventSlugMixin, EventInactiveRedirectMixin, UpdateView):
model = AK model = AK
template_name = 'AKSubmission/ak_edit.html' template_name = 'AKSubmission/ak_edit.html'
form_class = AKEditForm form_class = AKEditForm
...@@ -167,6 +184,11 @@ class AKEditView(EventSlugMixin, UpdateView): ...@@ -167,6 +184,11 @@ class AKEditView(EventSlugMixin, UpdateView):
return reverse_lazy('submit:ak_detail', kwargs={'event_slug': self.kwargs['event_slug'], 'pk': self.object.pk}) return reverse_lazy('submit:ak_detail', kwargs={'event_slug': self.kwargs['event_slug'], 'pk': self.object.pk})
def form_valid(self, form): def form_valid(self, form):
if not form.cleaned_data["event"].active:
messages.add_message(self.request, messages.ERROR, self.get_error_message())
return redirect(reverse_lazy('submit:submission_overview',
kwargs={'event_slug': form.cleaned_data["event"].slug}))
super_form_valid = super().form_valid(form) super_form_valid = super().form_valid(form)
# Detach existing tags # Detach existing tags
...@@ -186,13 +208,12 @@ class AKInterestView(RedirectView): ...@@ -186,13 +208,12 @@ class AKInterestView(RedirectView):
def get_redirect_url(self, *args, **kwargs): def get_redirect_url(self, *args, **kwargs):
ak = get_object_or_404(AK, pk=kwargs['pk']) ak = get_object_or_404(AK, pk=kwargs['pk'])
ak.increment_interest() if ak.event.active:
ak.increment_interest()
return super().get_redirect_url(*args, **kwargs) return super().get_redirect_url(*args, **kwargs)
pass
class AKOwnerCreateView(EventSlugMixin, EventInactiveRedirectMixin, CreateView):
class AKOwnerCreateView(EventSlugMixin, CreateView):
model = AKOwner model = AKOwner
template_name = 'AKSubmission/akowner_create_update.html' template_name = 'AKSubmission/akowner_create_update.html'
form_class = AKOwnerForm form_class = AKOwnerForm
...@@ -206,6 +227,13 @@ class AKOwnerCreateView(EventSlugMixin, CreateView): ...@@ -206,6 +227,13 @@ class AKOwnerCreateView(EventSlugMixin, CreateView):
initials['event'] = self.event initials['event'] = self.event
return initials return initials
def form_valid(self, form):
if not form.cleaned_data["event"].active:
messages.add_message(self.request, messages.ERROR, self.get_error_message())
return redirect(reverse_lazy('submit:submission_overview',
kwargs={'event_slug': form.cleaned_data["event"].slug}))
return super().form_valid(form)
class AKOwnerSelectDispatchView(EventSlugMixin, View): class AKOwnerSelectDispatchView(EventSlugMixin, View):
""" """
...@@ -224,7 +252,7 @@ class AKOwnerSelectDispatchView(EventSlugMixin, View): ...@@ -224,7 +252,7 @@ class AKOwnerSelectDispatchView(EventSlugMixin, View):
reverse_lazy('submit:submit_ak', kwargs={'event_slug': kwargs['event_slug'], 'owner_slug': owner.slug})) reverse_lazy('submit:submit_ak', kwargs={'event_slug': kwargs['event_slug'], 'owner_slug': owner.slug}))
class AKOwnerEditView(FilterByEventSlugMixin, UpdateView): class AKOwnerEditView(FilterByEventSlugMixin, EventSlugMixin, UpdateView):
model = AKOwner model = AKOwner
template_name = "AKSubmission/akowner_create_update.html" template_name = "AKSubmission/akowner_create_update.html"
form_class = AKOwnerForm form_class = AKOwnerForm
...@@ -233,6 +261,13 @@ class AKOwnerEditView(FilterByEventSlugMixin, UpdateView): ...@@ -233,6 +261,13 @@ class AKOwnerEditView(FilterByEventSlugMixin, UpdateView):
messages.add_message(self.request, messages.SUCCESS, _("Person Info successfully updated")) messages.add_message(self.request, messages.SUCCESS, _("Person Info successfully updated"))
return reverse_lazy('submit:submission_overview', kwargs={'event_slug': self.kwargs['event_slug']}) return reverse_lazy('submit:submission_overview', kwargs={'event_slug': self.kwargs['event_slug']})
def form_valid(self, form):
if not form.cleaned_data["event"].active:
messages.add_message(self.request, messages.ERROR, self.get_error_message())
return redirect(reverse_lazy('submit:submission_overview',
kwargs={'event_slug': form.cleaned_data["event"].slug}))
return super().form_valid(form)
class AKOwnerEditDispatchView(EventSlugMixin, View): class AKOwnerEditDispatchView(EventSlugMixin, View):
""" """
...@@ -252,7 +287,7 @@ class AKOwnerEditDispatchView(EventSlugMixin, View): ...@@ -252,7 +287,7 @@ class AKOwnerEditDispatchView(EventSlugMixin, View):
reverse_lazy('submit:akowner_edit', kwargs={'event_slug': kwargs['event_slug'], 'slug': owner.slug})) reverse_lazy('submit:akowner_edit', kwargs={'event_slug': kwargs['event_slug'], 'slug': owner.slug}))
class AKSlotAddView(EventSlugMixin, CreateView): class AKSlotAddView(EventSlugMixin, EventInactiveRedirectMixin, CreateView):
model = AKSlot model = AKSlot
form_class = AKDurationForm form_class = AKDurationForm
template_name = "AKSubmission/akslot_add_update.html" template_name = "AKSubmission/akslot_add_update.html"
...@@ -274,7 +309,7 @@ class AKSlotAddView(EventSlugMixin, CreateView): ...@@ -274,7 +309,7 @@ class AKSlotAddView(EventSlugMixin, CreateView):
kwargs={'event_slug': self.kwargs['event_slug'], 'pk': self.object.ak.pk}) kwargs={'event_slug': self.kwargs['event_slug'], 'pk': self.object.ak.pk})
class AKSlotEditView(EventSlugMixin, UpdateView): class AKSlotEditView(EventSlugMixin, EventInactiveRedirectMixin, UpdateView):
model = AKSlot model = AKSlot
form_class = AKDurationForm form_class = AKDurationForm
template_name = "AKSubmission/akslot_add_update.html" template_name = "AKSubmission/akslot_add_update.html"
...@@ -298,7 +333,7 @@ class AKSlotEditView(EventSlugMixin, UpdateView): ...@@ -298,7 +333,7 @@ class AKSlotEditView(EventSlugMixin, UpdateView):
kwargs={'event_slug': self.kwargs['event_slug'], 'pk': self.object.ak.pk}) kwargs={'event_slug': self.kwargs['event_slug'], 'pk': self.object.ak.pk})
class AKSlotDeleteView(EventSlugMixin, DeleteView): class AKSlotDeleteView(EventSlugMixin, EventInactiveRedirectMixin, DeleteView):
model = AKSlot model = AKSlot
template_name = "AKSubmission/akslot_delete.html" template_name = "AKSubmission/akslot_delete.html"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment