Browse Source

update test provider name HERE

pull/1610/head
Vladyslav_Prykhodko 7 years ago
parent
commit
0badd582fd
  1. 20
      application/src/main/data/json/system/widget_bundles/maps.json
  2. 34
      ui/src/app/widget/lib/map-widget2.js
  3. 8
      ui/src/app/widget/lib/openstreet-map.js

20
application/src/main/data/json/system/widget_bundles/maps.json

File diff suppressed because one or more lines are too long

34
ui/src/app/widget/lib/map-widget2.js

@ -81,7 +81,14 @@ export default class TbMapWidgetV2 {
if (mapProvider === 'google-map') {
this.map = new TbGoogleMap($element, this.utils, initCallback, this.defaultZoomLevel, this.dontFitMapBounds, minZoomLevel, settings.gmApiKey, settings.gmDefaultMapType);
} else if (mapProvider === 'openstreet-map') {
this.map = new TbOpenStreetMap($element, this.utils, initCallback, this.defaultZoomLevel, this.dontFitMapBounds, minZoomLevel, settings.mapProvider);
let openStreetMapProvider = {};
if (settings.useCustomProvider && settings.customProviderTileUrl) {
openStreetMapProvider.name = settings.customProviderTileUrl;
openStreetMapProvider.isCustom = true;
} else {
openStreetMapProvider.name = settings.mapProvider;
}
this.map = new TbOpenStreetMap($element, this.utils, initCallback, this.defaultZoomLevel, this.dontFitMapBounds, minZoomLevel, openStreetMapProvider);
} else if (mapProvider === 'here') {
this.map = new TbOpenStreetMap($element, this.utils, initCallback, this.defaultZoomLevel, this.dontFitMapBounds, minZoomLevel, settings.mapProvider, settings.credentials);
} else if (mapProvider === 'image-map') {
@ -548,7 +555,13 @@ export default class TbMapWidgetV2 {
function mapPolygonArray (rawArray) {
let latLngArray = rawArray.map(function (el) {
if (el.length === 2) {
return tbMap.map.createLatLng(el[0], el[1]);
if (!angular.isNumber(el[0]) && !angular.isNumber(el[1])) {
return el.map(function (subEl) {
return mapPolygonArray(subEl);
})
} else {
return tbMap.map.createLatLng(el[0], el[1]);
}
} else if (el.length > 2) {
return mapPolygonArray(el);
} else {
@ -662,7 +675,6 @@ export default class TbMapWidgetV2 {
} else if (mapProvider === 'here') {
schema = angular.copy(hereMapSettingsSchema);
}
angular.merge(schema.schema.properties, commonMapSettingsSchema.schema.properties);
schema.schema.required = schema.schema.required.concat(commonMapSettingsSchema.schema.required);
schema.form = schema.form.concat(commonMapSettingsSchema.form);
@ -855,7 +867,17 @@ const openstreetMapSettingsSchema =
"title": "Map provider",
"type": "string",
"default": "OpenStreetMap.Mapnik"
}
},
"useCustomProvider": {
"title": "Use custom provider",
"type": "boolean",
"default": false
},
"customProviderTileUrl": {
"title": "Custom provider tile URL",
"type": "string",
"default": "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
}
},
"required": []
},
@ -894,7 +916,9 @@ const openstreetMapSettingsSchema =
"label": "CartoDB.DarkMatter"
}
]
}
},
"useCustomProvider",
"customProviderTileUrl"
]
};

8
ui/src/app/widget/lib/openstreet-map.js

@ -28,17 +28,19 @@ export default class TbOpenStreetMap {
this.tooltips = [];
if (!mapProvider) {
mapProvider = "OpenStreetMap.Mapnik";
mapProvider = {
name: "OpenStreetMap.Mapnik"
};
}
if (!mapProvider.indexOf("HERE.")) {
if (mapProvider.startsWith("HERE.")) {
credentials.app_id = credentials.app_id || "AhM6TzD9ThyK78CT3ptx";
credentials.app_code = credentials.app_code || "p6NPiITB3Vv0GMUFnkLOOg";
}
this.map = L.map($containerElement[0]).setView([0, 0], this.defaultZoomLevel || 8);
var tileLayer = L.tileLayer.provider(mapProvider, credentials);
var tileLayer = mapProvider.isCustom ? L.tileLayer(mapProvider.name) : L.tileLayer.provider(mapProvider.name, credentials);
tileLayer.addTo(this.map);

Loading…
Cancel
Save