chore(members/admin): remove RegistrationFilter

This filter was used when there was not yet a distinction between confirmed and unconfirmed members.
By design, every confirmed member should have a complete registration.
pull/174/head
Christian Merten 4 months ago
parent 65790d3b4d
commit 3fd01c9001
Signed by: christian.merten
GPG Key ID: D953D69721B948B3

@ -129,44 +129,6 @@ class TrainingCategoryAdmin(admin.ModelAdmin):
ordering = ('name', )
class RegistrationFilter(admin.SimpleListFilter):
title = _('Registration complete')
parameter_name = 'registration_complete'
default_value = ('All', None)
def lookups(self, request, model_admin):
return (
('True', _('True')),
('False', _('False')),
('All', _('All'))
)
def queryset(self, request, queryset):
if self.value() == 'True':
return queryset.filter(registration_complete=True)
elif self.value() == 'False':
return queryset.filter(registration_complete=False)
elif self.value() is None:
if self.default_value[1] is None:
return queryset
else:
return queryset.filter(registration_complete=self.default_value[1])
elif self.value() == 'All':
return queryset
def choices(self, cl):
for lookup, title in self.lookup_choices:
yield {
'selected':
self.value() == lookup or
(self.value() is None and lookup == self.default_value[0]),
'query_string': cl.get_query_string({
self.parameter_name:
lookup,
}, []),
'display': title
}
class MemberAdminForm(forms.ModelForm):
class Meta:

@ -28,7 +28,7 @@ from members.models import Member, Group, PermissionMember, PermissionGroup, Fre
Klettertreff, KlettertreffAttendee, LJPProposal, ActivityCategory, WEEKDAYS,\
TrainingCategory, Person
from members.admin import MemberWaitingListAdmin, MemberAdmin, FreizeitAdmin, MemberNoteListAdmin,\
MemberUnconfirmedAdmin, RegistrationFilter, FilteredMemberFieldMixin,\
MemberUnconfirmedAdmin, FilteredMemberFieldMixin,\
MemberAdminForm, StatementOnListForm, KlettertreffAdmin, GroupAdmin,\
InvitationToGroupAdmin, AgeFilter, InvitedToGroupFilter
from members.pdf import fill_pdf_form, render_tex, media_path, serve_pdf, find_template, merge_pdfs, render_docx, pdf_add_attachments, scale_pdf_page_to_a4, scale_pdf_to_a4
@ -2127,52 +2127,6 @@ class EchoViewTestCase(BasicMemberTestCase):
self.assertIn('upload', response.url)
class TestRegistrationFilterTestCase(AdminTestCase):
def setUp(self):
super().setUp(model=Member, admin=MemberAdmin)
def test_lookups(self):
fil = RegistrationFilter(None, {}, Member, self.admin)
self.assertTrue(('All', _('All')) in fil.lookups(None, None))
def test_queryset_no_filter(self):
qs = Member.objects.all()
# filtering with All returns passed queryset
fil = RegistrationFilter(None, {'registration_complete': 'All'}, Member, self.admin)
self.assertQuerysetEqual(fil.queryset(None, qs), qs, ordered=False)
# or with None
fil = RegistrationFilter(None, {}, Member, self.admin)
self.assertQuerysetEqual(fil.queryset(None, qs), qs, ordered=False)
def test_choices(self):
fil = RegistrationFilter(None, {'registration_complete': 'True'}, Member, self.admin)
request = RequestFactory().get("/", {})
request.user = User.objects.get(username='superuser')
changelist = self.admin.get_changelist_instance(request)
choices = list(fil.choices(changelist))
self.assertEqual(choices[0]['display'], _('Yes'))
@skip("Currently errors, because 'registration_complete' is not a field.")
def test_queryset_filter(self):
qs = Member.objects.all()
fil = RegistrationFilter(None, {'registration_complete': 'True'}, Member, self.admin)
self.assertQuerysetEqual(fil.queryset(None, qs),
Member.objects.filter(registration_complete=True),
ordered=False)
fil = RegistrationFilter(None, {'registration_complete': 'False'}, Member, self.admin)
self.assertQuerysetEqual(fil.queryset(None, qs),
Member.objects.filter(registration_complete=True),
ordered=False)
fil = RegistrationFilter(None, {}, Member, self.admin)
fil.default_value = ('True', True)
self.assertQuerysetEqual(fil.queryset(None, qs),
Member.objects.filter(registration_complete=True),
ordered=False)
class MemberAdminFormTestCase(TestCase):
def test_clean_iban(self):
form_data = dict(REGISTRATION_DATA, iban='foobar')

@ -22,7 +22,7 @@ from members.models import Member, Group, PermissionMember, PermissionGroup, Fre
Klettertreff, KlettertreffAttendee, LJPProposal, ActivityCategory, WEEKDAYS,\
TrainingCategory, Person
from members.admin import MemberWaitingListAdmin, MemberAdmin, FreizeitAdmin, MemberNoteListAdmin,\
MemberUnconfirmedAdmin, RegistrationFilter, FilteredMemberFieldMixin,\
MemberUnconfirmedAdmin, FilteredMemberFieldMixin,\
MemberAdminForm, StatementOnListForm, KlettertreffAdmin, GroupAdmin
from members.pdf import fill_pdf_form, render_tex, media_path, serve_pdf, find_template, merge_pdfs
from mailer.models import EmailAddress

Loading…
Cancel
Save