From f2913dd8ac850d42cef7fbd2ad07794d906799f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Sat, 8 Jul 2017 16:29:12 +0200 Subject: [PATCH] rename Point to POI --- src/c3nav/api/urls.py | 6 +-- src/c3nav/editor/api.py | 4 +- src/c3nav/editor/urls.py | 2 +- src/c3nav/editor/views/edit.py | 2 +- src/c3nav/mapdata/api.py | 6 +-- .../mapdata/migrations/0017_point_to_poi.py | 43 +++++++++++++++++++ src/c3nav/mapdata/models/geometry/space.py | 10 ++--- src/c3nav/mapdata/models/locations.py | 2 +- 8 files changed, 59 insertions(+), 16 deletions(-) create mode 100644 src/c3nav/mapdata/migrations/0017_point_to_poi.py diff --git a/src/c3nav/api/urls.py b/src/c3nav/api/urls.py index 410b67f1..8894b2ff 100644 --- a/src/c3nav/api/urls.py +++ b/src/c3nav/api/urls.py @@ -9,8 +9,8 @@ from rest_framework.routers import SimpleRouter from c3nav.editor.api import ChangeSetViewSet, EditorViewSet from c3nav.mapdata.api import (AreaViewSet, BuildingViewSet, ColumnViewSet, DoorViewSet, HoleViewSet, LevelViewSet, - LineObstacleViewSet, LocationGroupViewSet, LocationViewSet, ObstacleViewSet, - PointViewSet, SourceViewSet, SpaceViewSet, StairViewSet) + LineObstacleViewSet, LocationGroupViewSet, LocationViewSet, ObstacleViewSet, POIViewSet, + SourceViewSet, SpaceViewSet, StairViewSet) router = SimpleRouter() router.register(r'levels', LevelViewSet) @@ -23,7 +23,7 @@ router.register(r'stairs', StairViewSet) router.register(r'obstacles', ObstacleViewSet) router.register(r'lineobstacles', LineObstacleViewSet) router.register(r'columns', ColumnViewSet) -router.register(r'points', PointViewSet) +router.register(r'pois', POIViewSet) router.register(r'sources', SourceViewSet) router.register(r'locations', LocationViewSet) diff --git a/src/c3nav/editor/api.py b/src/c3nav/editor/api.py index d83520d6..18d123a0 100644 --- a/src/c3nav/editor/api.py +++ b/src/c3nav/editor/api.py @@ -130,7 +130,7 @@ class EditorViewSet(ViewSet): space.obstacles.all(), space.lineobstacles.all(), space.columns.all(), - space.points.all().prefetch_related('groups'), + space.pois.all().prefetch_related('groups'), other_spaces, ) return Response(sum([self._get_geojsons(obj) for obj in results], ())) @@ -154,7 +154,7 @@ class EditorViewSet(ViewSet): 'obstacle': '#999999', 'lineobstacle': '#999999', 'column': '#888888', - 'point': '#4488cc', + 'poi': '#4488cc', 'shadow': '#000000', }) diff --git a/src/c3nav/editor/urls.py b/src/c3nav/editor/urls.py index 5fefc654..eef6a0e3 100644 --- a/src/c3nav/editor/urls.py +++ b/src/c3nav/editor/urls.py @@ -55,4 +55,4 @@ urlpatterns.extend(add_editor_urls('Stair', 'Space')) urlpatterns.extend(add_editor_urls('Obstacle', 'Space')) urlpatterns.extend(add_editor_urls('LineObstacle', 'Space')) urlpatterns.extend(add_editor_urls('Column', 'Space')) -urlpatterns.extend(add_editor_urls('Point', 'Space')) +urlpatterns.extend(add_editor_urls('POI', 'Space')) diff --git a/src/c3nav/editor/views/edit.py b/src/c3nav/editor/views/edit.py index 27a28dc7..e051bd5d 100644 --- a/src/c3nav/editor/views/edit.py +++ b/src/c3nav/editor/views/edit.py @@ -61,7 +61,7 @@ def space_detail(request, level, pk): 'can_edit': request.changeset.can_edit(request), 'child_models': [child_model(request.changeset.wrap_model(model_name), kwargs={'space': pk}, parent=space) - for model_name in ('Hole', 'Area', 'Stair', 'Obstacle', 'LineObstacle', 'Column', 'Point')], + for model_name in ('Hole', 'Area', 'Stair', 'Obstacle', 'LineObstacle', 'Column', 'POI')], 'geometry_url': '/api/editor/geometries/?space='+pk, }) diff --git a/src/c3nav/mapdata/api.py b/src/c3nav/mapdata/api.py index 6d0296eb..285263cd 100644 --- a/src/c3nav/mapdata/api.py +++ b/src/c3nav/mapdata/api.py @@ -14,7 +14,7 @@ from rest_framework.viewsets import GenericViewSet, ReadOnlyModelViewSet from c3nav.mapdata.models import Building, Door, Hole, LocationGroup, Source, Space from c3nav.mapdata.models.geometry.level import LevelGeometryMixin -from c3nav.mapdata.models.geometry.space import Area, Column, LineObstacle, Obstacle, Point, SpaceGeometryMixin, Stair +from c3nav.mapdata.models.geometry.space import POI, Area, Column, LineObstacle, Obstacle, SpaceGeometryMixin, Stair from c3nav.mapdata.models.level import Level from c3nav.mapdata.models.locations import Location, LocationRedirect, LocationSlug, SpecificLocation from c3nav.mapdata.utils.models import get_submodels @@ -133,9 +133,9 @@ class ColumnViewSet(MapdataViewSet): queryset = Column.objects.all() -class PointViewSet(MapdataViewSet): +class POIViewSet(MapdataViewSet): """ Add ?geometry=1 to get geometries, add ?space= to filter by space. """ - queryset = Point.objects.all() + queryset = POI.objects.all() class LocationGroupViewSet(MapdataViewSet): diff --git a/src/c3nav/mapdata/migrations/0017_point_to_poi.py b/src/c3nav/mapdata/migrations/0017_point_to_poi.py new file mode 100644 index 00000000..4dd00100 --- /dev/null +++ b/src/c3nav/mapdata/migrations/0017_point_to_poi.py @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.2 on 2017-07-08 14:23 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('mapdata', '0016_remove_source_image'), + ] + + operations = [ + migrations.RenameModel( + old_name='Point', + new_name='POI', + ), + migrations.AlterModelOptions( + name='poi', + options={'verbose_name': 'Point of Interest', 'verbose_name_plural': 'Points of Interest'}, + ), + migrations.AlterField( + model_name='poi', + name='groups', + field=models.ManyToManyField(blank=True, related_name='pois', to='mapdata.LocationGroup', + verbose_name='Location Groups'), + ), + migrations.AlterField( + model_name='poi', + name='locationslug_ptr', + field=models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, + primary_key=True, related_name='pois', serialize=False, + to='mapdata.LocationSlug'), + ), + migrations.AlterField( + model_name='poi', + name='space', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='pois', + to='mapdata.Space', verbose_name='space'), + ), + ] diff --git a/src/c3nav/mapdata/models/geometry/space.py b/src/c3nav/mapdata/models/geometry/space.py index 6afdf06b..ee8c0023 100644 --- a/src/c3nav/mapdata/models/geometry/space.py +++ b/src/c3nav/mapdata/models/geometry/space.py @@ -150,16 +150,16 @@ class LineObstacle(SpaceGeometryMixin, models.Model): return result -class Point(SpecificLocation, SpaceGeometryMixin, models.Model): +class POI(SpecificLocation, SpaceGeometryMixin, models.Model): """ - An point in a space. + An point of interest """ geometry = GeometryField('point') class Meta: - verbose_name = _('Point') - verbose_name_plural = _('Points') - default_related_name = 'points' + verbose_name = _('Point of Interest') + verbose_name_plural = _('Points of Interest') + default_related_name = 'pois' @property def buffered_geometry(self): diff --git a/src/c3nav/mapdata/models/locations.py b/src/c3nav/mapdata/models/locations.py index 5f14a466..ecddc052 100644 --- a/src/c3nav/mapdata/models/locations.py +++ b/src/c3nav/mapdata/models/locations.py @@ -24,7 +24,7 @@ class LocationSlug(SerializableMixin, models.Model): 'Level': 'l', 'Space': 's', 'Area': 'a', - 'Point': 'p', + 'POI': 'p', 'LocationGroup': 'g' } LOCATION_TYPE_BY_CODE = {code: model_name for model_name, code in LOCATION_TYPE_CODES.items()}