thingsboard-aplcache
Details
diff --git a/ui/src/app/dashboard/states/entity-state-controller.js b/ui/src/app/dashboard/states/entity-state-controller.js
index 1e2c2ad..8d5cddd 100644
--- a/ui/src/app/dashboard/states/entity-state-controller.js
+++ b/ui/src/app/dashboard/states/entity-state-controller.js
@@ -139,6 +139,11 @@ export default function EntityStateController($scope, $location, $state, $stateP
var params = vm.stateObject[index].params;
var entityName = params && params.entityName ? params.entityName : '';
result = utils.insertVariable(stateName, 'entityName', entityName);
+ for (var prop in params) {
+ if (params[prop] && params[prop].entityName) {
+ result = utils.insertVariable(stateName, prop + ':entityName', params[prop].entityName);
+ }
+ }
}
return result;
}
@@ -163,7 +168,7 @@ export default function EntityStateController($scope, $location, $state, $stateP
);
}
} else {
- deferred.reject();
+ deferred.resolve('');
}
return deferred.promise;
}
ui/src/app/widget/lib/image-map.js 11(+7 -4)
diff --git a/ui/src/app/widget/lib/image-map.js b/ui/src/app/widget/lib/image-map.js
index 9913377..17f3d3d 100644
--- a/ui/src/app/widget/lib/image-map.js
+++ b/ui/src/app/widget/lib/image-map.js
@@ -26,8 +26,9 @@ const pinSvg = `<svg class="image-map-pin-image" xmlns="http://www.w3.org/2000/s
export default class TbImageMap {
- constructor($containerElement, initCallback, imageUrl, posFunction) {
+ constructor(ctx, $containerElement, initCallback, imageUrl, posFunction) {
+ this.ctx = ctx;
this.tooltips = [];
$containerElement.append('<div id="image-map-container"><div id="image-map"></div></div>');
@@ -195,7 +196,7 @@ export default class TbImageMap {
}
createTooltip(marker, pattern, replaceInfo, markerArgs) {
- var popup = new Popup(marker.pinElement);
+ var popup = new Popup(this.ctx, marker.pinElement);
popup.setContent('');
this.tooltips.push( {
markerArgs: markerArgs,
@@ -271,7 +272,7 @@ class Position {
}
class Popup {
- constructor(anchor) {
+ constructor(ctx, anchor) {
anchor.tooltipster(
{
theme: 'tooltipster-shadow',
@@ -287,9 +288,11 @@ class Popup {
this.tooltip = anchor.tooltipster('instance');
var contentElement = angular.element('<div class="image-map-pin-tooltip">' +
'<a class="image-map-pin-tooltip-close-button" id="close" style="outline: none;">×</a>' +
- '<div flex id="tooltip-content" layout="column">' +
+ '<div id="tooltip-content">' +
'</div>' +
'</div>');
+ var $compile = ctx.$scope.$injector.get('$compile');
+ $compile(contentElement)(ctx.$scope);
var popup = this;
contentElement.find('#close').on('click', function() {
popup.tooltip.close();
ui/src/app/widget/lib/map-widget2.js 2(+1 -1)
diff --git a/ui/src/app/widget/lib/map-widget2.js b/ui/src/app/widget/lib/map-widget2.js
index 39a50aa..87a0cd5 100644
--- a/ui/src/app/widget/lib/map-widget2.js
+++ b/ui/src/app/widget/lib/map-widget2.js
@@ -79,7 +79,7 @@ export default class TbMapWidgetV2 {
} else if (mapProvider === 'openstreet-map') {
this.map = new TbOpenStreetMap($element, initCallback, this.defaultZoomLevel, this.dontFitMapBounds, minZoomLevel);
} else if (mapProvider === 'image-map') {
- this.map = new TbImageMap($element, initCallback, settings.mapImageUrl, settings.posFunction);
+ this.map = new TbImageMap(this.ctx, $element, initCallback, settings.mapImageUrl, settings.posFunction);
}
}