summaryrefslogtreecommitdiff
path: root/postgresqleu
diff options
context:
space:
mode:
authorMagnus Hagander2020-04-01 15:14:35 +0000
committerMagnus Hagander2020-04-04 14:18:40 +0000
commitb93043e6bf29326b7678f9505e61e69a33219946 (patch)
tree07482cd31f4e2f20adc3c16a9d249c017d5a0a77 /postgresqleu
parentb4f52960137be5c6f97f460b9d7e805ca19a8c34 (diff)
Enable use of django 2.2 autocomplete in admin views
Diffstat (limited to 'postgresqleu')
-rw-r--r--postgresqleu/confreg/admin.py19
-rw-r--r--postgresqleu/confsponsor/admin.py1
-rw-r--r--postgresqleu/confwiki/admin.py1
-rw-r--r--postgresqleu/elections/admin.py1
-rw-r--r--postgresqleu/invoices/admin.py1
-rw-r--r--postgresqleu/membership/admin.py4
-rw-r--r--postgresqleu/newsevents/admin.py1
7 files changed, 27 insertions, 1 deletions
diff --git a/postgresqleu/confreg/admin.py b/postgresqleu/confreg/admin.py
index d557f020..8441c9d1 100644
--- a/postgresqleu/confreg/admin.py
+++ b/postgresqleu/confreg/admin.py
@@ -79,6 +79,10 @@ class AdditionalOptionListFilter(admin.SimpleListFilter):
#
# General admin classes
#
+class ConferenceSeriesAdmin(admin.ModelAdmin):
+ autocomplete_fields = ('administrators', )
+
+
class ConferenceAdminForm(ConcurrentProtectedModelForm):
class Meta:
model = Conference
@@ -101,6 +105,7 @@ class ConferenceAdmin(admin.ModelAdmin):
form = ConferenceAdminForm
list_display = ('conferencename', 'active', 'callforpapersopen', 'callforsponsorsopen', 'feedbackopen', 'startdate', 'enddate')
ordering = ('-startdate', )
+ autocomplete_fields = ('administrators', 'testers', 'talkvoters', 'staff', 'volunteers', 'checkinprocessors', )
class ConferenceRegistrationForm(ConcurrentProtectedModelForm):
@@ -126,6 +131,7 @@ class ConferenceRegistrationAdmin(admin.ModelAdmin):
filter_horizontal = ('additionaloptions',)
exclude = ('invoice', 'bulkpayment', )
readonly_fields = ('invoice_link', 'bulkpayment_link', 'lastmodified', )
+ autocomplete_fields = ('attendee', 'registrator', )
def payconfirmedat_short(self, inst):
return inst.payconfirmedat
@@ -187,6 +193,7 @@ class ConferenceSessionAdmin(admin.ModelAdmin):
list_filter = ['conference', TrackListFilter, 'status', ]
search_fields = ['title', ]
filter_horizontal = ('speaker',)
+ autocomplete_fields = ('speaker', )
class ConferenceSessionScheduleSlotAdmin(admin.ModelAdmin):
@@ -248,6 +255,7 @@ class ConferenceAdditionalOptionAdminForm(ConcurrentProtectedModelForm):
try:
self.fields['requires_regtype'].queryset = RegistrationType.objects.filter(conference=self.instance.conference)
self.fields['mutually_exclusive'].queryset = ConferenceAdditionalOption.objects.filter(conference=self.instance.conference)
+ self.fields['additionaldays'].queryset = RegistrationDay.objects.filter(conference=self.instance.conference)
except Conference.DoesNotExist:
# If we don't have a conference yet, we can just ignore the fact
# that we couldn't list it.
@@ -258,6 +266,7 @@ class ConferenceAdditionalOptionAdmin(admin.ModelAdmin):
list_display = ['conference', 'name', 'maxcount', 'cost', 'used_count', 'confirmed_count', 'unconfirmed_count']
list_filter = ['conference', ]
ordering = ['conference', 'name', ]
+ search_fields = ['name', ]
filter_horizontal = ('requires_regtype', 'mutually_exclusive', )
form = ConferenceAdditionalOptionAdminForm
@@ -292,6 +301,7 @@ class SpeakerAdminForm(ConcurrentProtectedModelForm):
class SpeakerAdmin(admin.ModelAdmin):
list_display = ['user', 'email', 'fullname', 'has_abstract', 'has_photo']
search_fields = ['fullname', 'user__email']
+ autocomplete_fields = ('user', )
ordering = ['fullname']
form = SpeakerAdminForm
@@ -333,6 +343,7 @@ class PrepaidBatchAdminForm(ConcurrentProtectedModelForm):
super(PrepaidBatchAdminForm, self).__init__(*args, **kwargs)
try:
self.fields['sponsor'].queryset = Sponsor.objects.filter(conference=self.instance.conference)
+ self.fields['regtype'].queryset = RegistrationType.objects.filter(conference=self.instance.conference)
except Conference.DoesNotExist:
pass
@@ -340,6 +351,7 @@ class PrepaidBatchAdminForm(ConcurrentProtectedModelForm):
class PrepaidBatchAdmin(admin.ModelAdmin):
list_display = ['id', 'conference', 'buyer', 'buyername', 'total_num', 'used_num', ]
list_filter = ['conference', ]
+ autocomplete_fields = ('buyer', )
inlines = [PrepaidVoucherInline, ]
form = PrepaidBatchAdminForm
@@ -437,12 +449,14 @@ class DiscountCodeAdminForm(ConcurrentProtectedModelForm):
class DiscountCodeAdmin(admin.ModelAdmin):
list_display = ['code', 'conference', 'maxuses', 'count', ]
list_filter = ['conference', ]
+ autocomplete_fields = ('registrations', 'sponsor_rep', )
form = DiscountCodeAdminForm
class BulkPaymentAdmin(admin.ModelAdmin):
list_display = ['adminstring', 'conference', 'user', 'numregs', 'paidat', 'ispaid', ]
list_filter = ['conference', ]
+ autocomplete_fields = ['user', ]
class AttendeeMailAdminForm(ConcurrentProtectedModelForm):
@@ -454,11 +468,13 @@ class AttendeeMailAdminForm(ConcurrentProtectedModelForm):
super(AttendeeMailAdminForm, self).__init__(*args, **kwargs)
if 'instance' in kwargs:
self.fields['regclasses'].queryset = RegistrationClass.objects.filter(conference=self.instance.conference)
+ self.fields['addopts'].queryset = ConferenceAdditionalOption.objects.filter(conference=self.instance.conference)
class AttendeeMailAdmin(admin.ModelAdmin):
form = AttendeeMailAdminForm
filter_horizontal = ('regclasses', )
+ autocomplete_fields = ('registrations', 'pending_regs', )
class PendingAdditionalOrderAdminForm(ConcurrentProtectedModelForm):
@@ -477,6 +493,7 @@ class PendingAdditionalOrderAdminForm(ConcurrentProtectedModelForm):
class PendingAdditionalOrderAdmin(admin.ModelAdmin):
form = PendingAdditionalOrderAdminForm
list_display = ('reg', 'createtime', 'payconfirmedat')
+ autocomplete_fields = ('invoice', )
class VolunteerSlotAdminForm(ConcurrentProtectedModelForm):
@@ -501,7 +518,7 @@ class VolunteerSlotAdmin(admin.ModelAdmin):
list_display = ('__str__', 'title')
-admin.site.register(ConferenceSeries)
+admin.site.register(ConferenceSeries, ConferenceSeriesAdmin)
admin.site.register(Conference, ConferenceAdmin)
admin.site.register(RegistrationClass, RegistrationClassAdmin)
admin.site.register(RegistrationDay, RegistrationDayAdmin)
diff --git a/postgresqleu/confsponsor/admin.py b/postgresqleu/confsponsor/admin.py
index b7496728..e9d30d06 100644
--- a/postgresqleu/confsponsor/admin.py
+++ b/postgresqleu/confsponsor/admin.py
@@ -95,6 +95,7 @@ class SponsorAdmin(admin.ModelAdmin):
inlines = [SponsorClaimedBenefitInline, ]
list_filter = ['conference', LevelListFilter, ]
list_display = ['name', 'level', 'conference', ]
+ autocomplete_fields = ('managers', )
def invoice_link(self, inst):
if inst.invoice:
diff --git a/postgresqleu/confwiki/admin.py b/postgresqleu/confwiki/admin.py
index d1af5bb5..6944095f 100644
--- a/postgresqleu/confwiki/admin.py
+++ b/postgresqleu/confwiki/admin.py
@@ -45,6 +45,7 @@ class WikipageSubscriberInline(admin.TabularInline):
class WikipageAdmin(admin.ModelAdmin):
form = WikipageAdminForm
inlines = [WikipageHistoryInline, WikipageSubscriberInline]
+ autocomplete_fields = ('author', 'viewer_attendee', 'editor_attendee')
class AttendeeSignupAdminForm(ConcurrentProtectedModelForm):
diff --git a/postgresqleu/elections/admin.py b/postgresqleu/elections/admin.py
index 1c19cac1..b29db362 100644
--- a/postgresqleu/elections/admin.py
+++ b/postgresqleu/elections/admin.py
@@ -15,6 +15,7 @@ class VoteAdminForm(ModelForm):
class VoteAdmin(admin.ModelAdmin):
list_display = ('election', 'voter', 'candidate', 'score')
+ autocomplete_fields = ('voter', )
ordering = ['election', ]
form = VoteAdminForm
diff --git a/postgresqleu/invoices/admin.py b/postgresqleu/invoices/admin.py
index c094abb7..96e1b033 100644
--- a/postgresqleu/invoices/admin.py
+++ b/postgresqleu/invoices/admin.py
@@ -58,6 +58,7 @@ class InvoiceAdmin(admin.ModelAdmin):
form = InvoiceAdminForm
exclude = ['pdf_invoice', 'pdf_receipt', ]
filter_horizontal = ['allowedmethods', ]
+ search_fields = ['title', 'id', ]
class InvoiceLogAdmin(admin.ModelAdmin):
diff --git a/postgresqleu/membership/admin.py b/postgresqleu/membership/admin.py
index c451a74b..86a4a603 100644
--- a/postgresqleu/membership/admin.py
+++ b/postgresqleu/membership/admin.py
@@ -30,6 +30,8 @@ class MemberAdmin(admin.ModelAdmin):
list_display = ('user', 'fullname', 'country', 'membersince', 'paiduntil', )
ordering = ('user',)
list_filter = (ActiveMemberFilter, )
+ search_fields = ('fullname', )
+ autocomplete_fields = ('user', 'activeinvoice', )
def change_view(self, request, object_id, extra_context=None):
member = Member(pk=object_id)
@@ -41,11 +43,13 @@ class MemberAdmin(admin.ModelAdmin):
class MemberLogAdmin(admin.ModelAdmin):
list_display = ('member', 'timestamp', 'message', )
ordering = ('-timestamp', )
+ autocomplete_fields = ('member', )
class MeetingAdmin(admin.ModelAdmin):
list_display = ('name', 'dateandtime', )
filter_horizontal = ('members', )
+ autocomplete_fields = ('members', )
admin.site.register(Member, MemberAdmin)
diff --git a/postgresqleu/newsevents/admin.py b/postgresqleu/newsevents/admin.py
index 9b43d160..fcca4195 100644
--- a/postgresqleu/newsevents/admin.py
+++ b/postgresqleu/newsevents/admin.py
@@ -7,6 +7,7 @@ from postgresqleu.newsevents.models import News, NewsPosterProfile
class NewsPosterProfileAdmin(admin.ModelAdmin):
list_display = ('__str__', 'rsslink')
+ autocomplete_fields = ('author', )
def rsslink(self, author):
return "/feeds/user/{0}/".format(author.urlname)