diff --git a/jdav_web/members/admin.py b/jdav_web/members/admin.py index c7971ed..c33caa8 100644 --- a/jdav_web/members/admin.py +++ b/jdav_web/members/admin.py @@ -240,7 +240,7 @@ class MemberAdmin(CommonAdminMixin, admin.ModelAdmin): } change_form_template = "members/change_member.html" ordering = ('lastname',) - actions = ['request_echo', 'invite_as_user_action'] + actions = ['request_echo', 'invite_as_user_action', 'unconfirm'] list_per_page = 25 form = MemberAdminForm @@ -409,6 +409,12 @@ class MemberAdmin(CommonAdminMixin, admin.ModelAdmin): name_text_or_link.short_description = _('Name') name_text_or_link.admin_order_field = 'lastname' + def unconfirm(self, request, queryset): + for member in queryset: + member.unconfirm() + messages.success(request, _("Successfully unconfirmed selected members.")) + unconfirm.short_description = _('Unconfirm selected members.') + class DemoteToWaiterForm(forms.Form): _selected_action = forms.CharField(widget=forms.MultipleHiddenInput) diff --git a/jdav_web/members/locale/de/LC_MESSAGES/django.po b/jdav_web/members/locale/de/LC_MESSAGES/django.po index 1876643..095088d 100644 --- a/jdav_web/members/locale/de/LC_MESSAGES/django.po +++ b/jdav_web/members/locale/de/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-04-10 23:31+0200\n" +"POT-Creation-Date: 2025-04-10 23:51+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -133,6 +133,15 @@ msgstr "Aktivität" msgid "Name" msgstr "Name" +#: members/admin.py +msgid "Successfully unconfirmed selected members." +msgstr "" +"Ausgewählte Teilnehmer*innen zu unbestätigten Registrierungen zurückgesetzt." + +#: members/admin.py +msgid "Unconfirm selected members." +msgstr "Ausgewählte Teilnehmer*innen zu unbestätigten Registrierungen zurücksetzen." + #: members/admin.py members/tests.py msgid "Successfully requested mail confirmation from selected registrations." msgstr "Aufforderung zur Bestätigung der Email Adresse versendet." diff --git a/jdav_web/members/models.py b/jdav_web/members/models.py index dd617f2..8d99151 100644 --- a/jdav_web/members/models.py +++ b/jdav_web/members/models.py @@ -414,6 +414,10 @@ class Member(Person): self.save() return True + def unconfirm(self): + self.confirmed = False + self.save() + def unsubscribe(self, key): if self.unsubscribe_key == key and timezone.now() <\ self.unsubscribe_expire: