aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrahighi <rahighi>2021-08-26 13:11:23 +0430
committerrahighi <rahighi>2021-08-26 13:11:23 +0430
commitd4c38aa96f8404f3178031592e773a72b30df533 (patch)
treefaf0bfada7b5d98b3cbe34230a7628ba6d16a030
parentb18da8ebebca5d40fb58fa270530cb9b048ff6ec (diff)
downloadetbsa-traccar-web-d4c38aa96f8404f3178031592e773a72b30df533.tar.gz
etbsa-traccar-web-d4c38aa96f8404f3178031592e773a72b30df533.tar.bz2
etbsa-traccar-web-d4c38aa96f8404f3178031592e773a72b30df533.zip
Merge branch 'master' of https://github.com/traccar/traccar-web
-rw-r--r--.eslintignore1
-rw-r--r--.github/workflows/old.yml2
-rw-r--r--.gitignore1
-rw-r--r--modern/src/map/AccuracyMap.js8
-rw-r--r--modern/src/map/GeofenceMap.js16
-rw-r--r--modern/src/map/Map.js6
-rw-r--r--modern/src/map/PositionsMap.js12
-rw-r--r--modern/src/map/ReplayPathMap.js8
-rw-r--r--modern/src/map/switcher/switcher.js11
-rw-r--r--package.json9
-rw-r--r--tools/minify.bat5
-rwxr-xr-xtools/minify.sh15
-rwxr-xr-xtools/package.sh8
-rw-r--r--web/app/view/map/BaseMap.js1
-rw-r--r--web/l10n/af.json1
-rw-r--r--web/l10n/ar.json1
-rw-r--r--web/l10n/az.json1
-rw-r--r--web/l10n/bg.json1
-rw-r--r--web/l10n/bn.json1
-rw-r--r--web/l10n/cs.json1
-rw-r--r--web/l10n/da.json77
-rw-r--r--web/l10n/de.json1
-rw-r--r--web/l10n/el.json1
-rw-r--r--web/l10n/en.json2
-rw-r--r--web/l10n/es.json1
-rw-r--r--web/l10n/fa.json1
-rw-r--r--web/l10n/fi.json1
-rw-r--r--web/l10n/fr.json57
-rw-r--r--web/l10n/he.json1
-rw-r--r--web/l10n/hi.json1
-rw-r--r--web/l10n/hr.json1
-rw-r--r--web/l10n/hu.json1
-rw-r--r--web/l10n/id.json1
-rw-r--r--web/l10n/it.json1
-rw-r--r--web/l10n/ja.json1
-rw-r--r--web/l10n/ka.json1
-rw-r--r--web/l10n/kk.json1
-rw-r--r--web/l10n/km.json1
-rw-r--r--web/l10n/ko.json1
-rw-r--r--web/l10n/lo.json1
-rw-r--r--web/l10n/lt.json1
-rw-r--r--web/l10n/lv.json1
-rw-r--r--web/l10n/ml.json1
-rw-r--r--web/l10n/mn.json1
-rw-r--r--web/l10n/ms.json1
-rw-r--r--web/l10n/nb.json1
-rw-r--r--web/l10n/ne.json1
-rw-r--r--web/l10n/nl.json7
-rw-r--r--web/l10n/nn.json1
-rw-r--r--web/l10n/pl.json1
-rw-r--r--web/l10n/pt.json1
-rw-r--r--web/l10n/pt_BR.json11
-rw-r--r--web/l10n/ro.json1
-rw-r--r--web/l10n/ru.json47
-rw-r--r--web/l10n/si.json1
-rw-r--r--web/l10n/sk.json1
-rw-r--r--web/l10n/sl.json1
-rw-r--r--web/l10n/sq.json1
-rw-r--r--web/l10n/sr.json1
-rw-r--r--web/l10n/sv.json1
-rw-r--r--web/l10n/ta.json1
-rw-r--r--web/l10n/th.json1
-rw-r--r--web/l10n/tr.json1
-rw-r--r--web/l10n/uk.json1
-rw-r--r--web/l10n/uz.json1
-rw-r--r--web/l10n/vi.json1
-rw-r--r--web/l10n/zh.json59
-rw-r--r--web/l10n/zh_TW.json45
-rw-r--r--web/load.js36
69 files changed, 279 insertions, 211 deletions
diff --git a/.eslintignore b/.eslintignore
index 84a8630..efc3022 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -2,3 +2,4 @@ web/simple/app.js
web/app.min.js
web/load.js
web/modern
+web/lib
diff --git a/.github/workflows/old.yml b/.github/workflows/old.yml
index 2f9f39f..747ddca 100644
--- a/.github/workflows/old.yml
+++ b/.github/workflows/old.yml
@@ -14,5 +14,5 @@ jobs:
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
- - run: npm install
+ - run: npm install --ignore-scripts
- run: npm run lint
diff --git a/.gitignore b/.gitignore
index 2082430..a9a9198 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,6 +5,7 @@
nbproject/
web/app.min.js
web/modern
+web/lib
sencha-error-*
node_modules
package-lock.json
diff --git a/modern/src/map/AccuracyMap.js b/modern/src/map/AccuracyMap.js
index 4baa105..5734ee8 100644
--- a/modern/src/map/AccuracyMap.js
+++ b/modern/src/map/AccuracyMap.js
@@ -36,8 +36,12 @@ const AccuracyMap = () => {
});
return () => {
- map.removeLayer(id);
- map.removeSource(id);
+ if (map.getLayer(id)) {
+ map.removeLayer(id);
+ }
+ if (map.getSource(id)) {
+ map.removeSource(id);
+ }
};
}, []);
diff --git a/modern/src/map/GeofenceMap.js b/modern/src/map/GeofenceMap.js
index d00cbb1..c0ecef4 100644
--- a/modern/src/map/GeofenceMap.js
+++ b/modern/src/map/GeofenceMap.js
@@ -56,10 +56,18 @@ const GeofenceMap = () => {
});
return () => {
- map.removeLayer('geofences-fill');
- map.removeLayer('geofences-line');
- map.removeLayer('geofences-title');
- map.removeSource(id);
+ if (map.getLayer('geofences-fill')) {
+ map.removeLayer('geofences-fill');
+ }
+ if (map.getLayer('geofences-line')) {
+ map.removeLayer('geofences-line');
+ }
+ if (map.getLayer('geofences-title')) {
+ map.removeLayer('geofences-title');
+ }
+ if (map.getSource(id)) {
+ map.removeSource(id);
+ }
};
}, []);
diff --git a/modern/src/map/Map.js b/modern/src/map/Map.js
index 16470ad..bcd9b9f 100644
--- a/modern/src/map/Map.js
+++ b/modern/src/map/Map.js
@@ -60,7 +60,7 @@ const initMap = async () => {
map.on('load', initMap);
-const switchingControl = new SwitcherControl(
+const switcher = new SwitcherControl(
[
{ title: t('mapOsm'), uri: styleOsm() },
{ title: t('mapCarto'), uri: styleCarto() },
@@ -88,12 +88,12 @@ const navigationControl = new maplibregl.NavigationControl({
const addPrimaryControls = position => {
map.addControl(navigationControl, position);
- map.addControl(switchingControl, position);
+ map.addControl(switcher, position);
}
const removePrimaryControls =()=> {
map.removeControl(navigationControl);
- map.removeControl(switchingControl);
+ map.removeControl(switcher);
}
diff --git a/modern/src/map/PositionsMap.js b/modern/src/map/PositionsMap.js
index 9719b45..8d10053 100644
--- a/modern/src/map/PositionsMap.js
+++ b/modern/src/map/PositionsMap.js
@@ -148,9 +148,15 @@ const PositionsMap = ({ positions }) => {
map.off('click', id, onMarkerClick);
map.off('click', clusters, onClusterClick);
- map.removeLayer(id);
- map.removeLayer(clusters);
- map.removeSource(id);
+ if (map.getLayer(id)) {
+ map.removeLayer(id);
+ }
+ if (map.getLayer(clusters)) {
+ map.removeLayer(clusters);
+ }
+ if (map.getSource(id)) {
+ map.removeSource(id);
+ }
};
}, [onMarkerClick]);
diff --git a/modern/src/map/ReplayPathMap.js b/modern/src/map/ReplayPathMap.js
index 62b3f27..022548b 100644
--- a/modern/src/map/ReplayPathMap.js
+++ b/modern/src/map/ReplayPathMap.js
@@ -31,8 +31,12 @@ const ReplayPathMap = ({ positions }) => {
});
return () => {
- map.removeLayer(id);
- map.removeSource(id);
+ if (map.getLayer(id)) {
+ map.removeLayer(id);
+ }
+ if (map.getSource(id)) {
+ map.removeSource(id);
+ }
};
}, []);
diff --git a/modern/src/map/switcher/switcher.js b/modern/src/map/switcher/switcher.js
index e9076aa..cb7326f 100644
--- a/modern/src/map/switcher/switcher.js
+++ b/modern/src/map/switcher/switcher.js
@@ -5,12 +5,17 @@ export class SwitcherControl {
this.beforeSwitch = beforeSwitch;
this.afterSwitch = afterSwitch;
this.onDocumentClick = this.onDocumentClick.bind(this);
+ this.variables = {};
}
getDefaultPosition() {
return 'top-right';
}
+ setVariable(key, value) {
+ this.variables[key] = value;
+ }
+
onAdd(map) {
this.map = map;
this.controlContainer = document.createElement('div');
@@ -32,7 +37,11 @@ export class SwitcherControl {
return;
}
this.beforeSwitch();
- this.map.setStyle(JSON.parse(srcElement.dataset.uri));
+ let uri = JSON.parse(srcElement.dataset.uri);
+ if (typeof uri === 'string') {
+ Object.entries(this.variables).forEach(([key, value]) => uri = uri.replaceAll(`\{${key}}`, value));
+ }
+ this.map.setStyle(uri);
this.afterSwitch();
this.mapStyleContainer.style.display = 'none';
this.styleButton.style.display = 'block';
diff --git a/package.json b/package.json
index 9e31857..eb87b1a 100644
--- a/package.json
+++ b/package.json
@@ -1,9 +1,18 @@
{
"name": "traccar-web",
+ "dependencies": {
+ "extjs-gpl": "^6.2.0",
+ "ol": "^6.6.1",
+ "ol-layerswitcher": "^3.8.3",
+ "openlayers-dist": "^6.6.1",
+ "proj4": "^2.7.5"
+ },
"devDependencies": {
"eslint": "^4.4.1"
},
"scripts": {
+ "postinstall": "/bin/bash -c 'mkdir -p web/lib/{ol,ol-layerswitcher,proj4,extjs} && cp node_modules/openlayers-dist/{ol.js,ol.css} web/lib/ol/ && cp node_modules/ol-layerswitcher/dist/{ol-layerswitcher.js,ol-layerswitcher.css} web/lib/ol-layerswitcher/ && cp node_modules/proj4/dist/proj4.js web/lib/proj4/ && cp node_modules/extjs-gpl/build/ext-all.js web/lib/extjs/ && mkdir -p web/lib/extjs/classic && cp -r node_modules/extjs-gpl/build/classic/locale web/lib/extjs/classic/locale && cp -r node_modules/extjs-gpl/build/classic/theme-triton web/lib/extjs/classic/theme-triton && mkdir -p web/lib/extjs/packages/charts && cp -r node_modules/extjs-gpl/build/packages/charts/classic web/lib/extjs/packages/charts/classic'",
+ "build": "sencha compile --classpath=web/app.js,web/app,node_modules/extjs-gpl/packages/core/src,node_modules/extjs-gpl/packages/core/overrides,node_modules/extjs-gpl/classic/classic/src,node_modules/extjs-gpl/classic/classic/overrides exclude -all and include -recursive -file web/app.js and exclude -namespace=Ext and concatenate -closure web/app.min.js",
"lint": "./node_modules/.bin/eslint web/."
}
}
diff --git a/tools/minify.bat b/tools/minify.bat
deleted file mode 100644
index bb350bf..0000000
--- a/tools/minify.bat
+++ /dev/null
@@ -1,5 +0,0 @@
-@echo off
-cd C:\[traccar path]\traccar\web
-set SDK=C:\[sencha path]\ext-6.2.0
-
-sencha -sdk %SDK% compile -classpath=app.js,app,%SDK%\packages\core\src,%SDK%\packages\core\overrides,%SDK%\classic\classic\src,%SDK%\classic\classic\overrides exclude -all and include -recursive -file app.js and exclude -namespace=Ext and concatenate -closure app.min.js
diff --git a/tools/minify.sh b/tools/minify.sh
deleted file mode 100755
index 0579d8c..0000000
--- a/tools/minify.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-cd $(dirname $0)/../web
-
-# Use the value of $EXTJS_PATH if it is defined, '../../../ext-6.2.0' otherwise
-EXT=${EXTJS_PATH:-'../../../ext-6.2.0'}
-
-sencha compile --classpath=app.js,app,$EXT/packages/core/src,$EXT/packages/core/overrides,$EXT/classic/classic/src,$EXT/classic/classic/overrides \
- exclude -all \
- and \
- include -recursive -file app.js \
- and \
- exclude -namespace=Ext \
- and \
- concatenate -closure app.min.js
diff --git a/tools/package.sh b/tools/package.sh
index 14be2a2..858d240 100755
--- a/tools/package.sh
+++ b/tools/package.sh
@@ -2,9 +2,13 @@
cd $(dirname $0)
-./minify.sh
+cd ..
-cd ../modern
+rm -r web/lib
+npm install --unsafe-perm
+npm run build
+
+cd modern
rm -r ../web/modern
npm install
diff --git a/web/app/view/map/BaseMap.js b/web/app/view/map/BaseMap.js
index 0107acd..b7c27ce 100644
--- a/web/app/view/map/BaseMap.js
+++ b/web/app/view/map/BaseMap.js
@@ -183,6 +183,7 @@ Ext.define('Traccar.view.map.BaseMap', {
if (typeof target === 'string') {
target = Ext.get(target).dom;
}
+ target.focus();
this.map.on('pointermove', function (e) {
var hit = this.forEachFeatureAtPixel(e.pixel, function () {
diff --git a/web/l10n/af.json b/web/l10n/af.json
index d3589f3..0042f7a 100644
--- a/web/l10n/af.json
+++ b/web/l10n/af.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Sirkel",
"mapShapePolyline": "Veelhoeklyn",
"mapLiveRoutes": "Lewendige Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Vlak",
"stateTitle": "Toestand",
"stateName": "Attribuut",
diff --git a/web/l10n/ar.json b/web/l10n/ar.json
index 4d636bd..35a0654 100644
--- a/web/l10n/ar.json
+++ b/web/l10n/ar.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "دائرة",
"mapShapePolyline": "متعدد الضلوع",
"mapLiveRoutes": "مسار حي",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "طبقة POI نقاط الإهتمام",
"stateTitle": "حالة",
"stateName": "خاصية",
diff --git a/web/l10n/az.json b/web/l10n/az.json
index bf59697..ccc33ae 100644
--- a/web/l10n/az.json
+++ b/web/l10n/az.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Dairə",
"mapShapePolyline": "Xətt",
"mapLiveRoutes": "Canlı marşrutlar",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI təbəqə",
"stateTitle": "Vəziyyət",
"stateName": "Parametr",
diff --git a/web/l10n/bg.json b/web/l10n/bg.json
index a65b8b0..b299d37 100644
--- a/web/l10n/bg.json
+++ b/web/l10n/bg.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Кръг",
"mapShapePolyline": "Линия",
"mapLiveRoutes": "Маршрут",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI слой",
"stateTitle": "Състояние",
"stateName": "Параметър",
diff --git a/web/l10n/bn.json b/web/l10n/bn.json
index 18dad38..293f442 100644
--- a/web/l10n/bn.json
+++ b/web/l10n/bn.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "বৃত্ত / বৃত্তাকার",
"mapShapePolyline": "পলিলাইন",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "State",
"stateName": "বৈশিষ্ট্যাবলী / গুণাবলী",
diff --git a/web/l10n/cs.json b/web/l10n/cs.json
index 291c2e3..d88620d 100644
--- a/web/l10n/cs.json
+++ b/web/l10n/cs.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Kruh",
"mapShapePolyline": "Křivka",
"mapLiveRoutes": "Trasy živě",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "Vrstva s POI",
"stateTitle": "Stav",
"stateName": "Atribut",
diff --git a/web/l10n/da.json b/web/l10n/da.json
index 5868ace..61ac5cd 100644
--- a/web/l10n/da.json
+++ b/web/l10n/da.json
@@ -48,7 +48,7 @@
"sharedGallonAbbreviation": "gal",
"sharedLiter": "Liter",
"sharedImpGallon": "Motorhjelm",
- "sharedUsGallon": "U.S. Gallon",
+ "sharedUsGallon": "Amerikansk gallon",
"sharedLiterPerHourAbbreviation": "l/time",
"sharedGetMapState": "Kort status",
"sharedComputedAttribute": "Udregnet attribut",
@@ -79,17 +79,17 @@
"sharedShowDetails": "Flere detailer",
"sharedDisabled": "Deaktiveret",
"sharedMaintenance": "Vedligeholdelse",
- "sharedDeviceAccumulators": "Accumulators",
+ "sharedDeviceAccumulators": "Akkumulatorer",
"sharedAlarms": "Alarmer",
"sharedLocation": "Beliggenhed",
"sharedImport": "Importer",
"attributeSpeedLimit": "Hastigheds grænse",
- "attributePolylineDistance": "Polyline Distance",
+ "attributePolylineDistance": "Polyline afstand",
"attributeReportIgnoreOdometer": "Rapport: Ignorer odometer",
"attributeWebReportColor": "Web : Rapport farve",
"attributeDevicePassword": "Enheds kodeord",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
+ "attributeDeviceInactivityStart": "Start af enhedens inaktivitet",
+ "attributeDeviceInactivityPeriod": "Enheds inaktivitetsperiode",
"attributeProcessingCopyAttributes": "Bearbejder: Kopier attribut",
"attributeColor": "Farve",
"attributeWebLiveRouteLength": "Web: live rute længde",
@@ -119,7 +119,7 @@
"errorGeneral": "ulovlig parameter ",
"errorConnection": "Tilslutning fejl",
"errorSocket": "Web tilslutnings fejl",
- "errorZero": "Can't be zero",
+ "errorZero": "Kan ikke være nul",
"userEmail": "Email",
"userPassword": "Kodeord",
"userAdmin": "Admin",
@@ -132,13 +132,13 @@
"userToken": "Token",
"loginTitle": "Log på",
"loginLanguage": "Sprog",
- "loginReset": "Reset Password",
+ "loginReset": "Nulstille kodeord",
"loginRegister": "Registrer",
"loginLogin": "Log på",
"loginFailed": "Fejl i email adresse eller kodeord",
"loginCreated": "Ny bruger er registreret",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
+ "loginResetSuccess": "Tjek din e-mail",
+ "loginUpdateSuccess": "Ny adgangskode er indstillet",
"loginLogout": "Log af",
"loginLogo": "Logo",
"devicesAndState": "Enheder og status",
@@ -244,8 +244,8 @@
"serverAnnouncement": "Meddelelse",
"mapTitle": "Kort",
"mapLayer": "Kort opsætning",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
+ "mapCustom": "Brugerdefineret (XYZ)",
+ "mapCustomArcgis": "Brugerdefineret (ArcGIS)",
"mapCustomLabel": "Brugerdefineret kort",
"mapCarto": "Carto Basemaps",
"mapOsm": "Open Street Map",
@@ -258,21 +258,22 @@
"mapYandexMap": "Yandex Kort",
"mapYandexSat": "Yandex Satellit",
"mapWikimedia": "Wikimedia",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
+ "mapMapboxStreets": "Mapbox gader",
+ "mapMapboxOutdoors": "Mapbox udendørs",
+ "mapMapboxSatellite": "Mapbox satellit",
"mapShapePolygon": "Polygon",
"mapShapeCircle": "Cirkel",
"mapShapePolyline": "Polyline",
"mapLiveRoutes": "Live ruter",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Lag",
"stateTitle": "Status",
"stateName": "Parameter",
"stateValue": "Værdi",
"commandTitle": "Kommando",
"commandSend": "Send",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
+ "commandSent": "Kommando sendt",
+ "commandQueued": "Kommando i kø",
"commandUnit": "Enhed",
"commandCustom": "Skræddersyet kommando",
"commandDeviceIdentification": "Enheds id",
@@ -288,7 +289,7 @@
"commandRequestPhoto": "Tag billede",
"commandPowerOff": "Sluk for enhed",
"commandRebootDevice": "Genstart enhed",
- "commandFactoryReset": "Factory Reset",
+ "commandFactoryReset": "Gendan fabriksindstillinger",
"commandSendSms": "send SMS",
"commandSendUssd": "Send USSD",
"commandSosNumber": "Angiv SOS nummer",
@@ -296,7 +297,7 @@
"commandSetPhonebook": "Angiv telefonbog",
"commandVoiceMessage": "Tale meddelelse",
"commandOutputControl": "Output kontrol",
- "commandVoiceMonitoring": "Voice Monitoring",
+ "commandVoiceMonitoring": "Stemmeovervågning",
"commandSetAgps": "Konfigurer AGPS",
"commandSetIndicator": "Gem indikator",
"commandConfiguration": "Konfiguration",
@@ -306,7 +307,7 @@
"commandSetOdometer": "Konfigurer kilometertæller",
"commandGetModemStatus": "Hent Modem status",
"commandGetDeviceStatus": "Hent enheds status",
- "commandSetSpeedLimit": "Set Speed Limit",
+ "commandSetSpeedLimit": "Indstil hastighedsgrænse",
"commandModePowerSaving": "Rediger strømbesparelse",
"commandModeDeepSleep": "Rediger Deep Sleep",
"commandMovementAlarm": "Bevægelsesalarm",
@@ -325,13 +326,13 @@
"eventDeviceUnknown": "Status ukendt",
"eventDeviceOffline": "Status offline",
"eventDeviceInactive": "Enhed inaktiv",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
+ "eventDeviceMoving": "Enheden bevæger sig",
+ "eventDeviceStopped": "Enheden stoppet",
"eventDeviceOverspeed": "Hastighedsgrænsen overskredet",
- "eventDeviceFuelDrop": "Fuel drop",
+ "eventDeviceFuelDrop": "Brændstoffald",
"eventCommandResult": "Resultat af kommando",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
+ "eventGeofenceEnter": "Geofence indtastet",
+ "eventGeofenceExit": "Geofence forladt",
"eventAlarm": "Alarm",
"eventIgnitionOn": "Tænding tændt",
"eventIgnitionOff": "Tænding slukket",
@@ -346,7 +347,7 @@
"alarmLowspeed": "Lav hastighed",
"alarmOverspeed": "Hastighedsoverskridelse",
"alarmFallDown": "Fald",
- "alarmLowPower": "Low Power",
+ "alarmLowPower": "Lav strøm",
"alarmLowBattery": "Lavt batteri",
"alarmFault": "Fejl",
"alarmPowerOff": "Sluk",
@@ -357,27 +358,27 @@
"alarmGeofence": "Geofence",
"alarmGeofenceEnter": "Geofence Enter",
"alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
+ "alarmGpsAntennaCut": "GPS-antennesnit",
"alarmAccident": "Ulykke",
"alarmTow": "Bugseret",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
+ "alarmIdle": "Ledig",
+ "alarmHighRpm": "Høj RPM",
+ "alarmHardAcceleration": "Hård acceleration",
+ "alarmHardBraking": "Hård bremsning",
+ "alarmHardCornering": "Hård sving",
"alarmLaneChange": "Vognbaneskift",
- "alarmFatigueDriving": "Fatigue Driving",
+ "alarmFatigueDriving": "Træthedskørsel",
"alarmPowerCut": "Strømafbrydelse",
"alarmPowerRestored": "Strøm genoprettet",
- "alarmJamming": "Jamming",
+ "alarmJamming": "Fastklemning",
"alarmTemperature": "Temperatur",
"alarmParking": "Parkering",
- "alarmShock": "Shock",
+ "alarmShock": "Stød",
"alarmBonnet": "Motorhjelm",
"alarmFootBrake": "Fodbremse",
"alarmFuelLeak": "Brændstoflækage",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
+ "alarmTampering": "Manipulering",
+ "alarmRemoving": "Fjerner",
"notificationType": "Type af notifikation",
"notificationAlways": "Alle enheder",
"notificationNotificators": "Kanaler",
@@ -451,7 +452,7 @@
"categoryTrolleybus": "Bybus",
"categoryTruck": "Lastbil",
"categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
+ "categoryScooter": "scooter",
+ "maintenanceStart": "start",
"maintenancePeriod": "Periode"
} \ No newline at end of file
diff --git a/web/l10n/de.json b/web/l10n/de.json
index fcd458d..e20d837 100644
--- a/web/l10n/de.json
+++ b/web/l10n/de.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Kreis",
"mapShapePolyline": "Polylinie",
"mapLiveRoutes": "Live Route",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Ebene",
"stateTitle": "Status",
"stateName": "Parameter",
diff --git a/web/l10n/el.json b/web/l10n/el.json
index f13aac7..6d6be3e 100644
--- a/web/l10n/el.json
+++ b/web/l10n/el.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Κύκλος",
"mapShapePolyline": "Polyline",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Κατάσταση",
"stateName": "Παράμετρος",
diff --git a/web/l10n/en.json b/web/l10n/en.json
index 617a7e9..97243a6 100644
--- a/web/l10n/en.json
+++ b/web/l10n/en.json
@@ -261,6 +261,8 @@
"mapMapboxStreets": "Mapbox Streets",
"mapMapboxOutdoors": "Mapbox Outdoors",
"mapMapboxSatellite": "Mapbox Satellite",
+ "mapMapTilerBasic": "MapTiler Basic",
+ "mapMapTilerHybrid": "MapTiler Hybrid",
"mapShapePolygon": "Polygon",
"mapShapeCircle": "Circle",
"mapShapePolyline": "Polyline",
diff --git a/web/l10n/es.json b/web/l10n/es.json
index c9dfbc0..5cdf783 100644
--- a/web/l10n/es.json
+++ b/web/l10n/es.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Círculo",
"mapShapePolyline": "Polilínea",
"mapLiveRoutes": "Rutas en vivo",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "Capa POI",
"stateTitle": "Estado",
"stateName": "Parámetro",
diff --git a/web/l10n/fa.json b/web/l10n/fa.json
index 1e3b4e8..1a77883 100644
--- a/web/l10n/fa.json
+++ b/web/l10n/fa.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "دایره ",
"mapShapePolyline": "چند خطی",
"mapLiveRoutes": "تعقیب مسیر",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "لایه POI",
"stateTitle": "وضعیت",
"stateName": "ویژگی",
diff --git a/web/l10n/fi.json b/web/l10n/fi.json
index b783d57..2b37d75 100644
--- a/web/l10n/fi.json
+++ b/web/l10n/fi.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Ympyrä",
"mapShapePolyline": "Murtoviiva",
"mapLiveRoutes": "Live-reitit",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "Kohdepistetaso",
"stateTitle": "Tila",
"stateName": "Ominaisuus",
diff --git a/web/l10n/fr.json b/web/l10n/fr.json
index effe4d3..076981a 100644
--- a/web/l10n/fr.json
+++ b/web/l10n/fr.json
@@ -8,8 +8,8 @@
"sharedEdit": "Editer",
"sharedRemove": "Effacer",
"sharedRemoveConfirm": "Effacer objet?",
- "sharedYes": "Yes",
- "sharedNo": "No",
+ "sharedYes": "Oui",
+ "sharedNo": "Non",
"sharedKm": "km",
"sharedMi": "mi",
"sharedNmi": "nmi",
@@ -23,8 +23,8 @@
"sharedHours": "heures",
"sharedMinutes": "minutes",
"sharedDecimalDegrees": "Degrés Décimaux",
- "sharedDegreesDecimalMinutes": "Dégrés Décimaux Minutes",
- "sharedDegreesMinutesSeconds": "Dégrés Minutes Secondes",
+ "sharedDegreesDecimalMinutes": "Degrés Décimaux Minutes",
+ "sharedDegreesMinutesSeconds": "Degrés Minutes Secondes",
"sharedName": "Nom",
"sharedDescription": "Description",
"sharedSearch": "Recherche",
@@ -65,7 +65,7 @@
"sharedRequired": "Requis",
"sharedPreferences": "Préférences",
"sharedPermissions": "Permissions",
- "sharedConnections": "Connections",
+ "sharedConnections": "Connexions",
"sharedExtra": "Extra",
"sharedTypeString": "Chaîne de caractères",
"sharedTypeNumber": "Nombre",
@@ -76,20 +76,20 @@
"sharedSavedCommands": "Commandes sauvegardées ",
"sharedNew": "Nouveau",
"sharedShowAddress": "Montrer adresse",
- "sharedShowDetails": "More Details",
+ "sharedShowDetails": "Plus de détails",
"sharedDisabled": "Désactivé",
"sharedMaintenance": "Entretien",
"sharedDeviceAccumulators": "Accumulateurs",
"sharedAlarms": "Alarmes",
- "sharedLocation": "Location",
- "sharedImport": "Import",
+ "sharedLocation": "Localisation",
+ "sharedImport": "Importer",
"attributeSpeedLimit": "Limite de vitesse",
"attributePolylineDistance": "Distance polyligne",
"attributeReportIgnoreOdometer": "Rapport: Ignorer l'odomètre",
"attributeWebReportColor": "Web: couleur du rapport",
"attributeDevicePassword": "Mot de passe de l'appareil",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
+ "attributeDeviceInactivityStart": "Début d'inactivité de l'appareil",
+ "attributeDeviceInactivityPeriod": "Période d'inactivité de l'appareil",
"attributeProcessingCopyAttributes": "En cours: Copie des attributs",
"attributeColor": "Couleur",
"attributeWebLiveRouteLength": "Web: Longueur de route en temps réel",
@@ -112,9 +112,9 @@
"attributeUiDisableDrivers": "UI: Désactiver les conducteurs",
"attributeUiDisableComputedAttributes": "UI: Désactiver les attributs calculés",
"attributeUiDisableCalendars": "UI: Désactiver les calendiers",
- "attributeUiDisableMaintenance": "UI/ Désactiver l'entretien",
+ "attributeUiDisableMaintenance": "UI: Désactiver l'entretien",
"attributeUiHidePositionAttributes": "UI: Cacher Attributs de Position",
- "attributeNotificationTokens": "Notification Tokens",
+ "attributeNotificationTokens": "Jeton de notification",
"errorTitle": "Erreur",
"errorGeneral": "Paramètres invalides ou violation de contrainte",
"errorConnection": "Erreur de connexion",
@@ -132,13 +132,13 @@
"userToken": "Jeton",
"loginTitle": "Identification",
"loginLanguage": "Langue",
- "loginReset": "Reset Password",
+ "loginReset": "Réinitialiser le mot de passe",
"loginRegister": "Inscription",
"loginLogin": "Se connecter",
"loginFailed": "Adresse email ou mot de passe incorrect",
"loginCreated": "Nouvel utilisateur enregistré",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
+ "loginResetSuccess": "Vérifiez vos emails",
+ "loginUpdateSuccess": "Le nouveau mot de passe est défini",
"loginLogout": "Déconnexion",
"loginLogo": "Logo",
"devicesAndState": "Appareils et État",
@@ -241,7 +241,7 @@
"serverRegistration": "Inscription",
"serverReadonly": "Lecture seule",
"serverForceSettings": "Forcer les paramètres",
- "serverAnnouncement": "Announcement",
+ "serverAnnouncement": "Avis",
"mapTitle": "Carte",
"mapLayer": "Couche cartographique",
"mapCustom": "Personnalisé (XYZ)",
@@ -265,6 +265,7 @@
"mapShapeCircle": "Cercle",
"mapShapePolyline": "Polyligne",
"mapLiveRoutes": "Routes en direct",
+ "mapCurrentLocation": "Localisation actuelle",
"mapPoiLayer": "Couche Point d'intérêt",
"stateTitle": "État",
"stateName": "Paramètre",
@@ -283,12 +284,12 @@
"commandEngineResume": "Démarrage moteur",
"commandAlarmArm": "Activer l'alarme",
"commandAlarmDisarm": "Désactiver l'alarme",
- "commandAlarmDismiss": "Dismiss Alarm",
+ "commandAlarmDismiss": "Ignorer l'alarme",
"commandSetTimezone": "Régler le fuseau horaire",
"commandRequestPhoto": "Demander une photo",
"commandPowerOff": "Eteindre l'appareil",
"commandRebootDevice": "Redémarrer l'appareil",
- "commandFactoryReset": "Factory Reset",
+ "commandFactoryReset": "Réinitialisation d'usine",
"commandSendSms": "Envoyer un SMS",
"commandSendUssd": "Envoyer un USSD",
"commandSosNumber": "Régler le n° SOS",
@@ -306,14 +307,14 @@
"commandSetOdometer": "Fixer l'odomètre",
"commandGetModemStatus": "Acquérir le statut du modem",
"commandGetDeviceStatus": "Acquérir le statut du périphérique",
- "commandSetSpeedLimit": "Set Speed Limit",
+ "commandSetSpeedLimit": "Définir la limite de vitesse",
"commandModePowerSaving": "Modifier la sauvegarde de courant",
"commandModeDeepSleep": "Modifier le sommeil profond",
"commandMovementAlarm": "Alarme mouvement",
"commandFrequency": "Fréquence",
"commandTimezone": "Décalage horaire",
"commandMessage": "Message",
- "commandRadius": "rayon",
+ "commandRadius": "Rayon",
"commandEnable": "Activer",
"commandData": "Données",
"commandIndex": "Index",
@@ -324,7 +325,7 @@
"eventDeviceOnline": "Statut: en ligne",
"eventDeviceUnknown": "Statut: inconnu",
"eventDeviceOffline": "Statut: hors ligne",
- "eventDeviceInactive": "Device inactive",
+ "eventDeviceInactive": "Appareil inactif",
"eventDeviceMoving": "Appareil en mouvement",
"eventDeviceStopped": "Appareil arrêté",
"eventDeviceOverspeed": "Vitesse limite dépassée",
@@ -392,7 +393,7 @@
"reportTrips": "Trajets",
"reportStops": "Arrêts",
"reportSummary": "Résumé",
- "reportDaily": "Daily Summary",
+ "reportDaily": "Rapport journalier",
"reportChart": "Graphique",
"reportConfigure": "Configurer",
"reportEventTypes": "Types d'évènements",
@@ -404,8 +405,8 @@
"reportCustom": "Personnalisé",
"reportToday": "Aujourd'hui",
"reportYesterday": "Hier",
- "reportThisWeek": "Cette Semaine",
- "reportPreviousWeek": "La Semaine dernière",
+ "reportThisWeek": "Cette semaine",
+ "reportPreviousWeek": "La semaine dernière",
"reportThisMonth": "Ce mois-ci",
"reportPreviousMonth": "Le mois dernier",
"reportDeviceName": "Nom de l'appareil",
@@ -413,8 +414,8 @@
"reportMaximumSpeed": "Vitesse maximum",
"reportEngineHours": "Heures du moteur",
"reportDuration": "Durée",
- "reportStartDate": "Start Date",
- "reportStartTime": "Date de départ",
+ "reportStartDate": "Date de départ",
+ "reportStartTime": "Heure de départ",
"reportStartAddress": "Adresse de départ",
"reportEndTime": "Date de fin",
"reportEndAddress": "Adresse de fin",
@@ -430,7 +431,7 @@
"statisticsMessagesStored": "Messages stockés",
"statisticsGeocoder": "Requêtes de géocodage",
"statisticsGeolocation": "Requêtes de géolocalisation",
- "categoryArrow": "Flêche",
+ "categoryArrow": "Flèche",
"categoryDefault": "Par défaut",
"categoryAnimal": "Animal",
"categoryBicycle": "Vélo",
@@ -440,7 +441,7 @@
"categoryCrane": "Grue",
"categoryHelicopter": "Hélicoptère",
"categoryMotorcycle": "Moto",
- "categoryOffroad": "Véhicule tout terrains",
+ "categoryOffroad": "Véhicule tout-terrain",
"categoryPerson": "Personne",
"categoryPickup": "Pickup",
"categoryPlane": "Avion",
diff --git a/web/l10n/he.json b/web/l10n/he.json
index 6a0b6ac..53985e7 100644
--- a/web/l10n/he.json
+++ b/web/l10n/he.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "מעגל",
"mapShapePolyline": "צלע",
"mapLiveRoutes": "מסלול נסיעה",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "שכבת נק' עניין",
"stateTitle": "מצב",
"stateName": "תכונה",
diff --git a/web/l10n/hi.json b/web/l10n/hi.json
index a50cb8d..6e18ec5 100644
--- a/web/l10n/hi.json
+++ b/web/l10n/hi.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "वृत्त",
"mapShapePolyline": "पाली लाइन",
"mapLiveRoutes": "लाइव मार्ग",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "पीओआई परत",
"stateTitle": "स्थिति / अवस्ता",
"stateName": "गुण",
diff --git a/web/l10n/hr.json b/web/l10n/hr.json
index 70ade90..7f0c44b 100644
--- a/web/l10n/hr.json
+++ b/web/l10n/hr.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Krug",
"mapShapePolyline": "Razlomljena linija",
"mapLiveRoutes": "Rute uživo",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "Točke interesa sloj",
"stateTitle": "Stanje",
"stateName": "Atribut",
diff --git a/web/l10n/hu.json b/web/l10n/hu.json
index e50caf6..18b56b1 100644
--- a/web/l10n/hu.json
+++ b/web/l10n/hu.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Kör",
"mapShapePolyline": "Vonallánc",
"mapLiveRoutes": "Élő útvonalak",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI réteg",
"stateTitle": "Helyzet",
"stateName": "Paraméter",
diff --git a/web/l10n/id.json b/web/l10n/id.json
index ec7c7b8..657e23f 100644
--- a/web/l10n/id.json
+++ b/web/l10n/id.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Lingkaran",
"mapShapePolyline": "Garis Poli",
"mapLiveRoutes": "Rute Aktif",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Status",
"stateName": "Atribut",
diff --git a/web/l10n/it.json b/web/l10n/it.json
index a3b8942..d727a0f 100644
--- a/web/l10n/it.json
+++ b/web/l10n/it.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Cerchio",
"mapShapePolyline": "Polylinea",
"mapLiveRoutes": "Diretta Tragitti",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "Layer POI",
"stateTitle": "Stato",
"stateName": "Attributo",
diff --git a/web/l10n/ja.json b/web/l10n/ja.json
index 480db1a..61df997 100644
--- a/web/l10n/ja.json
+++ b/web/l10n/ja.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "円形",
"mapShapePolyline": "折れ線形",
"mapLiveRoutes": "リアルタイム経路",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI レイヤー",
"stateTitle": "詳細",
"stateName": "属性",
diff --git a/web/l10n/ka.json b/web/l10n/ka.json
index 8c547fd..0acc10a 100644
--- a/web/l10n/ka.json
+++ b/web/l10n/ka.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "წრე",
"mapShapePolyline": "ტეხილი ხაზები",
"mapLiveRoutes": "ცოცხალი მარშრუტები",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI ფენა",
"stateTitle": "სტატუსი",
"stateName": "ატრიბუტი",
diff --git a/web/l10n/kk.json b/web/l10n/kk.json
index 7bed9b4..a658931 100644
--- a/web/l10n/kk.json
+++ b/web/l10n/kk.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Шеңбер",
"mapShapePolyline": "Сызық",
"mapLiveRoutes": "Нақты бағыттар",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Жай күйі",
"stateName": "Параметрі",
diff --git a/web/l10n/km.json b/web/l10n/km.json
index 3c6935b..9b3e24f 100644
--- a/web/l10n/km.json
+++ b/web/l10n/km.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "រង្វង់",
"mapShapePolyline": "ពហុបន្ទាត់",
"mapLiveRoutes": "ផ្លូវបន្តផ្ទាល់",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "សភាព",
"stateName": "គុណលក្ខណៈ",
diff --git a/web/l10n/ko.json b/web/l10n/ko.json
index 6e30b9a..3a2ebe2 100644
--- a/web/l10n/ko.json
+++ b/web/l10n/ko.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "원형",
"mapShapePolyline": "폴리라인",
"mapLiveRoutes": "실시간 경로",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "상태",
"stateName": "속성",
diff --git a/web/l10n/lo.json b/web/l10n/lo.json
index d45e14e..12c8ddf 100644
--- a/web/l10n/lo.json
+++ b/web/l10n/lo.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "ວົງກົມ",
"mapShapePolyline": "Polyline",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "ສະຖານະ",
"stateName": "ຄຸນລັກສະນະ",
diff --git a/web/l10n/lt.json b/web/l10n/lt.json
index 9eb577c..228a26a 100644
--- a/web/l10n/lt.json
+++ b/web/l10n/lt.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Apskritimas",
"mapShapePolyline": "Polilinija",
"mapLiveRoutes": "Tiesioginiai maršrutai",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "Lankytinų vietų sluoksnis",
"stateTitle": "Būklė",
"stateName": "Parametras",
diff --git a/web/l10n/lv.json b/web/l10n/lv.json
index 920b6cd..b387aa7 100644
--- a/web/l10n/lv.json
+++ b/web/l10n/lv.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Aplis",
"mapShapePolyline": "Lauzta līnija",
"mapLiveRoutes": "Reāllaika Maršruti",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Slānis",
"stateTitle": "Stāvoklis",
"stateName": "Īpašības",
diff --git a/web/l10n/ml.json b/web/l10n/ml.json
index 0bb4449..9ce6d1a 100644
--- a/web/l10n/ml.json
+++ b/web/l10n/ml.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Circle",
"mapShapePolyline": "Polyline",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "State",
"stateName": "Attribute",
diff --git a/web/l10n/mn.json b/web/l10n/mn.json
index 8fe305c..7675707 100644
--- a/web/l10n/mn.json
+++ b/web/l10n/mn.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Circle",
"mapShapePolyline": "Polyline",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "State",
"stateName": "Attribute",
diff --git a/web/l10n/ms.json b/web/l10n/ms.json
index 7b6ee99..f94b432 100644
--- a/web/l10n/ms.json
+++ b/web/l10n/ms.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Circle",
"mapShapePolyline": "Polyline",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Negeri",
"stateName": "Atribut",
diff --git a/web/l10n/nb.json b/web/l10n/nb.json
index eaaaa74..dbf5785 100644
--- a/web/l10n/nb.json
+++ b/web/l10n/nb.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Sirkel",
"mapShapePolyline": "Polylinje",
"mapLiveRoutes": "Live rute",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI-lag",
"stateTitle": "Status",
"stateName": "Egenskap",
diff --git a/web/l10n/ne.json b/web/l10n/ne.json
index ea610df..c6b0db4 100644
--- a/web/l10n/ne.json
+++ b/web/l10n/ne.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "वृत्त",
"mapShapePolyline": "बहुरेखा",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "अवस्था ",
"stateName": "बिषेशता",
diff --git a/web/l10n/nl.json b/web/l10n/nl.json
index d06f3da..4447ed5 100644
--- a/web/l10n/nl.json
+++ b/web/l10n/nl.json
@@ -132,13 +132,13 @@
"userToken": "Token",
"loginTitle": "Inloggen",
"loginLanguage": "Taal",
- "loginReset": "Reset Password",
+ "loginReset": "Wachtwoord herstellen",
"loginRegister": "Registreren",
"loginLogin": "Inloggen",
"loginFailed": "Onjuist e-mailadres of wachtwoord",
"loginCreated": "De nieuwe gebruiker is geregistreerd",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
+ "loginResetSuccess": "Check je e-mail",
+ "loginUpdateSuccess": "Het wachtwoord is ingesteld",
"loginLogout": "Afmelden",
"loginLogo": "Logo",
"devicesAndState": "Apparaten en status",
@@ -265,6 +265,7 @@
"mapShapeCircle": "Cirkel",
"mapShapePolyline": "Polylijn",
"mapLiveRoutes": "Live routes",
+ "mapCurrentLocation": "Huidige locatie",
"mapPoiLayer": "POI laag",
"stateTitle": "Status",
"stateName": "Parameter",
diff --git a/web/l10n/nn.json b/web/l10n/nn.json
index 1c2e106..d275369 100644
--- a/web/l10n/nn.json
+++ b/web/l10n/nn.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Sirkel",
"mapShapePolyline": "Polylinje",
"mapLiveRoutes": "Live ruter",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI-lag",
"stateTitle": "Status",
"stateName": "Eigenskap",
diff --git a/web/l10n/pl.json b/web/l10n/pl.json
index f1011b7..d67da1e 100644
--- a/web/l10n/pl.json
+++ b/web/l10n/pl.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Okrąg",
"mapShapePolyline": "Krzywa",
"mapLiveRoutes": "Ścieżki na żywo",
+ "mapCurrentLocation": "Aktualna lokalizacja",
"mapPoiLayer": "Warstwa POI",
"stateTitle": "Stan i lokalizacja",
"stateName": "Właściwość",
diff --git a/web/l10n/pt.json b/web/l10n/pt.json
index 1051a3e..1f76ad7 100644
--- a/web/l10n/pt.json
+++ b/web/l10n/pt.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Circulo",
"mapShapePolyline": "Linha Polígono",
"mapLiveRoutes": "Rotas ao Vivo",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "Camada POI",
"stateTitle": "Estado",
"stateName": "Parâmetro",
diff --git a/web/l10n/pt_BR.json b/web/l10n/pt_BR.json
index c36b00c..8a22b3a 100644
--- a/web/l10n/pt_BR.json
+++ b/web/l10n/pt_BR.json
@@ -132,13 +132,13 @@
"userToken": "Token",
"loginTitle": "Login",
"loginLanguage": "Idioma",
- "loginReset": "Reset Password",
+ "loginReset": "Redefinir senha",
"loginRegister": "Registrar",
"loginLogin": "Entrar",
"loginFailed": "Email ou senha incorretos",
"loginCreated": "Novo usuário registrado",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
+ "loginResetSuccess": "Verifique seu e-mail",
+ "loginUpdateSuccess": "Nova senha definida",
"loginLogout": "Sair",
"loginLogo": "Logotipo",
"devicesAndState": "Dispositivo e Estado",
@@ -265,6 +265,7 @@
"mapShapeCircle": "Círculo",
"mapShapePolyline": "Polilinha",
"mapLiveRoutes": "Rotas ao Vivo",
+ "mapCurrentLocation": "Localização atual",
"mapPoiLayer": "Camada POI",
"stateTitle": "Estado",
"stateName": "Atributo",
@@ -288,7 +289,7 @@
"commandRequestPhoto": "Pegar foto",
"commandPowerOff": "Desligar o Dispositivo",
"commandRebootDevice": "Reiniciar dispositivo",
- "commandFactoryReset": "Factory Reset",
+ "commandFactoryReset": "Restauração de fábrica",
"commandSendSms": "Enviar SMS",
"commandSendUssd": "Enviar USSD",
"commandSosNumber": "Definir numero SOS",
@@ -306,7 +307,7 @@
"commandSetOdometer": "Definir Odômetro",
"commandGetModemStatus": "Obter Status do Modem",
"commandGetDeviceStatus": "Obter status do dispositivo",
- "commandSetSpeedLimit": "Set Speed Limit",
+ "commandSetSpeedLimit": "Definir limite de velocidade",
"commandModePowerSaving": "Modificar a Economia de Energia",
"commandModeDeepSleep": "Modifique o Sono Profundo",
"commandMovementAlarm": "Alarme de Movimento",
diff --git a/web/l10n/ro.json b/web/l10n/ro.json
index 96e710c..8a36f2d 100644
--- a/web/l10n/ro.json
+++ b/web/l10n/ro.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Cerc",
"mapShapePolyline": "Polilinie",
"mapLiveRoutes": "Rute in timp real",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI ",
"stateTitle": "Stare",
"stateName": "Atribut",
diff --git a/web/l10n/ru.json b/web/l10n/ru.json
index 36b48f5..526d9cd 100644
--- a/web/l10n/ru.json
+++ b/web/l10n/ru.json
@@ -8,8 +8,8 @@
"sharedEdit": "Редактировать",
"sharedRemove": "Удалить",
"sharedRemoveConfirm": "Удалить элемент?",
- "sharedYes": "Yes",
- "sharedNo": "No",
+ "sharedYes": "Да",
+ "sharedNo": "Нет",
"sharedKm": "км",
"sharedMi": "мили",
"sharedNmi": "м.мили",
@@ -65,7 +65,7 @@
"sharedRequired": "Обязательные",
"sharedPreferences": "Настройки",
"sharedPermissions": "Разрешения",
- "sharedConnections": "Connections",
+ "sharedConnections": "Соединения",
"sharedExtra": "Экстра",
"sharedTypeString": "Строка",
"sharedTypeNumber": "Число",
@@ -76,20 +76,20 @@
"sharedSavedCommands": "Сохраненные команды",
"sharedNew": "Новый...",
"sharedShowAddress": "Показать адрес",
- "sharedShowDetails": "More Details",
+ "sharedShowDetails": "Подробнее",
"sharedDisabled": "Отключен",
"sharedMaintenance": "Обслуживание",
"sharedDeviceAccumulators": "Аккумуляторы",
"sharedAlarms": "Тревоги",
- "sharedLocation": "Location",
- "sharedImport": "Import",
+ "sharedLocation": "Расположение",
+ "sharedImport": "Импортировать",
"attributeSpeedLimit": "Ограничение скорости",
"attributePolylineDistance": "Расстояние от линии",
"attributeReportIgnoreOdometer": "Отчет: Игнорировать одометер",
"attributeWebReportColor": "Веб: Цвет отчета",
"attributeDevicePassword": "Пароль устройтва",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
+ "attributeDeviceInactivityStart": "Бездействие Устройства Начало",
+ "attributeDeviceInactivityPeriod": "Бездействие Устройства Период",
"attributeProcessingCopyAttributes": "Обработка: Копирование атрибутов",
"attributeColor": "Цвет",
"attributeWebLiveRouteLength": "Веб: Длина онлайн маршрута",
@@ -114,7 +114,7 @@
"attributeUiDisableCalendars": "UI: Отключить календари",
"attributeUiDisableMaintenance": "UI: Отключить обслуживание",
"attributeUiHidePositionAttributes": "UI: Скрывать атрибуты",
- "attributeNotificationTokens": "Notification Tokens",
+ "attributeNotificationTokens": "Токены Уведомлений",
"errorTitle": "Ошибка",
"errorGeneral": "Неправильные параметры или нарушение ограничений",
"errorConnection": "Ошибка соединения",
@@ -132,13 +132,13 @@
"userToken": "Ключ",
"loginTitle": "Вход",
"loginLanguage": "Язык",
- "loginReset": "Reset Password",
+ "loginReset": "Сброс Пароля",
"loginRegister": "Регистрация",
"loginLogin": "Вход",
"loginFailed": "Неправильный email адрес или пароль",
"loginCreated": "Новый пользователь зарегистрирован",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
+ "loginResetSuccess": "Проверьте свою электронную почту",
+ "loginUpdateSuccess": "Новый пароль установлен",
"loginLogout": "Выход",
"loginLogo": "Логотип",
"devicesAndState": "Устройства и состояния",
@@ -241,7 +241,7 @@
"serverRegistration": "Регистрация",
"serverReadonly": "Только просмотр",
"serverForceSettings": "Форсировать настройки",
- "serverAnnouncement": "Announcement",
+ "serverAnnouncement": "Объявление",
"mapTitle": "Карта",
"mapLayer": "Слой карты",
"mapCustom": "Пользовательский (XYZ)",
@@ -258,13 +258,14 @@
"mapYandexMap": "Яндекс Карты",
"mapYandexSat": "Яндекс Спутник",
"mapWikimedia": "Викимедиа",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
+ "mapMapboxStreets": "Mapbox Улицы",
+ "mapMapboxOutdoors": "Mapbox Топография",
+ "mapMapboxSatellite": "Mapbox Спутник",
"mapShapePolygon": "Многоугольник",
"mapShapeCircle": "Круг",
"mapShapePolyline": "Линия",
"mapLiveRoutes": " Живые маршруты",
+ "mapCurrentLocation": "Текущее Местоположение",
"mapPoiLayer": "Слой POI",
"stateTitle": "Состояние",
"stateName": "Параметр",
@@ -283,12 +284,12 @@
"commandEngineResume": "Разблокировать двигатель",
"commandAlarmArm": "Активировать сигнализацию",
"commandAlarmDisarm": "Деактивировать сигнализацию",
- "commandAlarmDismiss": "Dismiss Alarm",
+ "commandAlarmDismiss": "Отключить Сигнализацию",
"commandSetTimezone": "Настроить часовой пояс",
"commandRequestPhoto": "Запросить фото",
"commandPowerOff": "Выключить устройство",
"commandRebootDevice": "Перезагрузить устройство",
- "commandFactoryReset": "Factory Reset",
+ "commandFactoryReset": "Сброс к Заводским Настройкам",
"commandSendSms": "Отправить СМС",
"commandSendUssd": "Отправить USSD",
"commandSosNumber": "Настроить экстренный номер",
@@ -306,7 +307,7 @@
"commandSetOdometer": "Настроить одометр",
"commandGetModemStatus": "Запросить состояние модема",
"commandGetDeviceStatus": "Запросить состояние устройства",
- "commandSetSpeedLimit": "Set Speed Limit",
+ "commandSetSpeedLimit": "Установить Ограничение Скорости",
"commandModePowerSaving": "Изменить режим энергосбережения",
"commandModeDeepSleep": "Изменить режим глубокого сна",
"commandMovementAlarm": "Тревога Движение",
@@ -324,7 +325,7 @@
"eventDeviceOnline": "Статус онлайн",
"eventDeviceUnknown": "Статус неизвестен",
"eventDeviceOffline": "Статус оффлайн",
- "eventDeviceInactive": "Device inactive",
+ "eventDeviceInactive": "Устройство неактивно",
"eventDeviceMoving": "Устройство двигается",
"eventDeviceStopped": "Устройство остановилось",
"eventDeviceOverspeed": "Превышено ограничение скорости",
@@ -386,13 +387,13 @@
"notificatorSms": "СМС",
"notificatorFirebase": "Firebase",
"notificatorTraccar": "Traccar",
- "reportReplay": "Replay",
+ "reportReplay": "Воспроизвести",
"reportRoute": "Маршрут",
"reportEvents": "События",
"reportTrips": "Поездки",
"reportStops": "Остановки",
"reportSummary": "Сводка",
- "reportDaily": "Daily Summary",
+ "reportDaily": "Ежедневная Сводка",
"reportChart": "Диаграмма",
"reportConfigure": "Конфигурировать",
"reportEventTypes": "Тип события",
@@ -413,7 +414,7 @@
"reportMaximumSpeed": "Максимальная скорость",
"reportEngineHours": "Моточасы",
"reportDuration": "Длительность",
- "reportStartDate": "Start Date",
+ "reportStartDate": "Дата Начала",
"reportStartTime": "Начальное время",
"reportStartAddress": "Начальный адрес",
"reportEndTime": "Конечное время",
diff --git a/web/l10n/si.json b/web/l10n/si.json
index 57c5959..40fa1b2 100644
--- a/web/l10n/si.json
+++ b/web/l10n/si.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "වෘත්තය",
"mapShapePolyline": "රේකාව ",
"mapLiveRoutes": "සජීවී මාර්ග",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI ස්තරය",
"stateTitle": "තත්වය",
"stateName": "පරාමිතිය",
diff --git a/web/l10n/sk.json b/web/l10n/sk.json
index 2d8475f..44c5978 100644
--- a/web/l10n/sk.json
+++ b/web/l10n/sk.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Kruh",
"mapShapePolyline": "Lomená čiara",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Parametre",
"stateName": "Parameter",
diff --git a/web/l10n/sl.json b/web/l10n/sl.json
index e4433c0..d40081a 100644
--- a/web/l10n/sl.json
+++ b/web/l10n/sl.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Krog",
"mapShapePolyline": "Polyline",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Stanje",
"stateName": "Parameter",
diff --git a/web/l10n/sq.json b/web/l10n/sq.json
index 0c25fae..cd3ae2d 100644
--- a/web/l10n/sq.json
+++ b/web/l10n/sq.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Circle",
"mapShapePolyline": "Polyline",
"mapLiveRoutes": "Live Routes",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Gjëndja",
"stateName": "Atribut",
diff --git a/web/l10n/sr.json b/web/l10n/sr.json
index 7c2acc5..603f519 100644
--- a/web/l10n/sr.json
+++ b/web/l10n/sr.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Krug",
"mapShapePolyline": "Višelinijski",
"mapLiveRoutes": "Validne rute",
+ "mapCurrentLocation": "Trenutna lokacija",
"mapPoiLayer": "POI sloj",
"stateTitle": "Stanje",
"stateName": "Parametar",
diff --git a/web/l10n/sv.json b/web/l10n/sv.json
index 6aba516..7194040 100644
--- a/web/l10n/sv.json
+++ b/web/l10n/sv.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Cirkel",
"mapShapePolyline": "Polyline",
"mapLiveRoutes": "Liverutter",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Status",
"stateName": "Attribut",
diff --git a/web/l10n/ta.json b/web/l10n/ta.json
index 45f4d98..06a2f85 100644
--- a/web/l10n/ta.json
+++ b/web/l10n/ta.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "வட்டம்",
"mapShapePolyline": "பாலிலைன்",
"mapLiveRoutes": "நேரடி வழிகள்",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI லேயர்",
"stateTitle": "நிலை",
"stateName": "சாட்டு",
diff --git a/web/l10n/th.json b/web/l10n/th.json
index 80382f5..1b8c7e4 100644
--- a/web/l10n/th.json
+++ b/web/l10n/th.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "วงกลม",
"mapShapePolyline": "โพลีไลน์",
"mapLiveRoutes": "เส้นทาง Live",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "สถานะ",
"stateName": "พารามิเตอร์",
diff --git a/web/l10n/tr.json b/web/l10n/tr.json
index 33480cd..b138eba 100644
--- a/web/l10n/tr.json
+++ b/web/l10n/tr.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Çember",
"mapShapePolyline": "Çizim",
"mapLiveRoutes": "Canlı Takip",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Katmanı",
"stateTitle": "Bölge",
"stateName": "Özellik",
diff --git a/web/l10n/uk.json b/web/l10n/uk.json
index 925c87f..09e207a 100644
--- a/web/l10n/uk.json
+++ b/web/l10n/uk.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Коло",
"mapShapePolyline": "Лінія",
"mapLiveRoutes": "Поточні маршрути",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "Шар POI",
"stateTitle": "Стан",
"stateName": "Атрибут",
diff --git a/web/l10n/uz.json b/web/l10n/uz.json
index f16b6f1..20d632d 100644
--- a/web/l10n/uz.json
+++ b/web/l10n/uz.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Айлана",
"mapShapePolyline": "Чизиқ",
"mapLiveRoutes": "Амалдаги маршрутлар",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Ҳолат",
"stateName": "Параметр",
diff --git a/web/l10n/vi.json b/web/l10n/vi.json
index 5f83721..24d2cfb 100644
--- a/web/l10n/vi.json
+++ b/web/l10n/vi.json
@@ -265,6 +265,7 @@
"mapShapeCircle": "Vòng tròn",
"mapShapePolyline": "Đường kẻ đa giác",
"mapLiveRoutes": "Lộ trình trực tuyến",
+ "mapCurrentLocation": "Current Location",
"mapPoiLayer": "POI Layer",
"stateTitle": "Trạng thái",
"stateName": "Thuộc tính",
diff --git a/web/l10n/zh.json b/web/l10n/zh.json
index 8dd8d27..9776521 100644
--- a/web/l10n/zh.json
+++ b/web/l10n/zh.json
@@ -8,8 +8,8 @@
"sharedEdit": "编辑",
"sharedRemove": "删除",
"sharedRemoveConfirm": "要删除选中项吗?",
- "sharedYes": "Yes",
- "sharedNo": "No",
+ "sharedYes": "是",
+ "sharedNo": "否",
"sharedKm": "千米",
"sharedMi": "海里",
"sharedNmi": "海里",
@@ -65,7 +65,7 @@
"sharedRequired": "必填",
"sharedPreferences": "个性化设置",
"sharedPermissions": "权限",
- "sharedConnections": "Connections",
+ "sharedConnections": "链接",
"sharedExtra": "附加",
"sharedTypeString": "字符串",
"sharedTypeNumber": "数字",
@@ -76,20 +76,20 @@
"sharedSavedCommands": "保存指令",
"sharedNew": "新建",
"sharedShowAddress": "显示地址",
- "sharedShowDetails": "More Details",
+ "sharedShowDetails": "详情请见",
"sharedDisabled": "关闭",
"sharedMaintenance": "维护",
"sharedDeviceAccumulators": "蓄电池",
"sharedAlarms": "报警",
- "sharedLocation": "Location",
- "sharedImport": "Import",
+ "sharedLocation": "位置",
+ "sharedImport": "接入",
"attributeSpeedLimit": "速度限制",
"attributePolylineDistance": "折线距离",
"attributeReportIgnoreOdometer": "报告:忽略里程表",
"attributeWebReportColor": "页面:报告颜色",
"attributeDevicePassword": "设备密码",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
+ "attributeDeviceInactivityStart": "设备无响应起始",
+ "attributeDeviceInactivityPeriod": "设备无响应时期",
"attributeProcessingCopyAttributes": "处理中:复制属性",
"attributeColor": "颜色",
"attributeWebLiveRouteLength": "页面:活动路径长度",
@@ -114,7 +114,7 @@
"attributeUiDisableCalendars": "关闭日历",
"attributeUiDisableMaintenance": "禁止维护",
"attributeUiHidePositionAttributes": "隐藏位置属性",
- "attributeNotificationTokens": "Notification Tokens",
+ "attributeNotificationTokens": "通知标识",
"errorTitle": "错误",
"errorGeneral": "无效参数",
"errorConnection": "连接错误",
@@ -132,13 +132,13 @@
"userToken": "令牌",
"loginTitle": "登录",
"loginLanguage": "语言",
- "loginReset": "Reset Password",
+ "loginReset": "密码重设",
"loginRegister": "注册",
"loginLogin": "登录",
"loginFailed": "邮箱或密码不对",
"loginCreated": "该用户已经被注册了",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
+ "loginResetSuccess": "邮件查询",
+ "loginUpdateSuccess": "新密码已重置",
"loginLogout": "注销",
"loginLogo": "图标",
"devicesAndState": "设备和状态",
@@ -241,12 +241,12 @@
"serverRegistration": "注册",
"serverReadonly": "只读",
"serverForceSettings": "强制设置",
- "serverAnnouncement": "Announcement",
+ "serverAnnouncement": "通知",
"mapTitle": "地图",
"mapLayer": "地图图层",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
+ "mapCustom": "自定义(XYZ) ",
+ "mapCustomArcgis": "自定义(ArcGIS)",
+ "mapCustomLabel": "自定义地图",
"mapCarto": "Carto Basemaps",
"mapOsm": "OpenStreetMap 地图",
"mapBingKey": "必应重点地图",
@@ -254,17 +254,18 @@
"mapBingAerial": "必应航测地图",
"mapBingHybrid": "必应混合地图",
"mapBaidu": "百度地图",
- "mapAutoNavi": "AutoNavi",
+ "mapAutoNavi": " 高德地图",
"mapYandexMap": "Yandex地图",
"mapYandexSat": "Yandex卫星地图",
"mapWikimedia": "维基",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
+ "mapMapboxStreets": "Mapbox街道",
+ "mapMapboxOutdoors": "Mapbox外景",
+ "mapMapboxSatellite": "Mapbox卫星",
"mapShapePolygon": "多边形",
"mapShapeCircle": "圆形",
"mapShapePolyline": "折线",
"mapLiveRoutes": "运动轨迹",
+ "mapCurrentLocation": "当前位置",
"mapPoiLayer": "POI层",
"stateTitle": "状态",
"stateName": "参数",
@@ -283,12 +284,12 @@
"commandEngineResume": "引擎启动",
"commandAlarmArm": "部署报警",
"commandAlarmDisarm": "解除报警",
- "commandAlarmDismiss": "Dismiss Alarm",
+ "commandAlarmDismiss": "停止警报",
"commandSetTimezone": "设置时区",
"commandRequestPhoto": "请求图片",
"commandPowerOff": "设备关机",
"commandRebootDevice": "重启设备",
- "commandFactoryReset": "Factory Reset",
+ "commandFactoryReset": "恢复出厂设置",
"commandSendSms": "发送短信",
"commandSendUssd": "发送USSD",
"commandSosNumber": "设置SOS号码",
@@ -306,7 +307,7 @@
"commandSetOdometer": "设置里程表",
"commandGetModemStatus": "获取Modem状态",
"commandGetDeviceStatus": "获取设备状态",
- "commandSetSpeedLimit": "Set Speed Limit",
+ "commandSetSpeedLimit": "设置速度限制",
"commandModePowerSaving": "修改电源节省",
"commandModeDeepSleep": "修改深度睡眠",
"commandMovementAlarm": "移动报警",
@@ -324,7 +325,7 @@
"eventDeviceOnline": "在线状态",
"eventDeviceUnknown": "未知状态",
"eventDeviceOffline": "离线状态",
- "eventDeviceInactive": "Device inactive",
+ "eventDeviceInactive": "设备无响应",
"eventDeviceMoving": "设备移动中",
"eventDeviceStopped": "设备已停止",
"eventDeviceOverspeed": "超速限制",
@@ -386,20 +387,20 @@
"notificatorSms": "短信",
"notificatorFirebase": "Firebase",
"notificatorTraccar": "Traccar",
- "reportReplay": "Replay",
+ "reportReplay": "重播",
"reportRoute": "轨迹",
"reportEvents": "事件",
"reportTrips": "行程",
"reportStops": "停留点",
"reportSummary": "概要",
- "reportDaily": "Daily Summary",
+ "reportDaily": "每日汇报",
"reportChart": "图表",
"reportConfigure": "筛选条件",
"reportEventTypes": "事件类型",
"reportChartType": "图表类型",
"reportShowMarkers": "显示图标",
"reportExport": "导出",
- "reportEmail": "邮件报告",
+ "reportEmail": "邮件发送",
"reportPeriod": "时期",
"reportCustom": "自定义",
"reportToday": "今天",
@@ -413,7 +414,7 @@
"reportMaximumSpeed": "最大速度",
"reportEngineHours": "发动机时间",
"reportDuration": "持续时间",
- "reportStartDate": "Start Date",
+ "reportStartDate": "开始日",
"reportStartTime": "开始时间",
"reportStartAddress": "开始地址",
"reportEndTime": "结束时间",
@@ -451,7 +452,7 @@
"categoryTrolleybus": "无轨电车",
"categoryTruck": "卡车",
"categoryVan": "厢式货车",
- "categoryScooter": "Scooter",
+ "categoryScooter": "小型摩托车",
"maintenanceStart": "开始",
"maintenancePeriod": "时期"
} \ No newline at end of file
diff --git a/web/l10n/zh_TW.json b/web/l10n/zh_TW.json
index e153dac..67012be 100644
--- a/web/l10n/zh_TW.json
+++ b/web/l10n/zh_TW.json
@@ -8,8 +8,8 @@
"sharedEdit": "編輯",
"sharedRemove": "移除",
"sharedRemoveConfirm": "確認要移除嗎?",
- "sharedYes": "Yes",
- "sharedNo": "No",
+ "sharedYes": "是",
+ "sharedNo": "否",
"sharedKm": "公里",
"sharedMi": "英里",
"sharedNmi": "海里",
@@ -31,7 +31,7 @@
"sharedGeofence": "地圖圍籬",
"sharedGeofences": "地圖圍籬",
"sharedNotifications": "通知",
- "sharedNotification": "Notification",
+ "sharedNotification": "通知",
"sharedAttributes": "屬性",
"sharedAttribute": "屬性",
"sharedDrivers": "駕駛",
@@ -42,11 +42,11 @@
"sharedDistance": "距離",
"sharedHourAbbreviation": "時",
"sharedMinuteAbbreviation": "分",
- "sharedSecondAbbreviation": "s",
+ "sharedSecondAbbreviation": "秒",
"sharedVoltAbbreviation": "伏特",
"sharedLiterAbbreviation": "公升",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
+ "sharedGallonAbbreviation": "加侖",
+ "sharedLiter": "升",
"sharedImpGallon": "Imp. Gallon",
"sharedUsGallon": "U.S. Gallon",
"sharedLiterPerHourAbbreviation": "公升/小時",
@@ -65,7 +65,7 @@
"sharedRequired": "必需",
"sharedPreferences": "偏好",
"sharedPermissions": "權限",
- "sharedConnections": "Connections",
+ "sharedConnections": "連線",
"sharedExtra": "更多",
"sharedTypeString": "字串",
"sharedTypeNumber": "整數",
@@ -74,15 +74,15 @@
"sharedInfoTitle": "資訊",
"sharedSavedCommand": "Saved Command",
"sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
+ "sharedNew": "新建",
+ "sharedShowAddress": "顯示地址",
+ "sharedShowDetails": "詳情請見",
+ "sharedDisabled": "關閉",
+ "sharedMaintenance": "維護",
"sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
+ "sharedAlarms": "警告",
+ "sharedLocation": "位置",
+ "sharedImport": "接入",
"attributeSpeedLimit": "速限",
"attributePolylineDistance": "Polyline Distance",
"attributeReportIgnoreOdometer": "報告:忽略里程表",
@@ -132,13 +132,13 @@
"userToken": "簽證",
"loginTitle": "登入",
"loginLanguage": "語言",
- "loginReset": "Reset Password",
+ "loginReset": "密碼重設",
"loginRegister": "註冊",
"loginLogin": "登入",
"loginFailed": "錯誤的電子信箱地址或密碼",
"loginCreated": "已成功註冊新用戶",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
+ "loginResetSuccess": "郵件查詢",
+ "loginUpdateSuccess": "新密碼已重置",
"loginLogout": "登出",
"loginLogo": "標識",
"devicesAndState": "設備與狀態",
@@ -265,6 +265,7 @@
"mapShapeCircle": "圓形",
"mapShapePolyline": "多邊形",
"mapLiveRoutes": "即時路況",
+ "mapCurrentLocation": "當前位置",
"mapPoiLayer": "POI Layer",
"stateTitle": "狀態",
"stateName": "名稱",
@@ -318,7 +319,7 @@
"commandData": "資料",
"commandIndex": "索引",
"commandPhone": "電話號碼",
- "commandServer": "Server",
+ "commandServer": "服務器",
"commandPort": "Port",
"eventAll": "所有事件",
"eventDeviceOnline": "Status online",
@@ -379,7 +380,7 @@
"alarmTampering": "Tampering",
"alarmRemoving": "Removing",
"notificationType": "通知類型",
- "notificationAlways": "All Devices",
+ "notificationAlways": "所有設備",
"notificationNotificators": "Channels",
"notificatorWeb": "Web",
"notificatorMail": "Mail",
@@ -392,14 +393,14 @@
"reportTrips": "旅程",
"reportStops": "站點",
"reportSummary": "摘要",
- "reportDaily": "Daily Summary",
+ "reportDaily": "每日匯報",
"reportChart": "圖表",
"reportConfigure": "設置",
"reportEventTypes": "事件類型",
"reportChartType": "圖表類型",
"reportShowMarkers": "顯示地標",
"reportExport": "匯出",
- "reportEmail": "Email Report",
+ "reportEmail": "郵件發送",
"reportPeriod": "Period",
"reportCustom": "Custom",
"reportToday": "Today",
diff --git a/web/load.js b/web/load.js
index 26a651c..9e9cd8f 100644
--- a/web/load.js
+++ b/web/load.js
@@ -156,36 +156,22 @@
navigator.__defineGetter__('userAgent', function () { return __originalUserAgent.replace(/\/OPR[^)]*/g, ''); });
}
- extjsVersion = '6.2.0';
- olVersion = '6.5.0';
- olLayerSwitcherVersion = '3.8.3';
- proj4jsVersion = '2.6.0';
-
- if (debugMode) {
- addScriptFile('https://cdn.traccar.com/js/extjs/' + extjsVersion + '/ext-all-debug.js');
- addScriptFile('https://cdn.traccar.com/js/extjs/' + extjsVersion + '/packages/charts/classic/charts-debug.js');
- } else {
- addScriptFile('https://cdn.traccar.com/js/extjs/' + extjsVersion + '/ext-all.js');
- addScriptFile('https://cdn.traccar.com/js/extjs/' + extjsVersion + '/packages/charts/classic/charts.js');
- }
- addScriptFile('https://cdn.traccar.com/js/extjs/' + extjsVersion + '/classic/locale/locale-' + locale.languages[locale.language].code + '.js');
+ addScriptFile('lib/extjs/ext-all.js');
+ addScriptFile('lib/extjs/classic/locale/locale-' + locale.languages[locale.language].code + '.js');
- addStyleFile('https://cdn.traccar.com/js/extjs/' + extjsVersion + '/classic/theme-triton/resources/theme-triton-all.css');
- addScriptFile('https://cdn.traccar.com/js/extjs/' + extjsVersion + '/classic/theme-triton/theme-triton.js');
+ addStyleFile('lib/extjs/classic/theme-triton/resources/theme-triton-all.css');
+ addScriptFile('lib/extjs/classic/theme-triton/theme-triton.js');
- addStyleFile('https://cdn.traccar.com/js/extjs/' + extjsVersion + '/packages/charts/classic/triton/resources/charts-all.css');
+ addScriptFile('lib/extjs/packages/charts/classic/charts.js');
+ addStyleFile('lib/extjs/packages/charts/classic/triton/resources/charts-all.css');
- addStyleFile('https://cdn.traccar.com/js/ol/' + olVersion + '/ol.css');
- addScriptFile('https://cdn.traccar.com/js/ol/' + olVersion + '/ol.js');
+ addStyleFile('lib/ol/ol.css');
+ addScriptFile('lib/ol/ol.js');
- addStyleFile('https://cdn.traccar.com/js/ol-layerswitcher/' + olLayerSwitcherVersion + '/ol-layerswitcher.css');
- addScriptFile('https://cdn.traccar.com/js/ol-layerswitcher/' + olLayerSwitcherVersion + '/ol-layerswitcher.js');
+ addStyleFile('lib/ol-layerswitcher/ol-layerswitcher.css');
+ addScriptFile('lib/ol-layerswitcher/ol-layerswitcher.js');
- if (debugMode) {
- addScriptFile('https://cdn.traccar.com/js/proj4js/' + proj4jsVersion + '/proj4-src.js');
- } else {
- addScriptFile('https://cdn.traccar.com/js/proj4js/' + proj4jsVersion + '/proj4.js');
- }
+ addScriptFile('lib/proj4/proj4.js');
window.Images = ['arrow', 'default', 'animal', 'bicycle', 'boat', 'bus', 'car', 'crane', 'helicopter', 'motorcycle',
'offroad', 'person', 'pickup', 'plane', 'ship', 'tractor', 'train', 'tram', 'trolleybus', 'truck', 'van', 'scooter'];