diff --git a/src/main/java/org/traccar/web/client/view/PositionInfoPopup.java b/src/main/java/org/traccar/web/client/view/PositionInfoPopup.java index a4a004b6..550075d4 100644 --- a/src/main/java/org/traccar/web/client/view/PositionInfoPopup.java +++ b/src/main/java/org/traccar/web/client/view/PositionInfoPopup.java @@ -82,7 +82,10 @@ public void show(int x, int y, final Position position) { parameterName = sensor.getName(); if (valueText.matches("^[-+]?\\d+(\\.\\d+)?$")) { double value = Double.parseDouble(valueText); - valueText = intervalText(value, SensorsEditor.intervals(sensor)); + List intervals = SensorsEditor.intervals(sensor); + if (!intervals.isEmpty()) { + valueText = intervalText(value, intervals); + } } } else if (parameterName.equals("protocol")) { parameterName = i18n.protocol(); diff --git a/src/main/webapp/m/js/traccar-mobile.js b/src/main/webapp/m/js/traccar-mobile.js index 1f133399..82655eb1 100644 --- a/src/main/webapp/m/js/traccar-mobile.js +++ b/src/main/webapp/m/js/traccar-mobile.js @@ -456,15 +456,17 @@ function parseOther(position) { name = sensor.name; if (sensor.intervals != null && !isNaN(valueText)) { var intervals = JSON.parse(sensor.intervals); - var valueText = null; - for (var j = 0; j < intervals.length; j++) { - if (valueText == null) { + if (intervals.length > 0) { + var valueText = null; + for (var j = 0; j < intervals.length; j++) { + if (valueText == null) { + valueText = intervals[j].text; + } + if (value < intervals[j].value) { + break; + } valueText = intervals[j].text; } - if (value < intervals[j].value) { - break; - } - valueText = intervals[j].text; } } break;