Skip to content

Commit

Permalink
WIP on master: f203401 - Python3 deps compatibility
Browse files Browse the repository at this point in the history
  • Loading branch information
afabiani committed Sep 26, 2018
2 parents f203401 + 392c616 commit 32a05e9
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 4 deletions.
15 changes: 11 additions & 4 deletions mapstore2_adapter/plugins/geonode.py
Expand Up @@ -46,8 +46,11 @@ def convert(self, viewer, request):
viewer_obj = json.loads(viewer)

map_id = None
if 'id' in viewer_obj:
map_id = int(viewer_obj['id'])
if 'id' in viewer_obj and viewer_obj['id']:
try:
map_id = int(viewer_obj['id'])
except BaseException:
pass

data = {}
data['version'] = 2
Expand Down Expand Up @@ -98,7 +101,7 @@ def convert(self, viewer, request):

# Overlays
overlays, selected = self.get_overlays(viewer)
if selected and not map_id:
if selected and selected['name'] and not map_id:
# We are generating a Layer Details View
center, zoom = self.get_center_and_zoom(viewer_obj['map'], selected)
ms2_map['center'] = center
Expand Down Expand Up @@ -153,7 +156,8 @@ def convert(self, viewer, request):
logger.error(tb)

for overlay in overlays:
ms2_map['layers'].append(overlay)
if 'name' in overlay and overlay['name']:
ms2_map['layers'].append(overlay)

data['map'] = ms2_map
except BaseException:
Expand Down Expand Up @@ -285,6 +289,9 @@ def get_overlays(self, viewer):
featureInfo['template'] = _template
overlay['featureInfo'] = featureInfo

if 'extraParams' in layer and layer['extraParams']:
overlay['extraParams'] = layer['extraParams']

overlays.append(overlay)
if not selected or ('selected' in layer and layer['selected']):
selected = overlay
Expand Down
10 changes: 10 additions & 0 deletions mapstore2_adapter/plugins/serializers.py
Expand Up @@ -152,6 +152,7 @@ def decode_base64(data):
for _lyr in _map_obj['layers']:
_lyr_context = None
try:
# Retrieve the Layer Params back from GeoNode
_gn_layer = layer_detail(
caller.request,
_lyr['name'])
Expand All @@ -166,6 +167,15 @@ def decode_base64(data):
tb = traceback.format_exc()
logger.error(tb)

# Store the Widget ID into the Layer Params of GeoNode
if 'widgetsConfig' in data and 'widgets' in data['widgetsConfig']:
for _widget in data['widgetsConfig']['widgets']:
if 'layer' in _widget and 'name' in _widget['layer']:
if _widget['layer']['name'] == _lyr['name']:
if 'id' in _widget['layer']:
_lyr['extraParams'] = {"msId": _widget['layer']['id']}

# Store the Capabilities Document into the Layer Params of GeoNode
if _lyr_context:
if 'capability' in _lyr_context:
_lyr['capability'] = _lyr_context['capability']
Expand Down

0 comments on commit 32a05e9

Please sign in to comment.