From 54fc7b47de8ac6e141d5832f5dc5d074b4f4b9a2 Mon Sep 17 00:00:00 2001 From: Al Date: Fri, 15 Jul 2016 16:39:17 -0400 Subject: [PATCH] [fix] include admin center id and type --- scripts/geodata/osm/admin_boundaries.py | 1 + scripts/geodata/polygons/reverse_geocode.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/geodata/osm/admin_boundaries.py b/scripts/geodata/osm/admin_boundaries.py index 24b5ec41..bca284e1 100644 --- a/scripts/geodata/osm/admin_boundaries.py +++ b/scripts/geodata/osm/admin_boundaries.py @@ -267,6 +267,7 @@ class OSMPolygonReader(object): elif role == 'admin_centre' and elem_type == 'node': val = self.nodes.get(long(elem_id)) if val is not None: + val['type'] = 'node' val['id'] = long(elem_id) admin_centers.append(val) diff --git a/scripts/geodata/polygons/reverse_geocode.py b/scripts/geodata/polygons/reverse_geocode.py index 21d96c99..73a90efd 100644 --- a/scripts/geodata/polygons/reverse_geocode.py +++ b/scripts/geodata/polygons/reverse_geocode.py @@ -337,7 +337,7 @@ class OSMReverseGeocoder(RTreePolygonIndex): if admin_center: props['admin_center'] = {k: v for k, v in six.iteritems(admin_center) - if k in cls.include_property_patterns or (six.u(':') in k and + if k in ('id', 'type') or k in cls.include_property_patterns or (six.u(':') in k and six.u('{}:*').format(k.split(six.u(':'), 1)[0]) in cls.include_property_patterns)} if inner_polys and not outer_polys: