From 186f928e6800cf46d0574079872a8cb50c980539 Mon Sep 17 00:00:00 2001 From: Lucas Brandstaetter <lucas@brandstaetter.tech> Date: Fri, 29 Nov 2024 02:28:08 +0100 Subject: [PATCH] Fix room deletion - Incorrect query for linked object room Fixed #620 - Better messages for room deletion --- src/backoffice/locale/de/LC_MESSAGES/django.po | 10 +++++++--- src/backoffice/locale/en/LC_MESSAGES/django.po | 10 +++++++--- src/backoffice/views/assemblies/rooms.py | 6 +++--- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/src/backoffice/locale/de/LC_MESSAGES/django.po b/src/backoffice/locale/de/LC_MESSAGES/django.po index 7ca671949..f0a60deaa 100644 --- a/src/backoffice/locale/de/LC_MESSAGES/django.po +++ b/src/backoffice/locale/de/LC_MESSAGES/django.po @@ -1825,11 +1825,12 @@ msgstr "Link konnte nicht angelegt werden" msgid "RoomLink__removed" msgstr "Link entfernt: {name}" -msgid "Room__remove_failed" +msgid "Room__remove__failed" msgstr "Der Raum konnte nicht gelöscht werden da noch Veranstaltungen vorhanden sind. Lösche zuerst auch diese Veranstaltungen oder entferne deren Zuordnung zu diesem Raum." -msgid "removed" -msgstr "entfernt" +#, python-format +msgid "Room__remove__success %s" +msgstr "Der Raum '%s' wurde entfernt!" msgid "nav_assemblies_all" msgstr "alle" @@ -1915,6 +1916,9 @@ msgstr "Das Aktualisieren der Badge '%(badge)s' war erfolgreich!" msgid "Badge__update__failed %(badge)s" msgstr "Das Aktualisieren der Badge '%(badge)s' ist fehlgeschlagen" +msgid "removed" +msgstr "entfernt" + #, python-format msgid "Badge__awarded-to-user %(badge)s %(user)s" msgstr "Badge '%(badge)s' zugewiesen an: %(user)s" diff --git a/src/backoffice/locale/en/LC_MESSAGES/django.po b/src/backoffice/locale/en/LC_MESSAGES/django.po index 992168f95..5f5453ae7 100644 --- a/src/backoffice/locale/en/LC_MESSAGES/django.po +++ b/src/backoffice/locale/en/LC_MESSAGES/django.po @@ -1829,11 +1829,12 @@ msgstr "The link could not be created" msgid "RoomLink__removed" msgstr "removed link: {name}" -msgid "Room__remove_failed" +msgid "Room__remove__failed" msgstr "Could not remove the room as it has at least one event assigned to it. Please delete all events associated with this room first (or remove the association)." -msgid "removed" -msgstr "removed" +#, python-format +msgid "Room__remove__success %s" +msgstr "The romme '%s' was removed!" msgid "nav_assemblies_all" msgstr "all" @@ -1918,6 +1919,9 @@ msgstr "Badge '%(badge)s' successfully updated." msgid "Badge__update__failed %(badge)s" msgstr "Badge '%(badge)s could not be updated." +msgid "removed" +msgstr "removed" + #, python-format msgid "Badge__awarded-to-user %(badge)s %(user)s" msgstr "Badge '%(badge)s' awarded to: %(user)s" diff --git a/src/backoffice/views/assemblies/rooms.py b/src/backoffice/views/assemblies/rooms.py index 4cc5af826..3d704325c 100644 --- a/src/backoffice/views/assemblies/rooms.py +++ b/src/backoffice/views/assemblies/rooms.py @@ -271,11 +271,11 @@ class AssemblyRoomDeleteView(AssemblyMixin, View): def post(self, *args, **kwargs): room = self.assembly.rooms.get(pk=kwargs.get('room')) - if Event.objects.filter(conference=self.conference, room=room).exclude(room_type=Room.RoomType.PROJECT).exists(): - messages.error(self.request, _('Room__remove_failed')) + if Event.objects.filter(conference=self.conference, room=room).exclude(room__room_type=Room.RoomType.PROJECT).exists(): + messages.error(self.request, _('Room__remove__failed')) return redirect('backoffice:assembly-room', assembly=self.assembly.id, pk=room.id) room.delete() - messages.success(self.request, format_lazy('{x}: {name}', x=_('removed'), name=room.name)) + messages.success(self.request, _('Room__remove__success %s') % room.name) ConferenceExportCache.signal_schedule_modification(self.conference, obj=room) return redirect('backoffice:assembly', pk=self.assembly.id) -- GitLab