From 18b3d8b135df700cd2fe360cbaa43fa410ed95b5 Mon Sep 17 00:00:00 2001 From: Helge Jung <hej@c3pb.de> Date: Thu, 26 Dec 2024 20:26:58 +0100 Subject: [PATCH] c3nav export: use non-i18n public_url, add tags --- src/api/views/maps.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/api/views/maps.py b/src/api/views/maps.py index d38a657fa..b84b3288c 100644 --- a/src/api/views/maps.py +++ b/src/api/views/maps.py @@ -159,7 +159,7 @@ class C3NavExportView(ConferenceSlugMixin, APIView): 'name': assembly.name, 'is_official': assembly.is_official, 'description': {'de': assembly.description_de, 'en': assembly.description_en}, - 'public_url': hub_absolute('plainui:assembly', assembly_slug=assembly.slug), + 'public_url': hub_absolute('plainui:assembly', assembly_slug=assembly.slug, i18n=False), 'parent_id': assembly.parent_id, 'children': get_exportable_assemblies(conference=self.conference).filter(parent=assembly).values_list('slug', flat=True) if assembly.is_cluster @@ -169,6 +169,7 @@ class C3NavExportView(ConferenceSlugMixin, APIView): 'is_preview': assembly.location_state != Assembly.LocationState.FINAL, 'location': loc_data.get('point'), # assembly.get_location_point_xy(), 'polygons': loc_data.get('boundaries'), # assembly.get_location_boundaries_xy(), + 'tags': assembly.tags.filter(tag__is_public=True).values_list('tag__slug', flat=True), } ) @@ -180,11 +181,13 @@ class C3NavExportView(ConferenceSlugMixin, APIView): 'slug': project.slug, 'name': project.name, 'description': {'de': project.description_de, 'en': project.description_en}, - 'public_url': hub_absolute('plainui:project', slug=project.slug), + 'public_url': hub_absolute('plainui:project', slug=project.slug, i18n=False), 'assembly_id': str(assembly.pk), 'floor': assembly.get_location_floor_index(), # TODO: allow project-specific location floor + 'is_preview': assembly.location_state != Assembly.LocationState.FINAL, 'location': loc_data.get('point'), # TODO: allow project-specific location point 'location_text': project.location, + 'tags': project.tags.filter(tag__is_public=True).values_list('tag__slug', flat=True), } ) @@ -202,6 +205,7 @@ class C3NavExportView(ConferenceSlugMixin, APIView): 'floor': room.get_location_floor_index(), 'location': room.get_location_point_xy(), 'polygons': room.get_location_boundaries_xy(), + 'tags': room.tags.filter(tag__is_public=True).values_list('tag__slug', flat=True), } ) @@ -213,6 +217,7 @@ class C3NavExportView(ConferenceSlugMixin, APIView): 'name': {'de': poi.name_de, 'en': poi.name_en}, 'is_official': poi.is_official, 'description': {'de': poi.description_de, 'en': poi.description_en}, + 'is_preview': False, 'floor': poi.get_location_floor_index(), 'location': poi.get_location_point_xy(), } -- GitLab