X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/15b104f4ff4614aa78c01180b6a9b89dd5a1400f..aafb1db2be953bd854d2a4e9fdab644db00f8958:/app/assets/javascripts/index/directions/osrm.js diff --git a/app/assets/javascripts/index/directions/osrm.js b/app/assets/javascripts/index/directions/osrm.js index 69191e65a..5c29f6c4d 100644 --- a/app/assets/javascripts/index/directions/osrm.js +++ b/app/assets/javascripts/index/directions/osrm.js @@ -95,9 +95,37 @@ function OSRMEngine() { Array.prototype.push.apply(line, step_geometry); var instText = "" + (idx + 1) + ". "; - var name = step.name ? "" + step.name + "" : I18n.t('javascripts.directions.instructions.unnamed'); + var destinations = "" + step.destinations + ""; + var namedRoad = true; + var name; + + if (step.name && step.ref) { + name = "" + step.name + " (" + step.ref + ")"; + } else if (step.name) { + name = "" + step.name + ""; + } else if (step.ref) { + name = "" + step.ref + ""; + } else { + name = I18n.t('javascripts.directions.instructions.unnamed'); + namedRoad = false; + } + if (step.maneuver.type.match(/rotary|roundabout/)) { instText += I18n.t(template + '_with_exit', { exit: step.maneuver.exit, name: name } ); + } else if (step.maneuver.type.match(/on ramp|off ramp/)) { + if (step.destinations) { + if (namedRoad) { + instText += I18n.t(template + '_with_name_and_directions', { name: name, directions: destinations } ); + } else { + instText += I18n.t(template + '_with_directions', { directions: destinations } ); + } + } else { + if (namedRoad) { + instText += I18n.t(template + '_without_exit', { name: name }); + } else { + instText += I18n.t(template + '_without_directions'); + } + } } else { instText += I18n.t(template + '_without_exit', { name: name }); } @@ -127,7 +155,7 @@ function OSRMEngine() { return p.lng + ',' + p.lat; }).join(';'); - var req_url = document.location.protocol + OSM.OSRM_URL + encoded_coords; + var req_url = OSM.OSRM_URL + encoded_coords; var onResponse = function (data) { if (data.code !== 'Ok')