From 27cae907b2f01e853247cfcc86118fef50202892 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ju=CC=81lio?= Date: Wed, 13 Jul 2016 00:38:46 +0100 Subject: [PATCH 1/9] trying to add i18n support to viewer --- viewer/js/config/nls/main.js | 23 ++++++++++++++++++++++ viewer/js/config/nls/pt-pt/main.js | 22 +++++++++++++++++++++ viewer/js/config/viewer.js | 31 +++++++++++++++--------------- 3 files changed, 61 insertions(+), 15 deletions(-) create mode 100644 viewer/js/config/nls/main.js create mode 100644 viewer/js/config/nls/pt-pt/main.js diff --git a/viewer/js/config/nls/main.js b/viewer/js/config/nls/main.js new file mode 100644 index 000000000..29a31d349 --- /dev/null +++ b/viewer/js/config/nls/main.js @@ -0,0 +1,23 @@ +// http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html +define({ + root: { + operationalLayers: { + sf311Incidents: 'San Francisco 311 Incidents' + }, + widgetTitles: { + bookmarks: 'Bookmarks', + directions: 'Directions', + draw: 'Draw', + editor: 'Editor', + find: 'Find', + help: 'Help', + identify: 'Identify', + measure: 'Measurement', + layerControl: 'Layers', + legend: 'Legend', + print: 'Print', + streetview: 'Google Street View' + } + }, + 'pt-pt': true +}) diff --git a/viewer/js/config/nls/pt-pt/main.js b/viewer/js/config/nls/pt-pt/main.js new file mode 100644 index 000000000..e60ee3ed3 --- /dev/null +++ b/viewer/js/config/nls/pt-pt/main.js @@ -0,0 +1,22 @@ +// http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html +define({ + root: { + operationalLayers: { + sf311Incidents: 'San Francisco 311 Incidents' + }, + widgetTitles: { + bookmarks: 'Marcadores', + directions: 'Direcções', + draw: 'Desenhar', + editor: 'Editor', + find: 'Procurar', + help: 'Ajuda', + identify: 'Identificar', + measure: 'Medir', + layerControl: 'Camadas', + legend: 'Legendas', + print: 'Imprimir', + streetview: 'Google Street View' + } + } +}) diff --git a/viewer/js/config/viewer.js b/viewer/js/config/viewer.js index 89d2eb3ac..08859995a 100644 --- a/viewer/js/config/viewer.js +++ b/viewer/js/config/viewer.js @@ -4,8 +4,9 @@ define([ 'esri/config', /*'esri/urlUtils',*/ 'esri/tasks/GeometryService', - 'esri/layers/ImageParameters' -], function (units, Extent, esriConfig, /*urlUtils,*/ GeometryService, ImageParameters) { + 'esri/layers/ImageParameters', + 'dojo/i18n!./nls/main' +], function (units, Extent, esriConfig, /*urlUtils,*/ GeometryService, ImageParameters, i18n) { // url to your proxy page, must be on same machine hosting you app. See proxy folder for readme. esriConfig.defaults.io.proxyUrl = 'proxy/proxy.ashx'; @@ -131,7 +132,7 @@ define([ }, { type: 'feature', url: 'https://sampleserver3.arcgisonline.com/ArcGIS/rest/services/SanFrancisco/311Incidents/FeatureServer/0', - title: 'San Francisco 311 Incidents', + title: i18n.operationalLayers.sf311Incidents, options: { id: 'sf311Incidents', opacity: 1.0, @@ -267,7 +268,7 @@ define([ id: 'identify', type: 'titlePane', path: 'gis/dijit/Identify', - title: 'Identify', + title: i18n.widgetTitles.identify, open: false, position: 3, options: 'config/identify' @@ -366,7 +367,7 @@ define([ id: 'legend', type: 'titlePane', path: 'esri/dijit/Legend', - title: 'Legend', + title: i18n.widgetTitles.legend, open: false, position: 0, options: { @@ -379,7 +380,7 @@ define([ id: 'layerControl', type: 'titlePane', path: 'gis/dijit/LayerControl', - title: 'Layers', + title: i18n.widgetTitles.layerControl, open: false, position: 0, options: { @@ -395,7 +396,7 @@ define([ id: 'bookmarks', type: 'titlePane', path: 'gis/dijit/Bookmarks', - title: 'Bookmarks', + title: i18n.widgetTitles.bookmarks, open: false, position: 2, options: 'config/bookmarks' @@ -406,7 +407,7 @@ define([ type: 'titlePane', canFloat: true, path: 'gis/dijit/Find', - title: 'Find', + title: i18n.widgetTitles.find, open: false, position: 3, options: 'config/find' @@ -417,7 +418,7 @@ define([ type: 'titlePane', canFloat: true, path: 'gis/dijit/Draw', - title: 'Draw', + title: i18n.widgetTitles.draw, open: false, position: 4, options: { @@ -431,7 +432,7 @@ define([ type: 'titlePane', canFloat: true, path: 'gis/dijit/Measurement', - title: 'Measurement', + title: i18n.widgetTitles.measure, open: false, position: 5, options: { @@ -447,7 +448,7 @@ define([ type: 'titlePane', canFloat: true, path: 'gis/dijit/Print', - title: 'Print', + title: i18n.widgetTitles.print, open: false, position: 6, options: { @@ -465,7 +466,7 @@ define([ id: 'directions', type: 'titlePane', path: 'gis/dijit/Directions', - title: 'Directions', + title: i18n.widgetTitles.directions, open: false, position: 7, options: { @@ -486,7 +487,7 @@ define([ id: 'editor', type: 'titlePane', path: 'gis/dijit/Editor', - title: 'Editor', + title: i18n.widgetTitles.editor, open: false, position: 8, options: { @@ -515,7 +516,7 @@ define([ canFloat: true, position: 9, path: 'gis/dijit/StreetView', - title: 'Google Street View', + title: i18n.widgetTitles.streetview, paneOptions: { resizable: true, resizeOptions: { @@ -536,7 +537,7 @@ define([ id: 'help', type: 'floating', path: 'gis/dijit/Help', - title: 'Help', + title: i18n.widgetTitles.help, options: {} } From 38660d44466446379386e7597100ea8a05278948 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ju=CC=81lio?= Date: Thu, 14 Jul 2016 16:43:14 +0100 Subject: [PATCH 2/9] complete viewer, add nls support in basemaps and bookmarks uniformize keys names to camelCase. --- viewer/js/config/basemaps.js | 59 +++++++++++------------ viewer/js/config/bookmarks.js | 39 +++++++++------- viewer/js/config/nls/main.js | 75 ++++++++++++++++++++++-------- viewer/js/config/nls/pt-pt/main.js | 48 +++++++++++-------- viewer/js/config/viewer.js | 46 +++++++++--------- 5 files changed, 159 insertions(+), 108 deletions(-) diff --git a/viewer/js/config/basemaps.js b/viewer/js/config/basemaps.js index 92e4ba169..745b50911 100644 --- a/viewer/js/config/basemaps.js +++ b/viewer/js/config/basemaps.js @@ -1,12 +1,13 @@ define([ //'esri/dijit/Basemap', //'esri/dijit/BasemapLayer' -], function (/* Basemap, BasemapLayer */) { + 'dojo/i18n!./nls/main' +], function (/* Basemap, BasemapLayer, */i18n) { return { map: true, // needs a reference to the map mode: 'agol', // mut be either 'agol' or 'custom' - title: 'Basemaps', // title for widget + title: i18n.basemaps.title, // title for widget /* optional starting basemap / otherwise uses the basemap from the map @@ -18,51 +19,51 @@ define([ / otherwise uses keys in basemaps object below / values in array must match keys in basemaps object */ - //basemapsToShow: ['streets', 'satellite', 'hybrid', 'topo', 'lightGray', 'gray', 'national-geographic', 'osm', 'oceans'], + //basemapsToShow: ['streets', 'satellite', 'hybrid', 'topo', 'lightGray', 'gray', 'nationalGeographic', 'osm', 'oceans'], // define all valid basemaps here. basemaps: { streets: { - title: 'Streets' + title: i18n.basemaps.streets }, - 'streets-night-vector': { // requires v3.16 or higher - title: 'Streets (Night)' + streetsNightVector: { // requires v3.16 or higher + title: i18n.basemaps.streetsNightVector }, - 'streets-navigation-vector': { // requires v3.16 or higher - title: 'Streets (Navigation)' + streetsNavigationVector: { // requires v3.16 or higher + title: i18n.basemaps.streetsNavigationVector }, - 'streets-relief-vector': { // requires v3.16 or higher - title: 'Street (Relief)' + streetsReliefVector: { // requires v3.16 or higher + title: i18n.basemaps.streetsReliefVector }, satellite: { - title: 'Satellite' + title: i18n.basemaps.satellite }, hybrid: { - title: 'Hybrid' + title: i18n.basemaps.hybrid }, topo: { - title: 'Topo' + title: i18n.basemaps.topo }, - 'terrain': { - title: 'Terrain' + terrain: { + title: i18n.basemaps.terrain }, - 'gray-vector': { // requires v3.16 or higher - title: 'Gray' + grayVector: { // requires v3.16 or higher + title: i18n.basemaps.grayVector }, - 'dark-gray-vector': { // requires v3.16 or higher - title: 'Dark Gray' + darkGrayVector: { // requires v3.16 or higher + title: i18n.basemaps.darkGrayVector }, oceans: { - title: 'Oceans' + title: i18n.basemaps.oceans }, - 'national-geographic': { - title: 'Nat Geo' + nationalGeographic: { + title: i18n.basemaps.nationalGeographic }, osm: { - title: 'Open Street Map' + title: i18n.basemaps.osm }, - LandsatShaded: { - title: 'Landsat Shaded', + landsatShaded: { + title: i18n.basemaps.landsatShaded, basemap: { baseMapLayers: [ { @@ -71,8 +72,8 @@ define([ ] } }, - EarthAtNight: { - title: 'Earth at Night', + earthAtNight: { + title: i18n.basemaps.earthAtNight, basemap: { baseMapLayers: [ { @@ -81,8 +82,8 @@ define([ ] } }, - DavidRumseyMap1812: { - title: 'David Rumsey 1812', + davidRumseyMap1812: { + title: i18n.basemaps.davidRumseyMap1812, basemap: { baseMapLayers: [ { diff --git a/viewer/js/config/bookmarks.js b/viewer/js/config/bookmarks.js index cf89998e3..e0f7552ea 100644 --- a/viewer/js/config/bookmarks.js +++ b/viewer/js/config/bookmarks.js @@ -1,18 +1,23 @@ -define({ - map: true, - editable: true, - bookmarks: [ - { - extent: { - xmin: -15489130.48708616, - ymin: 398794.4860580916, - xmax: -5891085.7193757, - ymax: 8509680.431452557, - spatialReference: { - wkid: 102100 - } - }, - name: 'USA' - } - ] +define([ + 'dojo/i18n!./nls/main' +], function (i18n) { + + return { + map: true, + editable: true, + bookmarks: [ + { + extent: { + xmin: -15489130.48708616, + ymin: 398794.4860580916, + xmax: -5891085.7193757, + ymax: 8509680.431452557, + spatialReference: { + wkid: 102100 + } + }, + name: i18n.bookmarks.usa + } + ] + } }); \ No newline at end of file diff --git a/viewer/js/config/nls/main.js b/viewer/js/config/nls/main.js index 29a31d349..75da4bc62 100644 --- a/viewer/js/config/nls/main.js +++ b/viewer/js/config/nls/main.js @@ -1,23 +1,58 @@ // http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html define({ - root: { - operationalLayers: { - sf311Incidents: 'San Francisco 311 Incidents' + root: { + basemaps: { + davidRumseyMap1812: 'David Rumsey 1812', + darkGrayVector: 'Dark Gray', + earthAtNight: 'Earth at Night', + grayVector: 'Gray', + hybrid: 'Hybrid', + landsatShaded: 'Landsat Shaded', + nationalGeographic: 'Nat Geo', + oceans: 'Oceans', + osm: 'Open Street Map', + satellite: 'Satellite', + streets: 'Streets', + streetsNavigationVector: 'Streets (Navigation)', + streetsNightVector: 'Streets (Night)', + streetsReliefVector: 'Street (Relief)', + terrain: 'Terrain', + title: 'Basemaps', + topo: 'Topographic' + }, + bookmarks: { + usa: 'USA' + }, + viewer: { + operationalLayers: { + damageAssessment: 'Damage Assessment', + louisvillePubSafety: 'Louisville Public Safety', + restaurants: 'Restaurants', + sf311Incidents: 'San Francisco 311 Incidents', + vectortile1: 'Light Gray Canvas Vector', + vectortile2: 'Custom Vector Style' + }, + titles: { + header: 'Configurable Map Viewer', + pageTitle: 'Configurable Map Viewer' + subHeader: 'make it your own', + }, + widgets: { + bookmarks: 'Bookmarks', + directions: 'Directions', + draw: 'Draw', + editor: 'Editor', + find: 'Find', + help: 'Help', + identify: 'Identify', + measure: 'Measurement', + layerControl: 'Layers', + legend: 'Legend', + print: 'Print', + streetview: 'Google Street View' + } + + }, }, - widgetTitles: { - bookmarks: 'Bookmarks', - directions: 'Directions', - draw: 'Draw', - editor: 'Editor', - find: 'Find', - help: 'Help', - identify: 'Identify', - measure: 'Measurement', - layerControl: 'Layers', - legend: 'Legend', - print: 'Print', - streetview: 'Google Street View' - } - }, - 'pt-pt': true -}) + 'pt-pt': true +}); diff --git a/viewer/js/config/nls/pt-pt/main.js b/viewer/js/config/nls/pt-pt/main.js index e60ee3ed3..276478f0a 100644 --- a/viewer/js/config/nls/pt-pt/main.js +++ b/viewer/js/config/nls/pt-pt/main.js @@ -1,22 +1,32 @@ // http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html define({ - root: { - operationalLayers: { - sf311Incidents: 'San Francisco 311 Incidents' - }, - widgetTitles: { - bookmarks: 'Marcadores', - directions: 'Direcções', - draw: 'Desenhar', - editor: 'Editor', - find: 'Procurar', - help: 'Ajuda', - identify: 'Identificar', - measure: 'Medir', - layerControl: 'Camadas', - legend: 'Legendas', - print: 'Imprimir', - streetview: 'Google Street View' + viewer: { + operationalLayers: { + damageAssessment: 'Avaliação de dano', + louisvillePubSafety: 'Segurança Pública de Louisville', + restaurants: 'Restaurantes', + sf311Incidents: 'Incidentes do 311 de São Francisco', + vectortile1: 'Tela vectorial cinzento claro', + vectortile2: 'Estilo vectorial personalizado' + }, + titles: { + header: 'Configurable Map Viewer', + pageTitle: 'Configurable Map Viewer' + subHeader: 'make it your own', + }, + widgets: { + bookmarks: 'Marcadores', + directions: 'Direcções', + draw: 'Desenhar', + editor: 'Editor', + find: 'Procurar', + help: 'Ajuda', + identify: 'Identificar', + measure: 'Medir', + layerControl: 'Camadas', + legend: 'Legendas', + print: 'Imprimir', + streetview: 'Google Street View' + } } - } -}) +}); diff --git a/viewer/js/config/viewer.js b/viewer/js/config/viewer.js index 08859995a..1a2673dcc 100644 --- a/viewer/js/config/viewer.js +++ b/viewer/js/config/viewer.js @@ -86,9 +86,9 @@ define([ // custom titles /* titles: { - header: 'My App', - subHeader: 'My GIS App is the best!', - pageTitle: 'My App' + header: i18n.viewer.titles.header, + subHeader: i18n.viewer.titles.subHeader, + pageTitle: i18n.viewer.titles.pageTitle }, */ @@ -112,7 +112,7 @@ define([ operationalLayers: [{ type: 'feature', url: 'https://services1.arcgis.com/6bXbLtkf4y11TosO/arcgis/rest/services/Restaurants/FeatureServer/0', - title: 'Restaurants', + title: i18n.viewer.operationalLayers.restaurants, options: { id: 'restaurants', opacity: 1.0, @@ -126,13 +126,13 @@ define([ legendLayerInfos: { exclude: false, layerInfo: { - title: 'Restaurants' + title: i18n.viewer.operationalLayers.restaurants } } }, { type: 'feature', url: 'https://sampleserver3.arcgisonline.com/ArcGIS/rest/services/SanFrancisco/311Incidents/FeatureServer/0', - title: i18n.operationalLayers.sf311Incidents, + title: i18n.viewer.operationalLayers.sf311Incidents, options: { id: 'sf311Incidents', opacity: 1.0, @@ -143,7 +143,7 @@ define([ }, { type: 'dynamic', url: 'https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/PublicSafety/PublicSafetyOperationalLayers/MapServer', - title: 'Louisville Public Safety', + title: i18n.viewer.operationalLayers.louisvillePubSafety, options: { id: 'louisvillePubSafety', opacity: 1.0, @@ -167,9 +167,9 @@ define([ }, { type: 'dynamic', url: 'https://sampleserver6.arcgisonline.com/arcgis/rest/services/DamageAssessment/MapServer', - title: 'Damage Assessment', + title: i18n.viewer.operationalLayers.damageAssessment, options: { - id: 'DamageAssessment', + id: 'damageAssessment', opacity: 1.0, visible: true, imageParameters: buildImageParameters() @@ -186,7 +186,7 @@ define([ //examples of vector tile layers (beta in v3.15) }, { type: 'vectortile', - title: 'Light Gray Canvas Vector', + title: i18n.viewer.operationalLayers.vectortile1, url: 'https://www.arcgis.com/sharing/rest/content/items/bdf1eec3fa79456c8c7c2bb62f86dade/resources/styles/root.json', options: { id: 'vectortile1', @@ -196,7 +196,7 @@ define([ }, { // taken from this demo: https://github.com/ycabon/presentations/blob/gh-pages/2015-berlin-plenary/demos/3.15-vectortile/create-by-style-object.html type: 'vectortile', - title: 'Custom Vector Style', + title: i18n.viewer.operationalLayers.vectortile2, options: { id: 'vectortile2', opacity: 1.0, @@ -268,7 +268,7 @@ define([ id: 'identify', type: 'titlePane', path: 'gis/dijit/Identify', - title: i18n.widgetTitles.identify, + title: i18n.viewer.widgets.identify, open: false, position: 3, options: 'config/identify' @@ -367,7 +367,7 @@ define([ id: 'legend', type: 'titlePane', path: 'esri/dijit/Legend', - title: i18n.widgetTitles.legend, + title: i18n.viewer.widgets.legend, open: false, position: 0, options: { @@ -380,7 +380,7 @@ define([ id: 'layerControl', type: 'titlePane', path: 'gis/dijit/LayerControl', - title: i18n.widgetTitles.layerControl, + title: i18n.viewer.widgets.layerControl, open: false, position: 0, options: { @@ -396,7 +396,7 @@ define([ id: 'bookmarks', type: 'titlePane', path: 'gis/dijit/Bookmarks', - title: i18n.widgetTitles.bookmarks, + title: i18n.viewer.widgets.bookmarks, open: false, position: 2, options: 'config/bookmarks' @@ -407,7 +407,7 @@ define([ type: 'titlePane', canFloat: true, path: 'gis/dijit/Find', - title: i18n.widgetTitles.find, + title: i18n.viewer.widgets.find, open: false, position: 3, options: 'config/find' @@ -418,7 +418,7 @@ define([ type: 'titlePane', canFloat: true, path: 'gis/dijit/Draw', - title: i18n.widgetTitles.draw, + title: i18n.viewer.widgets.draw, open: false, position: 4, options: { @@ -432,7 +432,7 @@ define([ type: 'titlePane', canFloat: true, path: 'gis/dijit/Measurement', - title: i18n.widgetTitles.measure, + title: i18n.viewer.widgets.measure, open: false, position: 5, options: { @@ -448,7 +448,7 @@ define([ type: 'titlePane', canFloat: true, path: 'gis/dijit/Print', - title: i18n.widgetTitles.print, + title: i18n.viewer.widgets.print, open: false, position: 6, options: { @@ -466,7 +466,7 @@ define([ id: 'directions', type: 'titlePane', path: 'gis/dijit/Directions', - title: i18n.widgetTitles.directions, + title: i18n.viewer.widgets.directions, open: false, position: 7, options: { @@ -487,7 +487,7 @@ define([ id: 'editor', type: 'titlePane', path: 'gis/dijit/Editor', - title: i18n.widgetTitles.editor, + title: i18n.viewer.widgets.editor, open: false, position: 8, options: { @@ -516,7 +516,7 @@ define([ canFloat: true, position: 9, path: 'gis/dijit/StreetView', - title: i18n.widgetTitles.streetview, + title: i18n.viewer.widgets.streetview, paneOptions: { resizable: true, resizeOptions: { @@ -537,7 +537,7 @@ define([ id: 'help', type: 'floating', path: 'gis/dijit/Help', - title: i18n.widgetTitles.help, + title: i18n.viewer.widgets.help, options: {} } From ce893307b2a7aafe25dedf35091ac820692624d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ju=CC=81lio?= Date: Thu, 14 Jul 2016 18:18:20 +0100 Subject: [PATCH 3/9] translate page titles --- viewer/js/config/nls/main.js | 7 +++---- viewer/js/config/nls/pt-pt/main.js | 4 ++-- viewer/js/config/viewer.js | 2 -- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/viewer/js/config/nls/main.js b/viewer/js/config/nls/main.js index 75da4bc62..04fc35fd1 100644 --- a/viewer/js/config/nls/main.js +++ b/viewer/js/config/nls/main.js @@ -34,8 +34,8 @@ define({ }, titles: { header: 'Configurable Map Viewer', - pageTitle: 'Configurable Map Viewer' - subHeader: 'make it your own', + pageTitle: 'Configurable Map Viewer', + subHeader: 'make it your own' }, widgets: { bookmarks: 'Bookmarks', @@ -51,8 +51,7 @@ define({ print: 'Print', streetview: 'Google Street View' } - - }, + } }, 'pt-pt': true }); diff --git a/viewer/js/config/nls/pt-pt/main.js b/viewer/js/config/nls/pt-pt/main.js index 276478f0a..1cc146a82 100644 --- a/viewer/js/config/nls/pt-pt/main.js +++ b/viewer/js/config/nls/pt-pt/main.js @@ -11,8 +11,8 @@ define({ }, titles: { header: 'Configurable Map Viewer', - pageTitle: 'Configurable Map Viewer' - subHeader: 'make it your own', + pageTitle: 'Configurable Map Viewer — Um visualizador de mapas configurável', // One configurable map viewer + subHeader: 'personaliza-o ao teu gosto' // customize it at your will (the literal translation doesn’t sound good) }, widgets: { bookmarks: 'Marcadores', diff --git a/viewer/js/config/viewer.js b/viewer/js/config/viewer.js index 1a2673dcc..ca518d6f3 100644 --- a/viewer/js/config/viewer.js +++ b/viewer/js/config/viewer.js @@ -84,13 +84,11 @@ define([ // collapseButtonsPane: 'center', //center or outer // custom titles - /* titles: { header: i18n.viewer.titles.header, subHeader: i18n.viewer.titles.subHeader, pageTitle: i18n.viewer.titles.pageTitle }, - */ // user-defined layer types /* From 11116e77631a9e2b09db04b71167f2eab28d00f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ju=CC=81lio?= Date: Thu, 14 Jul 2016 22:01:01 +0100 Subject: [PATCH 4/9] translate basemaps and bookmark --- viewer/js/config/nls/main.js | 2 +- viewer/js/config/nls/pt-pt/main.js | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/viewer/js/config/nls/main.js b/viewer/js/config/nls/main.js index 04fc35fd1..c5ada65eb 100644 --- a/viewer/js/config/nls/main.js +++ b/viewer/js/config/nls/main.js @@ -15,7 +15,7 @@ define({ streets: 'Streets', streetsNavigationVector: 'Streets (Navigation)', streetsNightVector: 'Streets (Night)', - streetsReliefVector: 'Street (Relief)', + streetsReliefVector: 'Streets (Relief)', terrain: 'Terrain', title: 'Basemaps', topo: 'Topographic' diff --git a/viewer/js/config/nls/pt-pt/main.js b/viewer/js/config/nls/pt-pt/main.js index 1cc146a82..2193a033e 100644 --- a/viewer/js/config/nls/pt-pt/main.js +++ b/viewer/js/config/nls/pt-pt/main.js @@ -1,5 +1,27 @@ // http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html define({ + basemaps: { + davidRumseyMap1812: 'David Rumsey 1812', + darkGrayVector: 'Cinzento escuro', + earthAtNight: 'Terra à noite', + grayVector: 'Cinzento', + hybrid: 'Híbrido', + landsatShaded: 'Landsat sombreado', + nationalGeographic: 'National Geographic', + oceans: 'Oceanos', + osm: 'Open Street Map', + satellite: 'Satélite', + streets: 'Ruas', + streetsNavigationVector: 'Ruas (Navegação)', + streetsNightVector: 'Ruas (Nocturno)', + streetsReliefVector: 'Ruas (Relevo)', + terrain: 'Terreno', + title: 'Mapas base', + topo: 'Topográfico' + }, + bookmarks: { + usa: 'EUA' + }, viewer: { operationalLayers: { damageAssessment: 'Avaliação de dano', From e5e951db74255ab96c390b975d9b8b2bf2163800 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ju=CC=81lio?= Date: Thu, 14 Jul 2016 22:14:27 +0100 Subject: [PATCH 5/9] drop translation of commented operationalLayers examples --- viewer/js/config/nls/main.js | 2 -- viewer/js/config/nls/pt-pt/main.js | 2 -- viewer/js/config/viewer.js | 6 +++--- 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/viewer/js/config/nls/main.js b/viewer/js/config/nls/main.js index c5ada65eb..e478f7c1f 100644 --- a/viewer/js/config/nls/main.js +++ b/viewer/js/config/nls/main.js @@ -29,8 +29,6 @@ define({ louisvillePubSafety: 'Louisville Public Safety', restaurants: 'Restaurants', sf311Incidents: 'San Francisco 311 Incidents', - vectortile1: 'Light Gray Canvas Vector', - vectortile2: 'Custom Vector Style' }, titles: { header: 'Configurable Map Viewer', diff --git a/viewer/js/config/nls/pt-pt/main.js b/viewer/js/config/nls/pt-pt/main.js index 2193a033e..24a260efc 100644 --- a/viewer/js/config/nls/pt-pt/main.js +++ b/viewer/js/config/nls/pt-pt/main.js @@ -28,8 +28,6 @@ define({ louisvillePubSafety: 'Segurança Pública de Louisville', restaurants: 'Restaurantes', sf311Incidents: 'Incidentes do 311 de São Francisco', - vectortile1: 'Tela vectorial cinzento claro', - vectortile2: 'Estilo vectorial personalizado' }, titles: { header: 'Configurable Map Viewer', diff --git a/viewer/js/config/viewer.js b/viewer/js/config/viewer.js index ca518d6f3..5e22c8fcf 100644 --- a/viewer/js/config/viewer.js +++ b/viewer/js/config/viewer.js @@ -184,8 +184,8 @@ define([ //examples of vector tile layers (beta in v3.15) }, { type: 'vectortile', - title: i18n.viewer.operationalLayers.vectortile1, - url: 'https://www.arcgis.com/sharing/rest/content/items/bdf1eec3fa79456c8c7c2bb62f86dade/resources/styles/root.json', + title: 'Light Gray Canvas Vector', + url: 'https//www.arcgis.com/sharing/rest/content/items/bdf1eec3fa79456c8c7c2bb62f86dade/resources/styles/root.json', options: { id: 'vectortile1', opacity: 0.8, @@ -194,7 +194,7 @@ define([ }, { // taken from this demo: https://github.com/ycabon/presentations/blob/gh-pages/2015-berlin-plenary/demos/3.15-vectortile/create-by-style-object.html type: 'vectortile', - title: i18n.viewer.operationalLayers.vectortile2, + title: 'Custom Vector Style', options: { id: 'vectortile2', opacity: 1.0, From 89b38011ab06064729bae9543c83a2d74aeb6daa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ju=CC=81lio?= Date: Thu, 14 Jul 2016 22:48:52 +0100 Subject: [PATCH 6/9] add widgets translation --- .../gis/dijit/Basemaps/nls/pt-pt/resource.js | 3 ++ viewer/js/gis/dijit/Basemaps/nls/resource.js | 3 +- .../dijit/Directions/nls/pt-pt/resource.js | 23 +++++++++++ .../js/gis/dijit/Directions/nls/resource.js | 3 +- .../js/gis/dijit/Draw/nls/pt-pt/resource.js | 14 +++++++ viewer/js/gis/dijit/Draw/nls/resource.js | 3 +- .../js/gis/dijit/Editor/nls/pt-pt/resource.js | 6 +++ viewer/js/gis/dijit/Editor/nls/resource.js | 3 +- .../js/gis/dijit/Find/nls/pt-pt/resource.js | 26 ++++++++++++ viewer/js/gis/dijit/Find/nls/resource.js | 3 +- .../gis/dijit/Geocoder/nls/pt-pt/resource.js | 14 +++++++ viewer/js/gis/dijit/Geocoder/nls/resource.js | 3 +- .../gis/dijit/Identify/nls/pt-pt/resource.js | 12 ++++++ viewer/js/gis/dijit/Identify/nls/resource.js | 3 +- .../dijit/LayerControl/nls/pt-pt/resource.js | 21 ++++++++++ .../js/gis/dijit/LayerControl/nls/resource.js | 3 +- .../js/gis/dijit/Print/nls/pt-pt/resource.js | 40 +++++++++++++++++++ viewer/js/gis/dijit/Print/nls/resource.js | 3 +- .../dijit/StreetView/nls/pt-pt/resource.js | 10 +++++ .../js/gis/dijit/StreetView/nls/resource.js | 3 +- 20 files changed, 189 insertions(+), 10 deletions(-) create mode 100644 viewer/js/gis/dijit/Basemaps/nls/pt-pt/resource.js create mode 100644 viewer/js/gis/dijit/Directions/nls/pt-pt/resource.js create mode 100644 viewer/js/gis/dijit/Draw/nls/pt-pt/resource.js create mode 100644 viewer/js/gis/dijit/Editor/nls/pt-pt/resource.js create mode 100644 viewer/js/gis/dijit/Find/nls/pt-pt/resource.js create mode 100644 viewer/js/gis/dijit/Geocoder/nls/pt-pt/resource.js create mode 100644 viewer/js/gis/dijit/Identify/nls/pt-pt/resource.js create mode 100644 viewer/js/gis/dijit/LayerControl/nls/pt-pt/resource.js create mode 100644 viewer/js/gis/dijit/Print/nls/pt-pt/resource.js create mode 100644 viewer/js/gis/dijit/StreetView/nls/pt-pt/resource.js diff --git a/viewer/js/gis/dijit/Basemaps/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Basemaps/nls/pt-pt/resource.js new file mode 100644 index 000000000..0407ae701 --- /dev/null +++ b/viewer/js/gis/dijit/Basemaps/nls/pt-pt/resource.js @@ -0,0 +1,3 @@ +define ({ + title: 'Mapas base' +}); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Basemaps/nls/resource.js b/viewer/js/gis/dijit/Basemaps/nls/resource.js index b7dace410..d9d66ace7 100644 --- a/viewer/js/gis/dijit/Basemaps/nls/resource.js +++ b/viewer/js/gis/dijit/Basemaps/nls/resource.js @@ -1,5 +1,6 @@ define ({ root: { title: 'Basemaps' - } + }, + 'pt-pt': true }); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Directions/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Directions/nls/pt-pt/resource.js new file mode 100644 index 000000000..38de61d1d --- /dev/null +++ b/viewer/js/gis/dijit/Directions/nls/pt-pt/resource.js @@ -0,0 +1,23 @@ +define ({ + labels: { + startAtMyLocation: 'iniciar na minha localização', + endAtMyLocation: 'terminar na minha localização', + clearStops: 'limpar paragens', + addStop: 'Adicionar paragem', + directionsToHere: 'Direcções para aqui', + directionsFromHere: 'Direcções a partir daqui', + useMyLocationAsStart: 'Usar a minha localização como ponto inicial', + useMyLocationAsEnd: 'Usar a minha localização como ponto final', + directions: 'Direcções' + }, + errors: { + geoLocation: { + title: 'Erro', + message: 'GeoLocalização não suportada no seu navegador.' + }, + location: { + title: 'Erro', + message: 'Ocorreu um problema ao obter a sua localização: ' + } + } +}); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Directions/nls/resource.js b/viewer/js/gis/dijit/Directions/nls/resource.js index 125b2e678..16dcbd567 100644 --- a/viewer/js/gis/dijit/Directions/nls/resource.js +++ b/viewer/js/gis/dijit/Directions/nls/resource.js @@ -21,5 +21,6 @@ define ({ message: 'There was a problem getting your location: ' } } - } + }, + 'pt-pt': true }); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Draw/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Draw/nls/pt-pt/resource.js new file mode 100644 index 000000000..7b1eb8663 --- /dev/null +++ b/viewer/js/gis/dijit/Draw/nls/pt-pt/resource.js @@ -0,0 +1,14 @@ +define ({ + labels: { + point: 'Ponto', + circle: 'Círculo', + polyline: 'Polilinha', + freehandPolyline: 'Polilinha à mão livre', + polygon: 'Polígono', + freehandPolygon: 'Polígono à mão livre', + stopDrawing: 'Parar de desenhar', + clearDrawing: 'Limpar desenhos', + currentDrawMode: 'Modo de desenho actual:', + currentDrawModeNone: 'Nenhum' + } +}); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Draw/nls/resource.js b/viewer/js/gis/dijit/Draw/nls/resource.js index 29c6ab534..f571404d0 100644 --- a/viewer/js/gis/dijit/Draw/nls/resource.js +++ b/viewer/js/gis/dijit/Draw/nls/resource.js @@ -12,5 +12,6 @@ define ({ currentDrawMode: 'Current draw mode:', currentDrawModeNone: 'None' } - } + }, + 'pt-pt': true }); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Editor/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Editor/nls/pt-pt/resource.js new file mode 100644 index 000000000..065f070fd --- /dev/null +++ b/viewer/js/gis/dijit/Editor/nls/pt-pt/resource.js @@ -0,0 +1,6 @@ +define ({ + labels: { + startEditing: 'Iniciar edição', + stopEditing: 'Parar edição' + } +}); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Editor/nls/resource.js b/viewer/js/gis/dijit/Editor/nls/resource.js index e24f161fb..d9212d380 100644 --- a/viewer/js/gis/dijit/Editor/nls/resource.js +++ b/viewer/js/gis/dijit/Editor/nls/resource.js @@ -4,5 +4,6 @@ define ({ startEditing: 'Start editing', stopEditing: 'Stop editing' } - } + }, + 'pt-pt': true }); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Find/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Find/nls/pt-pt/resource.js new file mode 100644 index 000000000..7538316be --- /dev/null +++ b/viewer/js/gis/dijit/Find/nls/pt-pt/resource.js @@ -0,0 +1,26 @@ +// http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html +define({ + selectQuery: 'Seleccionar consulta', + searchText: { + label: 'Procurar por', + placeholder: 'Introduza o texto que pretende procurar.' + }, + exactMatches: 'Apenas correspondências exactas', + searchButton: { + label: 'Procurar', + busyLabel: 'a procurar' + }, + clearButton: { + label: 'Limpar' + }, + searching: 'A procurar...', + resultsLabel: { + multipleResultsSuffix: 's', + labelPrefix: 'Resultado', + labelSuffix: 'encontrado' + }, + noResultsLabel: 'Nenhum resultado encontrado.', + optionsLabel: 'Opções', + zoomOnSelect: 'Aproximar ao seleccionar', + zoomOnDeselect: 'Aproximar ao desseleccionar' +}); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Find/nls/resource.js b/viewer/js/gis/dijit/Find/nls/resource.js index 3564a898e..c5d1ed505 100644 --- a/viewer/js/gis/dijit/Find/nls/resource.js +++ b/viewer/js/gis/dijit/Find/nls/resource.js @@ -24,6 +24,7 @@ define({ optionsLabel: 'Options', zoomOnSelect: 'Zoom on select', zoomOnDeselect: 'Zoom on deselect' - } + }, + 'pt-pt': true }); diff --git a/viewer/js/gis/dijit/Geocoder/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Geocoder/nls/pt-pt/resource.js new file mode 100644 index 000000000..302069814 --- /dev/null +++ b/viewer/js/gis/dijit/Geocoder/nls/pt-pt/resource.js @@ -0,0 +1,14 @@ +define ({ + title: 'Alternar barra de pesquisa', + labels: { + address: 'Endereço', + neighborhood: 'Bairro', + city: 'Cidade', + subregion: 'Subregião', + region: 'Região', + postalCode: 'Código postal', + countryCode: 'Código do país', + locatorName: 'Nome do localizador', + getAddressHere: 'Obter o endereço daqui' + } +}); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Geocoder/nls/resource.js b/viewer/js/gis/dijit/Geocoder/nls/resource.js index 5f02f504a..b917a3046 100644 --- a/viewer/js/gis/dijit/Geocoder/nls/resource.js +++ b/viewer/js/gis/dijit/Geocoder/nls/resource.js @@ -12,5 +12,6 @@ define ({ locatorName: 'Locator name', getAddressHere: 'Get address here' } - } + }, + 'pt-pt': true }); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Identify/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Identify/nls/pt-pt/resource.js new file mode 100644 index 000000000..23d428855 --- /dev/null +++ b/viewer/js/gis/dijit/Identify/nls/pt-pt/resource.js @@ -0,0 +1,12 @@ +define ({ + labels: { + selectLayer: 'Escolher "Todas as camadas visíveis" ou uma única camada para identificar:', + allVisibleLayers: '*** Todas as camadas visíveis ***' + }, + rightClickMenuItem: { + label: 'Identificar aqui' + }, + mapInfoWindow: { + identifyingTitle: 'A identificar...' + } +}); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Identify/nls/resource.js b/viewer/js/gis/dijit/Identify/nls/resource.js index 54093328c..769ecc9e0 100644 --- a/viewer/js/gis/dijit/Identify/nls/resource.js +++ b/viewer/js/gis/dijit/Identify/nls/resource.js @@ -10,5 +10,6 @@ define ({ mapInfoWindow: { identifyingTitle: 'Identifying...' } - } + }, + 'pt-pt': true }); \ No newline at end of file diff --git a/viewer/js/gis/dijit/LayerControl/nls/pt-pt/resource.js b/viewer/js/gis/dijit/LayerControl/nls/pt-pt/resource.js new file mode 100644 index 000000000..bbb63ba4d --- /dev/null +++ b/viewer/js/gis/dijit/LayerControl/nls/pt-pt/resource.js @@ -0,0 +1,21 @@ +// internationalization for LayerControl +// +// http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html +// +// if you would like to add a locale please create an issue at +// https://github.com/cmv/cmv-app/issues and someone will assist +// if need be or checkout the link above and submit a PR +define({ + noLegend: 'Sem legenda', + moveUp: 'Mover para cima', + moveDown: 'Mover para baixo', + zoomTo: 'Aproximar à Camada', + transparency: 'Transparência', + metadata: 'Metadados', + layerSwipe: 'Deslizar camada', + layerSwipeVertical: 'Vertical', + layerSwipeHorizontal: 'Horizontal', + layerSwipeScope: 'Janela', + dynamicSublayersOn: 'Activar todas as subcamadas', + dynamicSublayersOff: 'Desligar todas as subcamadas' +}); diff --git a/viewer/js/gis/dijit/LayerControl/nls/resource.js b/viewer/js/gis/dijit/LayerControl/nls/resource.js index 98a9848cb..cc3ee742b 100644 --- a/viewer/js/gis/dijit/LayerControl/nls/resource.js +++ b/viewer/js/gis/dijit/LayerControl/nls/resource.js @@ -19,5 +19,6 @@ define({ layerSwipeScope: 'Scope', dynamicSublayersOn: 'Turn On All Sublayers', dynamicSublayersOff: 'Turn Off All Sublayers' - } + }, + 'pt-pt': true }); diff --git a/viewer/js/gis/dijit/Print/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Print/nls/pt-pt/resource.js new file mode 100644 index 000000000..d95dcadc1 --- /dev/null +++ b/viewer/js/gis/dijit/Print/nls/pt-pt/resource.js @@ -0,0 +1,40 @@ +// http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html +define({ + title: 'Título', + format: 'Formato', + layout: 'Modelo', + settings: 'Configurações', + mapScaleExtent: 'Escala/Extensão do mapa', + preserve: 'Preservar', + mapScale: 'Escala do mapa', + mapExtent: 'Extensão do mapa', + fullLayoutOptions: 'Todas as opções do modelo', + scaleBarUnits: 'Unidades da escala gráfica', + miles: 'Milhas', + kilometers: 'Quilómetros', + meters: 'Metros', + feet: 'Pés', + includeLegend: 'Incluir legenda', + printQualityOptions: 'Opções da qualidade de impressão', + dpiInput: { + label: 'DPI', + invalidMessage: 'Por favor introduza um valor numérico.', + rangeMessage: 'Por favor introduza um valor entre 100 e 300.' + }, + mapOnlyOptions: 'Opções do mapa', + width: 'Largura', + height: 'Altura', + printButton: { + busyLabel: 'a imprimir', + label: 'Imprimir' + }, + clearHistoryButton: { + label: 'Limpar o histórico de impressão' + }, + printResults: { + progressBar: { + label: 'A criar a impressão' + }, + errorMessage: 'Erro, tente novamente' + } +}); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Print/nls/resource.js b/viewer/js/gis/dijit/Print/nls/resource.js index fab5aaa97..10662266c 100644 --- a/viewer/js/gis/dijit/Print/nls/resource.js +++ b/viewer/js/gis/dijit/Print/nls/resource.js @@ -38,6 +38,7 @@ define({ }, errorMessage: 'Error, try again' } - } + }, + 'pt-pt': true }); diff --git a/viewer/js/gis/dijit/StreetView/nls/pt-pt/resource.js b/viewer/js/gis/dijit/StreetView/nls/pt-pt/resource.js new file mode 100644 index 000000000..6e9f7e049 --- /dev/null +++ b/viewer/js/gis/dijit/StreetView/nls/pt-pt/resource.js @@ -0,0 +1,10 @@ +// http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html +define({ + messages: { + instructions: 'Clique no botão do StreetView e depois clique na localização desejada no mapa.', + notAvailable: 'Infelizmente, o Google Street View não está disponível nesta localização.' + }, + rightClickMenuItem: { + label: 'Street View aqui' + } +}); \ No newline at end of file diff --git a/viewer/js/gis/dijit/StreetView/nls/resource.js b/viewer/js/gis/dijit/StreetView/nls/resource.js index 9645bd886..600588984 100644 --- a/viewer/js/gis/dijit/StreetView/nls/resource.js +++ b/viewer/js/gis/dijit/StreetView/nls/resource.js @@ -8,6 +8,7 @@ define({ rightClickMenuItem: { label: 'Google StreetView here' } - } + }, + 'pt-pt': true }); From 8c3b11aa481bb9deab7ee81d4d688db42b20b324 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ju=CC=81lio?= Date: Thu, 14 Jul 2016 23:19:56 +0100 Subject: [PATCH 7/9] add nls support to find and identify widgets and drop meetupHometowns layer reference, it isn't being used anymore --- viewer/js/config/find.js | 215 +++++++++++++++-------------- viewer/js/config/identify.js | 119 ++++++++-------- viewer/js/config/nls/main.js | 12 +- viewer/js/config/nls/pt-pt/main.js | 12 +- 4 files changed, 190 insertions(+), 168 deletions(-) diff --git a/viewer/js/config/find.js b/viewer/js/config/find.js index aa323416a..d0324aa15 100644 --- a/viewer/js/config/find.js +++ b/viewer/js/config/find.js @@ -1,112 +1,117 @@ /*eslint no-console: 0, no-alert: 0*/ -define({ - map: true, - zoomExtentFactor: 2, - queries: [ - { - description: 'Find A Public Safety Location By Name', - url: 'https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/PublicSafety/PublicSafetyOperationalLayers/MapServer', - layerIds: [1, 2, 3, 4, 5, 6, 7], - searchFields: ['FDNAME, PDNAME', 'NAME', 'RESNAME'], - minChars: 2, - gridColumns: [ - { - field: 'Name', - label: 'Name' - }, - { - field: 'layerName', - label: 'Layer', - width: 100, - sortable: false, - resizable: false - } - ], - sort: [ - { - attribute: 'Name', - descending: false - } - ], - prompt: 'fdname, pdname, name or resname', - selectionMode: 'single' - }, - { - description: 'Find Incident By Code/Description', - url: 'https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/PublicSafety/PublicSafetyOperationalLayers/MapServer', - layerIds: [15, 17, 18], - searchFields: ['FCODE', 'DESCRIPTION'], - minChars: 4, - gridColumns: [ - { - field: 'layerName', - label: 'Layer', - width: 100, - sortable: false, - resizable: false - }, - { - field: 'Fcode', - label: 'Fcode', - width: 100 - }, - { - field: 'Description', - label: 'Descr' - }, - { - field: 'SORT_VALUE', - visible: false, - get: function (findResult) { - return findResult.layerName + ' ' + findResult.feature.attributes.Fcode; //seems better to use attributes[ 'Fcode' ] but fails build. Attribute names will be aliases and may contain spaces and mixed cases. +define([ + 'dojo/i18n!./nls/main' +], function (i18n) { + + return { + map: true, + zoomExtentFactor: 2, + queries: [ + { + description: i18n.find.louisvillePubSafety, + url: 'https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/PublicSafety/PublicSafetyOperationalLayers/MapServer', + layerIds: [1, 2, 3, 4, 5, 6, 7], + searchFields: ['FDNAME, PDNAME', 'NAME', 'RESNAME'], + minChars: 2, + gridColumns: [ + { + field: 'Name', + label: 'Name' + }, + { + field: 'layerName', + label: 'Layer', + width: 100, + sortable: false, + resizable: false } - } - ], - sort: [ - { - attribute: 'SORT_VALUE', - descending: false - } - ], - prompt: 'fdname, pdname, name or resname', - customGridEventHandlers: [ - { - event: '.dgrid-row:click', - handler: function (event) { - alert('You clicked a row!'); - console.log(event); + ], + sort: [ + { + attribute: 'Name', + descending: false + } + ], + prompt: 'fdname, pdname, name or resname', + selectionMode: 'single' + }, + { + description: i18n.find.sf311Incidents, + url: 'https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/PublicSafety/PublicSafetyOperationalLayers/MapServer', + layerIds: [15, 17, 18], + searchFields: ['FCODE', 'DESCRIPTION'], + minChars: 4, + gridColumns: [ + { + field: 'layerName', + label: 'Layer', + width: 100, + sortable: false, + resizable: false + }, + { + field: 'Fcode', + label: 'Fcode', + width: 100 + }, + { + field: 'Description', + label: 'Descr' + }, + { + field: 'SORT_VALUE', + visible: false, + get: function (findResult) { + return findResult.layerName + ' ' + findResult.feature.attributes.Fcode; //seems better to use attributes[ 'Fcode' ] but fails build. Attribute names will be aliases and may contain spaces and mixed cases. + } } + ], + sort: [ + { + attribute: 'SORT_VALUE', + descending: false + } + ], + prompt: 'fdname, pdname, name or resname', + customGridEventHandlers: [ + { + event: '.dgrid-row:click', + handler: function (event) { + alert('You clicked a row!'); + console.log(event); + } + } + ] + } + ], + selectionSymbols: { + polygon: { + type: 'esriSFS', + style: 'esriSFSSolid', + color: [255, 0, 0, 62], + outline: { + type: 'esriSLS', + style: 'esriSLSSolid', + color: [255, 0, 0, 255], + width: 3 + } + }, + point: { + type: 'esriSMS', + style: 'esriSMSCircle', + size: 25, + color: [255, 0, 0, 62], + angle: 0, + xoffset: 0, + yoffset: 0, + outline: { + type: 'esriSLS', + style: 'esriSLSSolid', + color: [255, 0, 0, 255], + width: 2 } - ] - } - ], - selectionSymbols: { - polygon: { - type: 'esriSFS', - style: 'esriSFSSolid', - color: [255, 0, 0, 62], - outline: { - type: 'esriSLS', - style: 'esriSLSSolid', - color: [255, 0, 0, 255], - width: 3 } }, - point: { - type: 'esriSMS', - style: 'esriSMSCircle', - size: 25, - color: [255, 0, 0, 62], - angle: 0, - xoffset: 0, - yoffset: 0, - outline: { - type: 'esriSLS', - style: 'esriSLSSolid', - color: [255, 0, 0, 255], - width: 2 - } - } - }, - selectionMode: 'extended' + selectionMode: 'extended' + } }); \ No newline at end of file diff --git a/viewer/js/config/identify.js b/viewer/js/config/identify.js index ba781edda..5f6f36dbf 100644 --- a/viewer/js/config/identify.js +++ b/viewer/js/config/identify.js @@ -1,67 +1,64 @@ -define({ - map: true, - mapClickMode: true, - mapRightClickMenu: true, - identifyLayerInfos: true, - identifyTolerance: 5, +define([ + 'dojo/i18n!./nls/main' +], function (i18n) { - // config object definition: - // {:{ - // :{ - // - // } - // }, - // :{ - // :{ - // - // } - // } - // } + return { + map: true, + mapClickMode: true, + mapRightClickMenu: true, + identifyLayerInfos: true, + identifyTolerance: 5, + draggable: false, - // for details on pop-up definition see: https://developers.arcgis.com/javascript/jshelp/intro_popuptemplate.html + // config object definition: + // {:{ + // :{ + // + // } + // }, + // :{ + // :{ + // + // } + // } + // } - identifies: { - meetupHometowns: { - 0: { - title: 'Hometowns', - fieldInfos: [{ - fieldName: 'Location', - visible: true - }] - } - }, - louisvillePubSafety: { - 2: { - title: 'Police Station', - fieldInfos: [{ - fieldName: 'Name', - visible: true - }, { - fieldName: 'Address', - visible: true - }, { - fieldName: 'Type', - visible: true - }, { - fieldName: 'Police Function', - visible: true - }, { - fieldName: 'Last Update Date', - visible: true - }] - }, - 8: { - title: 'Traffic Camera', - description: '{Description} lasted updated: {Last Update Date}', - mediaInfos: [{ - title: '', - caption: '', - type: 'image', - value: { - sourceURL: '{Location URL}', - linkURL: '{Location URL}' - } - }] + // for details on pop-up definition see: https://developers.arcgis.com/javascript/jshelp/intro_popuptemplate.html + + identifies: { + louisvillePubSafety: { + 2: { + title: i18n.identify.louisvillePubSafety.policeStation, + fieldInfos: [{ + fieldName: 'Name', + visible: true + }, { + fieldName: 'Address', + visible: true + }, { + fieldName: 'Type', + visible: true + }, { + fieldName: 'Police Function', + visible: true + }, { + fieldName: 'Last Update Date', + visible: true + }] + }, + 8: { + title: i18n.identify.louisvillePubSafety.trafficCamera, + description: '{Description} lasted updated: {Last Update Date}', + mediaInfos: [{ + title: '', + caption: '', + type: 'image', + value: { + sourceURL: '{Location URL}', + linkURL: '{Location URL}' + } + }] + } } } } diff --git a/viewer/js/config/nls/main.js b/viewer/js/config/nls/main.js index e478f7c1f..23d7dc432 100644 --- a/viewer/js/config/nls/main.js +++ b/viewer/js/config/nls/main.js @@ -23,12 +23,22 @@ define({ bookmarks: { usa: 'USA' }, + find: { + louisvillePubSafety: 'Find A Public Safety Location By Name', + sf311Incidents: 'Find Incident By Code/Description' + }, + identify: { + louisvillePubSafety: { + policeStation: 'Police Station', + trafficCamera: 'Traffic Camera' + } + }, viewer: { operationalLayers: { damageAssessment: 'Damage Assessment', louisvillePubSafety: 'Louisville Public Safety', restaurants: 'Restaurants', - sf311Incidents: 'San Francisco 311 Incidents', + sf311Incidents: 'San Francisco 311 Incidents' }, titles: { header: 'Configurable Map Viewer', diff --git a/viewer/js/config/nls/pt-pt/main.js b/viewer/js/config/nls/pt-pt/main.js index 24a260efc..2b2f92d5c 100644 --- a/viewer/js/config/nls/pt-pt/main.js +++ b/viewer/js/config/nls/pt-pt/main.js @@ -22,12 +22,22 @@ define({ bookmarks: { usa: 'EUA' }, + find: { + louisvillePubSafety: 'Encontrar um local de Segurança Pública pelo nome', + sf311Incidents: 'Encontrar incidente por código/descrição' + }, + identify: { + louisvillePubSafety: { + policeStation: 'Esquadra da Polícia', + trafficCamera: 'Câmara de trânsito' + } + }, viewer: { operationalLayers: { damageAssessment: 'Avaliação de dano', louisvillePubSafety: 'Segurança Pública de Louisville', restaurants: 'Restaurantes', - sf311Incidents: 'Incidentes do 311 de São Francisco', + sf311Incidents: 'Incidentes do 311 de São Francisco' }, titles: { header: 'Configurable Map Viewer', From f7dc97e49c73528c555225f2c25ac36deef7a609 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ju=CC=81lio?= Date: Thu, 14 Jul 2016 23:32:31 +0100 Subject: [PATCH 8/9] Null Island! as suggested by @tmcgee see: http://www.wsj.com/articles/if-you-cant-follow-directions-youll-end-up-on-null-island-1468422251 http://www.nullisland.com/ --- viewer/js/config/bookmarks.js | 12 ++++++++++++ viewer/js/config/nls/main.js | 3 ++- viewer/js/config/nls/pt-pt/main.js | 1 + 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/viewer/js/config/bookmarks.js b/viewer/js/config/bookmarks.js index e0f7552ea..56cc070a1 100644 --- a/viewer/js/config/bookmarks.js +++ b/viewer/js/config/bookmarks.js @@ -17,6 +17,18 @@ define([ } }, name: i18n.bookmarks.usa + }, + { + extent: { + xmin: 0, + ymin: 0, + xmax: 0, + ymax: 0, + spatialReference: { + wkid: 102100 + } + }, + name: i18n.bookmarks.nullIsland } ] } diff --git a/viewer/js/config/nls/main.js b/viewer/js/config/nls/main.js index 23d7dc432..3c61ae143 100644 --- a/viewer/js/config/nls/main.js +++ b/viewer/js/config/nls/main.js @@ -21,7 +21,8 @@ define({ topo: 'Topographic' }, bookmarks: { - usa: 'USA' + nullIsland: 'Null Island', + usa: 'USA' }, find: { louisvillePubSafety: 'Find A Public Safety Location By Name', diff --git a/viewer/js/config/nls/pt-pt/main.js b/viewer/js/config/nls/pt-pt/main.js index 2b2f92d5c..a309b1e34 100644 --- a/viewer/js/config/nls/pt-pt/main.js +++ b/viewer/js/config/nls/pt-pt/main.js @@ -20,6 +20,7 @@ define({ topo: 'Topográfico' }, bookmarks: { + nullIsland: 'Ilha Nula', usa: 'EUA' }, find: { From 131ed064134421e7a4cdbf4cfdc830e5c72bc840 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ju=CC=81lio?= Date: Fri, 15 Jul 2016 02:18:40 +0100 Subject: [PATCH 9/9] lint free --- viewer/js/config/basemaps.js | 18 +++++++++--------- viewer/js/config/bookmarks.js | 2 +- viewer/js/config/find.js | 2 +- viewer/js/config/identify.js | 2 +- .../gis/dijit/Basemaps/nls/pt-pt/resource.js | 4 ++-- .../gis/dijit/Directions/nls/pt-pt/resource.js | 4 ++-- viewer/js/gis/dijit/Draw/nls/pt-pt/resource.js | 4 ++-- .../js/gis/dijit/Editor/nls/pt-pt/resource.js | 4 ++-- viewer/js/gis/dijit/Find/nls/pt-pt/resource.js | 2 +- .../gis/dijit/Geocoder/nls/pt-pt/resource.js | 4 ++-- .../gis/dijit/Identify/nls/pt-pt/resource.js | 4 ++-- .../dijit/LayerControl/nls/pt-pt/resource.js | 2 +- .../js/gis/dijit/Print/nls/pt-pt/resource.js | 2 +- 13 files changed, 27 insertions(+), 27 deletions(-) diff --git a/viewer/js/config/basemaps.js b/viewer/js/config/basemaps.js index 745b50911..32cefd31c 100644 --- a/viewer/js/config/basemaps.js +++ b/viewer/js/config/basemaps.js @@ -19,20 +19,20 @@ define([ / otherwise uses keys in basemaps object below / values in array must match keys in basemaps object */ - //basemapsToShow: ['streets', 'satellite', 'hybrid', 'topo', 'lightGray', 'gray', 'nationalGeographic', 'osm', 'oceans'], + //basemapsToShow: ['streets', 'satellite', 'hybrid', 'topo', 'lightGray', 'gray', 'national-geographic', 'osm', 'oceans'], // define all valid basemaps here. basemaps: { streets: { title: i18n.basemaps.streets }, - streetsNightVector: { // requires v3.16 or higher + 'streets-night-vector': { // requires v3.16 or higher title: i18n.basemaps.streetsNightVector }, - streetsNavigationVector: { // requires v3.16 or higher + 'streets-navigation-vector': { // requires v3.16 or higher title: i18n.basemaps.streetsNavigationVector }, - streetsReliefVector: { // requires v3.16 or higher + 'streets-relief-vector': { // requires v3.16 or higher title: i18n.basemaps.streetsReliefVector }, satellite: { @@ -47,16 +47,16 @@ define([ terrain: { title: i18n.basemaps.terrain }, - grayVector: { // requires v3.16 or higher + 'gray-vector': { // requires v3.16 or higher title: i18n.basemaps.grayVector }, - darkGrayVector: { // requires v3.16 or higher + 'dark-gray-vector': { // requires v3.16 or higher title: i18n.basemaps.darkGrayVector }, oceans: { title: i18n.basemaps.oceans }, - nationalGeographic: { + 'national-geographic': { title: i18n.basemaps.nationalGeographic }, osm: { @@ -142,7 +142,7 @@ define([ ] } }, - darkGrayVector: { + 'dark-gray-vector': { title: 'Dark Gray Canvas', basemap: { baseMapLayers: [ @@ -164,7 +164,7 @@ define([ ] } }, - streetsNightVector: { + 'streets-night-vector': { title: 'Streets Night', basemap: { baseMapLayers: [ diff --git a/viewer/js/config/bookmarks.js b/viewer/js/config/bookmarks.js index 56cc070a1..90beb5de4 100644 --- a/viewer/js/config/bookmarks.js +++ b/viewer/js/config/bookmarks.js @@ -31,5 +31,5 @@ define([ name: i18n.bookmarks.nullIsland } ] - } + }; }); \ No newline at end of file diff --git a/viewer/js/config/find.js b/viewer/js/config/find.js index d0324aa15..ad6bfb877 100644 --- a/viewer/js/config/find.js +++ b/viewer/js/config/find.js @@ -113,5 +113,5 @@ define([ } }, selectionMode: 'extended' - } + }; }); \ No newline at end of file diff --git a/viewer/js/config/identify.js b/viewer/js/config/identify.js index 5f6f36dbf..32958beac 100644 --- a/viewer/js/config/identify.js +++ b/viewer/js/config/identify.js @@ -61,5 +61,5 @@ define([ } } } - } + }; }); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Basemaps/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Basemaps/nls/pt-pt/resource.js index 0407ae701..d67f99c97 100644 --- a/viewer/js/gis/dijit/Basemaps/nls/pt-pt/resource.js +++ b/viewer/js/gis/dijit/Basemaps/nls/pt-pt/resource.js @@ -1,3 +1,3 @@ -define ({ - title: 'Mapas base' +define({ + title: 'Mapas base' }); \ No newline at end of file diff --git a/viewer/js/gis/dijit/Directions/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Directions/nls/pt-pt/resource.js index 38de61d1d..e1ccff40e 100644 --- a/viewer/js/gis/dijit/Directions/nls/pt-pt/resource.js +++ b/viewer/js/gis/dijit/Directions/nls/pt-pt/resource.js @@ -1,5 +1,5 @@ -define ({ - labels: { +define({ + labels: { startAtMyLocation: 'iniciar na minha localização', endAtMyLocation: 'terminar na minha localização', clearStops: 'limpar paragens', diff --git a/viewer/js/gis/dijit/Draw/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Draw/nls/pt-pt/resource.js index 7b1eb8663..9dc6144bb 100644 --- a/viewer/js/gis/dijit/Draw/nls/pt-pt/resource.js +++ b/viewer/js/gis/dijit/Draw/nls/pt-pt/resource.js @@ -1,5 +1,5 @@ -define ({ - labels: { +define({ + labels: { point: 'Ponto', circle: 'Círculo', polyline: 'Polilinha', diff --git a/viewer/js/gis/dijit/Editor/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Editor/nls/pt-pt/resource.js index 065f070fd..5c499062e 100644 --- a/viewer/js/gis/dijit/Editor/nls/pt-pt/resource.js +++ b/viewer/js/gis/dijit/Editor/nls/pt-pt/resource.js @@ -1,5 +1,5 @@ -define ({ - labels: { +define({ + labels: { startEditing: 'Iniciar edição', stopEditing: 'Parar edição' } diff --git a/viewer/js/gis/dijit/Find/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Find/nls/pt-pt/resource.js index 7538316be..e38f69d21 100644 --- a/viewer/js/gis/dijit/Find/nls/pt-pt/resource.js +++ b/viewer/js/gis/dijit/Find/nls/pt-pt/resource.js @@ -1,6 +1,6 @@ // http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html define({ - selectQuery: 'Seleccionar consulta', + selectQuery: 'Seleccionar consulta', searchText: { label: 'Procurar por', placeholder: 'Introduza o texto que pretende procurar.' diff --git a/viewer/js/gis/dijit/Geocoder/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Geocoder/nls/pt-pt/resource.js index 302069814..7667ddf08 100644 --- a/viewer/js/gis/dijit/Geocoder/nls/pt-pt/resource.js +++ b/viewer/js/gis/dijit/Geocoder/nls/pt-pt/resource.js @@ -1,5 +1,5 @@ -define ({ - title: 'Alternar barra de pesquisa', +define({ + title: 'Alternar barra de pesquisa', labels: { address: 'Endereço', neighborhood: 'Bairro', diff --git a/viewer/js/gis/dijit/Identify/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Identify/nls/pt-pt/resource.js index 23d428855..ab2998ff7 100644 --- a/viewer/js/gis/dijit/Identify/nls/pt-pt/resource.js +++ b/viewer/js/gis/dijit/Identify/nls/pt-pt/resource.js @@ -1,5 +1,5 @@ -define ({ - labels: { +define({ + labels: { selectLayer: 'Escolher "Todas as camadas visíveis" ou uma única camada para identificar:', allVisibleLayers: '*** Todas as camadas visíveis ***' }, diff --git a/viewer/js/gis/dijit/LayerControl/nls/pt-pt/resource.js b/viewer/js/gis/dijit/LayerControl/nls/pt-pt/resource.js index bbb63ba4d..e66ea4143 100644 --- a/viewer/js/gis/dijit/LayerControl/nls/pt-pt/resource.js +++ b/viewer/js/gis/dijit/LayerControl/nls/pt-pt/resource.js @@ -6,7 +6,7 @@ // https://github.com/cmv/cmv-app/issues and someone will assist // if need be or checkout the link above and submit a PR define({ - noLegend: 'Sem legenda', + noLegend: 'Sem legenda', moveUp: 'Mover para cima', moveDown: 'Mover para baixo', zoomTo: 'Aproximar à Camada', diff --git a/viewer/js/gis/dijit/Print/nls/pt-pt/resource.js b/viewer/js/gis/dijit/Print/nls/pt-pt/resource.js index d95dcadc1..2f9ac62fa 100644 --- a/viewer/js/gis/dijit/Print/nls/pt-pt/resource.js +++ b/viewer/js/gis/dijit/Print/nls/pt-pt/resource.js @@ -1,6 +1,6 @@ // http://dojotoolkit.org/reference-guide/1.10/dojo/i18n.html define({ - title: 'Título', + title: 'Título', format: 'Formato', layout: 'Modelo', settings: 'Configurações',