From 39ff12fea27db251d2329cd071b8a75b4bb36394 Mon Sep 17 00:00:00 2001 From: blackstar-baba <535650957@qq.com> Date: Tue, 24 Mar 2020 21:49:30 +0800 Subject: [PATCH 1/3] fix bug: When using jwt token to access the api, JwtTokenAuthenticationProcessingFilter is executed 2 times (#2531) --- .../server/config/ThingsboardSecurityConfiguration.java | 1 - 1 file changed, 1 deletion(-) diff --git a/application/src/main/java/org/thingsboard/server/config/ThingsboardSecurityConfiguration.java b/application/src/main/java/org/thingsboard/server/config/ThingsboardSecurityConfiguration.java index 526f0b73c8..53876f4040 100644 --- a/application/src/main/java/org/thingsboard/server/config/ThingsboardSecurityConfiguration.java +++ b/application/src/main/java/org/thingsboard/server/config/ThingsboardSecurityConfiguration.java @@ -107,7 +107,6 @@ public class ThingsboardSecurityConfiguration extends WebSecurityConfigurerAdapt return filter; } - @Bean protected JwtTokenAuthenticationProcessingFilter buildJwtTokenAuthenticationProcessingFilter() throws Exception { List pathsToSkip = new ArrayList(Arrays.asList(NON_TOKEN_BASED_AUTH_ENTRY_POINTS)); pathsToSkip.addAll(Arrays.asList(WS_TOKEN_BASED_AUTH_ENTRY_POINT, TOKEN_REFRESH_ENTRY_POINT, FORM_BASED_LOGIN_ENTRY_POINT, From 08c8d935685c1e4fc72556e7ce5741a5fc63a1c0 Mon Sep 17 00:00:00 2001 From: Oleg Kolesnik <31017535+jktu2870@users.noreply.github.com> Date: Tue, 24 Mar 2020 15:50:52 +0200 Subject: [PATCH 2/3] UI:fix. Map widget2 (#2413) preserves previous data on map if no data for current date range received --- ui/src/app/widget/lib/map-widget2.js | 78 ++++++++++++++-------------- 1 file changed, 40 insertions(+), 38 deletions(-) diff --git a/ui/src/app/widget/lib/map-widget2.js b/ui/src/app/widget/lib/map-widget2.js index bf300630cc..3d3fd4a38d 100644 --- a/ui/src/app/widget/lib/map-widget2.js +++ b/ui/src/app/widget/lib/map-widget2.js @@ -584,51 +584,53 @@ export default class TbMapWidgetV2 { var latData = data[location.latIndex].data; var lngData = data[location.lngIndex].data; var lat, lng, latLng; - if (latData.length > 0 && lngData.length > 0) { - if (tbMap.drawRoutes) { - // Create or update route - var latLngs = []; - for (var i = 0; i < latData.length; i++) { - lat = latData[i][1]; - lng = lngData[i][1]; - if (angular.isDefined(lat) && lat != null && angular.isDefined(lng) && lng != null) { - latLng = tbMap.map.createLatLng(lat, lng); - if (i == 0 || !latLngs[latLngs.length - 1].equals(latLng)) { - latLngs.push(latLng); - } - } - } - if (latLngs.length > 0) { - var markerLocation = latLngs[latLngs.length - 1]; - createOrUpdateLocationMarker(location, markerLocation, dataMap); - } - if (!location.polyline) { - location.polyline = tbMap.map.createPolyline(latLngs, location.settings); - tbMap.polylines.push(location.polyline); - locationChanged = true; - } else { - var prevPath = tbMap.map.getPolylineLatLngs(location.polyline); - if (!prevPath || !arraysEqual(prevPath, latLngs)) { - tbMap.map.setPolylineLatLngs(location.polyline, latLngs); - locationChanged = true; - } - } - } else { - // Create or update marker - lat = latData[latData.length - 1][1]; - lng = lngData[lngData.length - 1][1]; + + if (tbMap.drawRoutes) { + // Create or update route + var latLngs = []; + for (var i = 0; i < latData.length; i++) { + lat = latData[i][1]; + lng = lngData[i][1]; if (angular.isDefined(lat) && lat != null && angular.isDefined(lng) && lng != null) { latLng = tbMap.map.createLatLng(lat, lng); - if (createOrUpdateLocationMarker(location, latLng, dataMap)) { - locationChanged = true; + if (i == 0 || !latLngs[latLngs.length - 1].equals(latLng)) { + latLngs.push(latLng); } } } - if (location.marker) { - updateLocationStyle(location, dataMap); + if (latLngs.length > 0) { + var markerLocation = latLngs[latLngs.length - 1]; + createOrUpdateLocationMarker(location, markerLocation, dataMap); + } else if (location.marker) { + tbMap.map.removeMarker(location.marker); + delete location.marker; + } + if (!location.polyline) { + location.polyline = tbMap.map.createPolyline(latLngs, location.settings); + tbMap.polylines.push(location.polyline); + locationChanged = true; + } else { + var prevPath = tbMap.map.getPolylineLatLngs(location.polyline); + if (!prevPath || !arraysEqual(prevPath, latLngs)) { + tbMap.map.setPolylineLatLngs(location.polyline, latLngs); + locationChanged = true; + } + } + } else { + // Create or update marker + lat = latData[latData.length - 1][1]; + lng = lngData[lngData.length - 1][1]; + if (angular.isDefined(lat) && lat != null && angular.isDefined(lng) && lng != null) { + latLng = tbMap.map.createLatLng(lat, lng); + if (createOrUpdateLocationMarker(location, latLng, dataMap)) { + locationChanged = true; + } } - } + if (location.marker) { + updateLocationStyle(location, dataMap); + } + } return locationChanged; } From cb2278ed56d00c6114d1cf43d629f10d3ee2f5d8 Mon Sep 17 00:00:00 2001 From: Chantsova Ekaterina Date: Tue, 24 Mar 2020 15:53:18 +0200 Subject: [PATCH 3/3] Remove empty strings from Spanish translations (#2539) --- ui/src/app/locale/locale.constant-es_ES.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/ui/src/app/locale/locale.constant-es_ES.json b/ui/src/app/locale/locale.constant-es_ES.json index 69d28426e3..8394e9ed65 100644 --- a/ui/src/app/locale/locale.constant-es_ES.json +++ b/ui/src/app/locale/locale.constant-es_ES.json @@ -1226,7 +1226,6 @@ "remember-me": "Recordarme", "forgot-password": "¿Olvidó la contraseña?", "password-reset": "Restablecer contraseña", - "expired-password-reset-message": "", "new-password": "Nueva contraseña", "new-password-again": "Repita la nueva contraseña", "password-link-sent-message": "¡El enlace para el restablecer la contraseña fue enviado correctamente!", @@ -1556,7 +1555,6 @@ "export": "Exportar widget" }, "widget-action": { - "custom-pretty": "", "header-button": "Botón del encabezado del widget", "open-dashboard-state": "Navegar a nuevo estado del panel", "update-dashboard-state": "Actualizar estado vigente del panel",