From 9d077af5cfc4a51209029d8e08c5fe608e5fa213 Mon Sep 17 00:00:00 2001 From: Magnus Hagander Date: Thu, 11 Oct 2018 12:51:35 +0200 Subject: [PATCH] Make it possible for superusers to edit tshirt sizes metadata --- postgresqleu/confreg/backendforms.py | 8 ++++++++ postgresqleu/confreg/backendviews.py | 15 +++++++++++++++ postgresqleu/urls.py | 1 + template/confreg/admin_dashboard.html | 3 +++ 4 files changed, 27 insertions(+) diff --git a/postgresqleu/confreg/backendforms.py b/postgresqleu/confreg/backendforms.py index 606c367..3377951 100644 --- a/postgresqleu/confreg/backendforms.py +++ b/postgresqleu/confreg/backendforms.py @@ -23,6 +23,7 @@ from postgresqleu.confreg.models import ConferenceSessionScheduleSlot, Volunteer from postgresqleu.confreg.models import DiscountCode, AccessToken, AccessTokenPermissions from postgresqleu.confreg.models import ConferenceSeries from postgresqleu.confreg.models import ConferenceNews +from postgresqleu.confreg.models import ShirtSize from postgresqleu.newsevents.models import NewsPosterProfile from postgresqleu.confreg.models import valid_status_transitions, get_status_string @@ -224,6 +225,13 @@ class BackendConferenceSeriesForm(BackendForm): model = ConferenceSeries fields = ['name', 'sortkey', 'intro', ] +class BackendTshirtSizeForm(BackendForm): + helplink = "meta" + list_fields = ['shirtsize', 'sortkey', ] + class Meta: + model = ShirtSize + fields = ['shirtsize', 'sortkey', ] + class BackendRegistrationForm(BackendForm): helplink = "registrations" class Meta: diff --git a/postgresqleu/confreg/backendviews.py b/postgresqleu/confreg/backendviews.py index c790803..35b72f9 100644 --- a/postgresqleu/confreg/backendviews.py +++ b/postgresqleu/confreg/backendviews.py @@ -22,6 +22,7 @@ from postgresqleu.util.decorators import superuser_required from models import Conference, ConferenceSeries from models import AccessToken +from models import ShirtSize from postgresqleu.invoices.models import Invoice from postgresqleu.confsponsor.util import get_sponsor_dashboard_data @@ -35,6 +36,7 @@ from backendforms import BackendConferenceSessionSlotForm, BackendVolunteerSlotF from backendforms import BackendFeedbackQuestionForm, BackendDiscountCodeForm from backendforms import BackendAccessTokenForm from backendforms import BackendConferenceSeriesForm +from backendforms import BackendTshirtSizeForm from backendforms import BackendNewsForm from backendforms import TwitterForm @@ -426,6 +428,19 @@ def edit_series(request, rest): instancemaker=lambda: ConferenceSeries(), ) +@superuser_required +def edit_tshirts(request, rest): + return backend_list_editor(request, + None, + BackendTshirtSizeForm, + rest, + allow_new=True, + allow_delete=True, + bypass_conference_filter=True, + return_url='../../', + instancemaker=lambda: ShirtSize(), + ) + @superuser_required def new_conference(request): return backend_process_form(request, diff --git a/postgresqleu/urls.py b/postgresqleu/urls.py index 2e0ea0a..8df88a3 100644 --- a/postgresqleu/urls.py +++ b/postgresqleu/urls.py @@ -119,6 +119,7 @@ urlpatterns = [ url(r'^events/admin/([^/]+)/reports/schedule/$', postgresqleu.confreg.pdfschedule.pdfschedule), url(r'^events/admin/newconference/$', postgresqleu.confreg.backendviews.new_conference), url(r'^events/admin/meta/series/(.*/)?$', postgresqleu.confreg.backendviews.edit_series), + url(r'^events/admin/meta/tshirts/(.*/)?$', postgresqleu.confreg.backendviews.edit_tshirts), url(r'^events/admin/lookups/accounts/$', postgresqleu.confreg.backendlookups.GeneralAccountLookup.lookup), url(r'^events/admin/lookups/speakers/$', postgresqleu.confreg.backendlookups.SpeakerLookup.lookup), url(r'^events/admin/(\w+)/$', postgresqleu.confreg.views.admin_dashboard_single), diff --git a/template/confreg/admin_dashboard.html b/template/confreg/admin_dashboard.html index 0142680..a2cfde7 100644 --- a/template/confreg/admin_dashboard.html +++ b/template/confreg/admin_dashboard.html @@ -54,6 +54,9 @@
Edit conference series
+
+ Edit T-Shirt sizes +
{%endif%} -- 2.39.5