From a5a128df796d98037c3699a00a4e25868d4388e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Tue, 28 Nov 2017 12:40:05 +0100 Subject: [PATCH] save route result so it does not have to be reloaded again and again --- src/c3nav/site/static/site/js/c3nav.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/c3nav/site/static/site/js/c3nav.js b/src/c3nav/site/static/site/js/c3nav.js index 8b9d9435..b0279dc0 100644 --- a/src/c3nav/site/static/site/js/c3nav.js +++ b/src/c3nav/site/static/site/js/c3nav.js @@ -123,7 +123,11 @@ c3nav = { } if (view === 'route-result') { - c3nav.load_route(state.origin, state.destination); + if (state.route_result) { + c3nav._display_route_result(state.route_result); + } else { + c3nav.load_route(state.origin, state.destination); + } } else { $('#route-summary').removeAttr('data-origin').removeAttr('data-destination'); c3nav._clear_route_layers(); @@ -210,7 +214,12 @@ c3nav = { // loaded too late, information no longer needed return; } - var result = data.result, + c3nav._push_state({route_result: data.result}, true); + c3nav._display_route_result(data.result); + $route.removeClass('loading'); + }, + _display_route_result: function(result) { + var $route = $('#route-summary'), last_primary_level = null, level_collect = [], next_level_collect = [], @@ -244,7 +253,6 @@ c3nav = { c3nav._add_line_to_level(last_primary_level, level_collect); } $route.find('span').text(String(result.distance)+' m'); - $route.removeClass('loading'); }, _add_line_to_level: function(level, coords) { if (coords.length < 2) return;