From 888a5d04c8241430c1d118fa57579eb9cd995c34 Mon Sep 17 00:00:00 2001 From: DennisSchiefer Date: Wed, 11 Apr 2012 22:00:19 +0200 Subject: [PATCH] removal of dragger marker more consistent, changed printing initialization to be more easily removable from GUI, localization bug fixes, added option to give language as get parameter (hl=), --- WebContent/OSRM.GUI.js | 1 - WebContent/OSRM.Markers.js | 1 + WebContent/localization/OSRM.Locale.de.js | 30 +++++----- WebContent/localization/OSRM.Localization.js | 1 + WebContent/main.html | 2 - WebContent/main.js | 19 +++++-- WebContent/printing/OSRM.Printing.js | 15 +++++ WebContent/routing/OSRM.RoutingDescription.js | 55 +++---------------- 8 files changed, 54 insertions(+), 70 deletions(-) diff --git a/WebContent/OSRM.GUI.js b/WebContent/OSRM.GUI.js index a1f780dec..675b7f743 100644 --- a/WebContent/OSRM.GUI.js +++ b/WebContent/OSRM.GUI.js @@ -41,7 +41,6 @@ init: function() { // [TODO: switch to new event model] document.getElementById("gui-toggle-in").onclick = OSRM.GUI.toggleMain; document.getElementById("gui-toggle-out").onclick = OSRM.GUI.toggleMain; - document.getElementById("gui-printer").onclick = OSRM.Printing.print; document.getElementById("gui-input-source").onchange = function() {OSRM.RoutingGUI.inputChanged(OSRM.C.SOURCE_LABEL);}; document.getElementById("gui-delete-source").onclick = function() {OSRM.RoutingGUI.deleteMarker(OSRM.C.SOURCE_LABEL);}; diff --git a/WebContent/OSRM.Markers.js b/WebContent/OSRM.Markers.js index cdc30e2f5..aa4fc325a 100644 --- a/WebContent/OSRM.Markers.js +++ b/WebContent/OSRM.Markers.js @@ -90,6 +90,7 @@ onClick: function(e) { OSRM.Routing.getRoute(); OSRM.G.markers.highlight.hide(); + OSRM.G.markers.dragger.hide(); }, onDrag: function(e) { this.parent.setPosition( e.target.getLatLng() ); diff --git a/WebContent/localization/OSRM.Locale.de.js b/WebContent/localization/OSRM.Locale.de.js index 7ba28b514..d7243a753 100644 --- a/WebContent/localization/OSRM.Locale.de.js +++ b/WebContent/localization/OSRM.Locale.de.js @@ -54,32 +54,32 @@ OSRM.Localization["de"] = { "O": "Ost", "S": "Süden", "W": "Westen", -"NO": "Nordost", -"SO": "Südost", +"NE": "Nordost", +"SE": "Südost", "SW": "Südwest", "NW": "Nordwest", // driving directions "DIRECTION_0":"Unbekannte Anweisung[ auf %s]", "DIRECTION_1":"Links abbiegen[ auf %s]", "DIRECTION_2":"Rechts abbiegen[ auf %s]", -"DIRECTION_3":"Umkehren[ auf %s]", +"DIRECTION_3":"Wenden[ auf %s]", "DIRECTION_4":"Fahren Sie Richtung %s", -"DIRECTION_5":"Weiterfahren[ auf %s]", +"DIRECTION_5":"Geradeaus weiterfahren[ auf %s]", "DIRECTION_6":"Leicht links abbiegen[ auf %s]", "DIRECTION_7":"Leicht rechts abbiegen[ auf %s]", "DIRECTION_8":"Scharf links abbiegen[ auf %s]", "DIRECTION_9":"Scharf rechts abbiegen[ auf %s]", -"DIRECTION_10":"In den Kreisverkehr einfahren und bei erster Möglichkeit verlassen[ auf %s]", -"DIRECTION_11":"In den Kreisverkehr einfahren und bei zweiter Möglichkeit verlassen[ auf %s]", -"DIRECTION_12":"In den Kreisverkehr einfahren und bei dritter Möglichkeit verlassen[ auf %s]", -"DIRECTION_13":"In den Kreisverkehr einfahren und bei vierter Möglichkeit verlassen[ auf %s]", -"DIRECTION_14":"In den Kreisverkehr einfahren und bei fünfter Möglichkeit verlassen[ auf %s]", -"DIRECTION_15":"In den Kreisverkehr einfahren und bei sechster Möglichkeit verlassen[ auf %s]", -"DIRECTION_16":"In den Kreisverkehr einfahren und bei siebter Möglichkeit verlassen[ auf %s]", -"DIRECTION_17":"In den Kreisverkehr einfahren und bei achter Möglichkeit verlassen[ auf %s]", -"DIRECTION_18":"In den Kreisverkehr einfahren und bei neunter Möglichkeit verlassen[ auf %s]", -"DIRECTION_19":"In den Kreisverkehr einfahren und bei zehnter Möglichkeit verlassen[ auf %s]", -"DIRECTION_20":"In den Kreisverkehr einfahren und bei einer der vielen Möglichkeiten verlassen[ auf %s]", +"DIRECTION_10":"In den Kreisverkehr einfahren und bei erster Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_11":"In den Kreisverkehr einfahren und bei zweiter Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_12":"In den Kreisverkehr einfahren und bei dritter Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_13":"In den Kreisverkehr einfahren und bei vierter Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_14":"In den Kreisverkehr einfahren und bei fünfter Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_15":"In den Kreisverkehr einfahren und bei sechster Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_16":"In den Kreisverkehr einfahren und bei siebter Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_17":"In den Kreisverkehr einfahren und bei achter Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_18":"In den Kreisverkehr einfahren und bei neunter Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_19":"In den Kreisverkehr einfahren und bei zehnter Möglichkeit[ in Richtung %s] verlassen", +"DIRECTION_20":"In den Kreisverkehr einfahren und bei einer der vielen Möglichkeiten[ in Richtung %s] verlassen", "DIRECTION_21":"Sie haben Ihr Ziel erreicht" }; diff --git a/WebContent/localization/OSRM.Localization.js b/WebContent/localization/OSRM.Localization.js index cc121b29f..af6021a43 100644 --- a/WebContent/localization/OSRM.Localization.js +++ b/WebContent/localization/OSRM.Localization.js @@ -52,6 +52,7 @@ init: function() { // perform language change change: function(language) { OSRM.DEFAULTS.LANGUAGE = language; + document.getElementById('gui-language-toggle').value = language; if( OSRM.Localization[language]) { OSRM.GUI.setLanguage(); if( OSRM.G.markers.route.length > 1) diff --git a/WebContent/main.html b/WebContent/main.html index b7af1bbc4..97c631324 100644 --- a/WebContent/main.html +++ b/WebContent/main.html @@ -91,8 +91,6 @@ or see http://www.gnu.org/licenses/agpl.txt.
-
-
diff --git a/WebContent/main.js b/WebContent/main.js index b848d95e8..ad5ed0b98 100644 --- a/WebContent/main.js +++ b/WebContent/main.js @@ -27,6 +27,7 @@ OSRM.init = function() { OSRM.Localization.init(); OSRM.GUI.init(); OSRM.Map.init(); + OSRM.Printing.init(); OSRM.Routing.init(); // check if the URL contains some GET parameter, e.g. for showing a route @@ -128,8 +129,16 @@ OSRM.checkURL = function(){ var name_val = splitted_url[i].split('='); if(name_val.length!=2) continue; - - if(name_val[0] == 'loc') { + + if(name_val[0] == 'hl') { + for(var i=0, size=OSRM.Localization.supported_languages.length; i 0) { // draw via points if( positions.length > 0) { OSRM.G.markers.setSource( positions[0] ); @@ -196,6 +205,8 @@ OSRM.checkURL = function(){ // compute route OSRM.Routing.getRoute(); } + + // default case: do nothing }; diff --git a/WebContent/printing/OSRM.Printing.js b/WebContent/printing/OSRM.Printing.js index 11a692370..30a7f798c 100644 --- a/WebContent/printing/OSRM.Printing.js +++ b/WebContent/printing/OSRM.Printing.js @@ -20,6 +20,21 @@ or see http://www.gnu.org/licenses/agpl.txt. OSRM.Printing = { +init: function() { + var icon = document.createElement('div'); + icon.id = "gui-printer"; + icon.className = "iconic-button top-right-button"; + + var spacer = document.createElement('div'); + spacer.className = "quad top-right-button"; + + var input_mask_header = document.getElementById('input-mask-header'); + input_mask_header.appendChild(spacer,input_mask_header.lastChild); + input_mask_header.appendChild(icon,input_mask_header.lastChild); + + document.getElementById("gui-printer").onclick = OSRM.Printing.print; +}, + windowLoaded: function(){ OSRM.printwindow.initialize(); OSRM.Printing.show( OSRM.G.response ); diff --git a/WebContent/routing/OSRM.RoutingDescription.js b/WebContent/routing/OSRM.RoutingDescription.js index 0fde40312..0ec55e785 100644 --- a/WebContent/routing/OSRM.RoutingDescription.js +++ b/WebContent/routing/OSRM.RoutingDescription.js @@ -74,20 +74,12 @@ show: function(response) { // build route description if( i == 0 ) - route_desc += OSRM.loc("DIRECTION_"+OSRM.RoutingDescription.getDirectionId(response.route_instructions[i][0])).replace(/%s/, OSRM.loc(response.route_instructions[i][6]) ); + route_desc += OSRM.loc("DIRECTION_"+OSRM.RoutingDescription.mapDirectionId(response.route_instructions[i][0])).replace(/%s/, OSRM.loc(response.route_instructions[i][6]) ); else if( response.route_instructions[i][1] != "" ) - route_desc += OSRM.loc("DIRECTION_"+OSRM.RoutingDescription.getDirectionId(response.route_instructions[i][0])).replace(/\[(.*)\]/,"$1").replace(/%s/, response.route_instructions[i][1]); + route_desc += OSRM.loc("DIRECTION_"+OSRM.RoutingDescription.mapDirectionId(response.route_instructions[i][0])).replace(/\[(.*)\]/,"$1").replace(/%s/, response.route_instructions[i][1]); else - route_desc += OSRM.loc("DIRECTION_"+OSRM.RoutingDescription.getDirectionId(response.route_instructions[i][0])).replace(/\[(.*)\]/,""); - - -// route_desc += response.route_instructions[i][0]; -// if( i == 0 ) -// route_desc += ' ' + OSRM.loc( response.route_instructions[i][6] ); -// if( response.route_instructions[i][1] != "" ) { -// route_desc += ' on '; -// route_desc += '' + response.route_instructions[i][1] + ''; -// } + route_desc += OSRM.loc("DIRECTION_"+OSRM.RoutingDescription.mapDirectionId(response.route_instructions[i][0])).replace(/\[(.*)\]/,""); + route_desc += ''; route_desc += ""; @@ -155,41 +147,8 @@ showNA: function( display_text ) { document.getElementById('information-box').innerHTML = "
"+display_text+"
"; }, -// map driving instructions to icons -// [TODO: language-safe implementation] -getDirectionIcon: function(name) { - var directions = { - "Turn left":"turn-left", - "Turn right":"turn-right", - "U-Turn":"u-turn", - "Head":"continue", - "Continue":"continue", - "Turn slight left":"slight-left", - "Turn slight right":"slight-right", - "Turn sharp left":"sharp-left", - "Turn sharp right":"sharp-right", - "Enter roundabout and leave at first exit":"round-about", - "Enter roundabout and leave at second exit":"round-about", - "Enter roundabout and leave at third exit":"round-about", - "Enter roundabout and leave at fourth exit":"round-about", - "Enter roundabout and leave at fifth exit":"round-about", - "Enter roundabout and leave at sixth exit":"round-about", - "Enter roundabout and leave at seventh exit":"round-about", - "Enter roundabout and leave at eighth exit":"round-about", - "Enter roundabout and leave at nineth exit":"round-about", - "Enter roundabout and leave at tenth exit":"round-about", - "Enter roundabout and leave at one of the too many exit":"round-about", - "You have reached your destination":"target" - }; - - if( directions[name] ) - return directions[name]; - else - return "default"; -}, - -//map driving instructions to ids -getDirectionId: function(name) { +//map driving instruction ids to internal ids +mapDirectionId: function(name) { var directions = { "Turn left":1, "Turn right":2, @@ -217,7 +176,7 @@ getDirectionId: function(name) { if( directions[name] ) return directions[name]; else - return "default"; + return 0; } }; \ No newline at end of file