aboutsummaryrefslogtreecommitdiff
path: root/web
diff options
context:
space:
mode:
authorAnton Tananaev <anton@traccar.org>2024-04-06 09:17:52 -0700
committerAnton Tananaev <anton@traccar.org>2024-04-06 09:17:52 -0700
commitb392a4af78e01c8e0f50aad5468e9583675b24be (patch)
tree0a4fd7c4ee020e0829817853469979d4e998a69a /web
parent94cadecda794358a53995c276697919eaf540466 (diff)
downloadtrackermap-web-b392a4af78e01c8e0f50aad5468e9583675b24be.tar.gz
trackermap-web-b392a4af78e01c8e0f50aad5468e9583675b24be.tar.bz2
trackermap-web-b392a4af78e01c8e0f50aad5468e9583675b24be.zip
Move to the legacy folder
Diffstat (limited to 'web')
-rw-r--r--web/app.css62
-rw-r--r--web/app.js21
-rw-r--r--web/app/Application.js246
-rw-r--r--web/app/AttributeFormatter.js311
-rw-r--r--web/app/DeviceImages.js99
-rw-r--r--web/app/GeofenceConverter.js101
-rw-r--r--web/app/Style.js95
-rw-r--r--web/app/controller/Root.js363
-rw-r--r--web/app/model/Attribute.js33
-rw-r--r--web/app/model/Calendar.js34
-rw-r--r--web/app/model/Command.js40
-rw-r--r--web/app/model/ComputedAttribute.js39
-rw-r--r--web/app/model/Device.js64
-rw-r--r--web/app/model/Driver.js35
-rw-r--r--web/app/model/Event.js81
-rw-r--r--web/app/model/Geofence.js40
-rw-r--r--web/app/model/Group.js34
-rw-r--r--web/app/model/KnownAttribute.js35
-rw-r--r--web/app/model/KnownCommand.js34
-rw-r--r--web/app/model/KnownNotification.js32
-rw-r--r--web/app/model/KnownNotificator.js32
-rw-r--r--web/app/model/Maintenance.js41
-rw-r--r--web/app/model/Notification.js40
-rw-r--r--web/app/model/Position.js72
-rw-r--r--web/app/model/ReportStop.js58
-rw-r--r--web/app/model/ReportSummary.js61
-rw-r--r--web/app/model/ReportTrip.js77
-rw-r--r--web/app/model/Server.js88
-rw-r--r--web/app/model/Statistics.js59
-rw-r--r--web/app/model/User.js101
-rw-r--r--web/app/store/AlarmTypes.js34
-rw-r--r--web/app/store/AllCalendars.js30
-rw-r--r--web/app/store/AllCommandTypes.js32
-rw-r--r--web/app/store/AllCommands.js30
-rw-r--r--web/app/store/AllComputedAttributes.js30
-rw-r--r--web/app/store/AllDevices.js29
-rw-r--r--web/app/store/AllDrivers.js30
-rw-r--r--web/app/store/AllGeofences.js29
-rw-r--r--web/app/store/AllGroups.js29
-rw-r--r--web/app/store/AllMaintenances.js30
-rw-r--r--web/app/store/AllNotificationTypes.js32
-rw-r--r--web/app/store/AllNotifications.js29
-rw-r--r--web/app/store/AllNotificators.js32
-rw-r--r--web/app/store/AllTimezones.js798
-rw-r--r--web/app/store/AttributeValueTypes.js33
-rw-r--r--web/app/store/Attributes.js25
-rw-r--r--web/app/store/Calendars.js30
-rw-r--r--web/app/store/CommandTypes.js32
-rw-r--r--web/app/store/Commands.js30
-rw-r--r--web/app/store/CommonDeviceAttributes.js32
-rw-r--r--web/app/store/CommonUserAttributes.js90
-rw-r--r--web/app/store/ComputedAttributes.js30
-rw-r--r--web/app/store/CoordinateFormats.js56
-rw-r--r--web/app/store/DeviceAttributes.js52
-rw-r--r--web/app/store/DeviceCommands.js32
-rw-r--r--web/app/store/DeviceImages.js37
-rw-r--r--web/app/store/DeviceStatuses.js35
-rw-r--r--web/app/store/Devices.js29
-rw-r--r--web/app/store/DistanceUnits.js53
-rw-r--r--web/app/store/Drivers.js30
-rw-r--r--web/app/store/EventPositions.js31
-rw-r--r--web/app/store/Events.js29
-rw-r--r--web/app/store/GeofenceAttributes.js38
-rw-r--r--web/app/store/GeofenceTypes.js32
-rw-r--r--web/app/store/Geofences.js29
-rw-r--r--web/app/store/GroupAttributes.js32
-rw-r--r--web/app/store/Groups.js29
-rw-r--r--web/app/store/HoursUnits.js43
-rw-r--r--web/app/store/KnownCommands.js241
-rw-r--r--web/app/store/Languages.js34
-rw-r--r--web/app/store/LatestPositions.js21
-rw-r--r--web/app/store/MaintenanceTypes.js22
-rw-r--r--web/app/store/Maintenances.js30
-rw-r--r--web/app/store/MapTypes.js56
-rw-r--r--web/app/store/Notifications.js29
-rw-r--r--web/app/store/PositionAttributes.js269
-rw-r--r--web/app/store/Positions.js29
-rw-r--r--web/app/store/ReportChartTypes.js33
-rw-r--r--web/app/store/ReportEventTypes.js26
-rw-r--r--web/app/store/ReportEvents.js35
-rw-r--r--web/app/store/ReportPeriods.js45
-rw-r--r--web/app/store/ReportRoute.js35
-rw-r--r--web/app/store/ReportStops.js36
-rw-r--r--web/app/store/ReportSummary.js36
-rw-r--r--web/app/store/ReportTrips.js36
-rw-r--r--web/app/store/ReportTypes.js44
-rw-r--r--web/app/store/ServerAttributes.js23
-rw-r--r--web/app/store/SpeedUnits.js53
-rw-r--r--web/app/store/Statistics.js26
-rw-r--r--web/app/store/TimeUnits.js44
-rw-r--r--web/app/store/UserAttributes.js70
-rw-r--r--web/app/store/Users.js29
-rw-r--r--web/app/store/VisibleDevices.js22
-rw-r--r--web/app/store/VolumeUnits.js57
-rw-r--r--web/app/view/ArrayListFilter.js50
-rw-r--r--web/app/view/BaseWindow.js32
-rw-r--r--web/app/view/ClearableComboBox.js31
-rw-r--r--web/app/view/ColorPicker.js43
-rw-r--r--web/app/view/CustomNumberField.js109
-rw-r--r--web/app/view/CustomTimeField.js30
-rw-r--r--web/app/view/DeviceMenu.js72
-rw-r--r--web/app/view/DeviceMenuController.js134
-rw-r--r--web/app/view/Events.js117
-rw-r--r--web/app/view/EventsController.js126
-rw-r--r--web/app/view/GridPanel.js34
-rw-r--r--web/app/view/Main.js84
-rw-r--r--web/app/view/MainController.js26
-rw-r--r--web/app/view/MainMobile.js73
-rw-r--r--web/app/view/Report.js115
-rw-r--r--web/app/view/ReportController.js678
-rw-r--r--web/app/view/SettingsMenu.js111
-rw-r--r--web/app/view/SettingsMenuController.js176
-rw-r--r--web/app/view/State.js85
-rw-r--r--web/app/view/StateController.js216
-rw-r--r--web/app/view/Statistics.js93
-rw-r--r--web/app/view/StatisticsController.js29
-rw-r--r--web/app/view/TouchFix62.js48
-rw-r--r--web/app/view/UnescapedTextAreaField.js29
-rw-r--r--web/app/view/UnescapedTextField.js29
-rw-r--r--web/app/view/dialog/Attribute.js65
-rw-r--r--web/app/view/dialog/AttributeController.js126
-rw-r--r--web/app/view/dialog/Base.js32
-rw-r--r--web/app/view/dialog/BaseEdit.js46
-rw-r--r--web/app/view/dialog/BaseEditController.js61
-rw-r--r--web/app/view/dialog/Calendar.js63
-rw-r--r--web/app/view/dialog/CalendarController.js37
-rw-r--r--web/app/view/dialog/ComputedAttribute.js84
-rw-r--r--web/app/view/dialog/ComputedAttributeController.js45
-rw-r--r--web/app/view/dialog/Device.js99
-rw-r--r--web/app/view/dialog/DeviceAccumulators.js55
-rw-r--r--web/app/view/dialog/DeviceAccumulatorsController.js48
-rw-r--r--web/app/view/dialog/DeviceController.js29
-rw-r--r--web/app/view/dialog/Driver.js46
-rw-r--r--web/app/view/dialog/Geofence.js89
-rw-r--r--web/app/view/dialog/GeofenceController.js58
-rw-r--r--web/app/view/dialog/Group.js55
-rw-r--r--web/app/view/dialog/Login.js151
-rw-r--r--web/app/view/dialog/LoginController.js132
-rw-r--r--web/app/view/dialog/Maintenance.js75
-rw-r--r--web/app/view/dialog/MaintenanceController.js65
-rw-r--r--web/app/view/dialog/MapPickerController.js42
-rw-r--r--web/app/view/dialog/Notification.js95
-rw-r--r--web/app/view/dialog/NotificationController.js53
-rw-r--r--web/app/view/dialog/Register.js67
-rw-r--r--web/app/view/dialog/RegisterController.js44
-rw-r--r--web/app/view/dialog/ReportConfig.js136
-rw-r--r--web/app/view/dialog/ReportConfigController.js99
-rw-r--r--web/app/view/dialog/SavedCommand.js83
-rw-r--r--web/app/view/dialog/SavedCommandController.js99
-rw-r--r--web/app/view/dialog/SelectDevice.js59
-rw-r--r--web/app/view/dialog/SelectDeviceController.js45
-rw-r--r--web/app/view/dialog/SendCommand.js98
-rw-r--r--web/app/view/dialog/SendCommandController.js78
-rw-r--r--web/app/view/dialog/Server.js159
-rw-r--r--web/app/view/dialog/User.js211
-rw-r--r--web/app/view/dialog/UserController.js69
-rw-r--r--web/app/view/edit/Attributes.js65
-rw-r--r--web/app/view/edit/AttributesController.js124
-rw-r--r--web/app/view/edit/Calendars.js50
-rw-r--r--web/app/view/edit/CalendarsController.js31
-rw-r--r--web/app/view/edit/ComputedAttributes.js80
-rw-r--r--web/app/view/edit/ComputedAttributesController.js31
-rw-r--r--web/app/view/edit/Devices.js161
-rw-r--r--web/app/view/edit/DevicesController.js139
-rw-r--r--web/app/view/edit/Drivers.js54
-rw-r--r--web/app/view/edit/DriversController.js31
-rw-r--r--web/app/view/edit/Geofences.js63
-rw-r--r--web/app/view/edit/GeofencesController.js30
-rw-r--r--web/app/view/edit/Groups.js109
-rw-r--r--web/app/view/edit/GroupsController.js141
-rw-r--r--web/app/view/edit/Maintenances.js77
-rw-r--r--web/app/view/edit/MaintenancesController.js31
-rw-r--r--web/app/view/edit/Notifications.js111
-rw-r--r--web/app/view/edit/NotificationsController.js31
-rw-r--r--web/app/view/edit/SavedCommands.js65
-rw-r--r--web/app/view/edit/SavedCommandsController.js31
-rw-r--r--web/app/view/edit/Toolbar.js49
-rw-r--r--web/app/view/edit/ToolbarController.js70
-rw-r--r--web/app/view/edit/Users.js156
-rw-r--r--web/app/view/edit/UsersController.js244
-rw-r--r--web/app/view/map/BaseMap.js243
-rw-r--r--web/app/view/map/GeofenceMap.js150
-rw-r--r--web/app/view/map/GeofenceMapController.js85
-rw-r--r--web/app/view/map/Map.js158
-rw-r--r--web/app/view/map/MapController.js101
-rw-r--r--web/app/view/map/MapMarkerController.js687
-rw-r--r--web/app/view/permissions/Base.js37
-rw-r--r--web/app/view/permissions/BaseController.js84
-rw-r--r--web/app/view/permissions/Calendars.js32
-rw-r--r--web/app/view/permissions/ComputedAttributes.js45
-rw-r--r--web/app/view/permissions/Devices.js82
-rw-r--r--web/app/view/permissions/Drivers.js38
-rw-r--r--web/app/view/permissions/Geofences.js43
-rw-r--r--web/app/view/permissions/Groups.js47
-rw-r--r--web/app/view/permissions/Maintenances.js65
-rw-r--r--web/app/view/permissions/Notifications.js78
-rw-r--r--web/app/view/permissions/SavedCommands.js50
-rw-r--r--web/app/view/permissions/Users.js32
-rw-r--r--web/apple-touch-icon.pngbin4003 -> 0 bytes
-rw-r--r--web/beep.wavbin3047 -> 0 bytes
-rw-r--r--web/debug.html16
-rw-r--r--web/favicon.icobin15086 -> 0 bytes
-rw-r--r--web/icon.pngbin7941 -> 0 bytes
-rw-r--r--web/images/animal.svg7
-rw-r--r--web/images/arrow.svg4
-rw-r--r--web/images/bicycle.svg7
-rw-r--r--web/images/boat.svg7
-rw-r--r--web/images/bus.svg7
-rw-r--r--web/images/car.svg7
-rw-r--r--web/images/crane.svg7
-rw-r--r--web/images/default.svg7
-rw-r--r--web/images/helicopter.svg7
-rw-r--r--web/images/motorcycle.svg7
-rw-r--r--web/images/offroad.svg7
-rw-r--r--web/images/person.svg7
-rw-r--r--web/images/pickup.svg7
-rw-r--r--web/images/plane.svg7
-rw-r--r--web/images/scooter.svg7
-rw-r--r--web/images/ship.svg7
-rw-r--r--web/images/tractor.svg7
-rw-r--r--web/images/train.svg7
-rw-r--r--web/images/tram.svg7
-rw-r--r--web/images/trolleybus.svg7
-rw-r--r--web/images/truck.svg7
-rw-r--r--web/images/van.svg7
-rw-r--r--web/l10n/af.json600
-rw-r--r--web/l10n/ar.json600
-rw-r--r--web/l10n/az.json600
-rw-r--r--web/l10n/bg.json600
-rw-r--r--web/l10n/bn.json600
-rw-r--r--web/l10n/ca.json600
-rw-r--r--web/l10n/cs.json600
-rw-r--r--web/l10n/da.json600
-rw-r--r--web/l10n/de.json600
-rw-r--r--web/l10n/el.json600
-rw-r--r--web/l10n/en.json569
-rw-r--r--web/l10n/es.json600
-rw-r--r--web/l10n/fa.json600
-rw-r--r--web/l10n/fi.json600
-rw-r--r--web/l10n/fr.json600
-rw-r--r--web/l10n/gl.json600
-rw-r--r--web/l10n/he.json600
-rw-r--r--web/l10n/hi.json600
-rw-r--r--web/l10n/hr.json600
-rw-r--r--web/l10n/hu.json600
-rw-r--r--web/l10n/id.json600
-rw-r--r--web/l10n/it.json600
-rw-r--r--web/l10n/ja.json600
-rw-r--r--web/l10n/ka.json600
-rw-r--r--web/l10n/kk.json600
-rw-r--r--web/l10n/km.json600
-rw-r--r--web/l10n/ko.json600
-rw-r--r--web/l10n/lo.json600
-rw-r--r--web/l10n/lt.json600
-rw-r--r--web/l10n/lv.json600
-rw-r--r--web/l10n/mk.json600
-rw-r--r--web/l10n/ml.json600
-rw-r--r--web/l10n/mn.json600
-rw-r--r--web/l10n/ms.json600
-rw-r--r--web/l10n/nb.json600
-rw-r--r--web/l10n/ne.json600
-rw-r--r--web/l10n/nl.json600
-rw-r--r--web/l10n/nn.json600
-rw-r--r--web/l10n/pl.json600
-rw-r--r--web/l10n/pt.json600
-rw-r--r--web/l10n/pt_BR.json600
-rw-r--r--web/l10n/ro.json600
-rw-r--r--web/l10n/ru.json600
-rw-r--r--web/l10n/si.json600
-rw-r--r--web/l10n/sk.json600
-rw-r--r--web/l10n/sl.json600
-rw-r--r--web/l10n/sq.json600
-rw-r--r--web/l10n/sr.json600
-rw-r--r--web/l10n/sv.json600
-rw-r--r--web/l10n/ta.json600
-rw-r--r--web/l10n/th.json600
-rw-r--r--web/l10n/tr.json600
-rw-r--r--web/l10n/uk.json600
-rw-r--r--web/l10n/uz.json600
-rw-r--r--web/l10n/vi.json600
-rw-r--r--web/l10n/zh.json600
-rw-r--r--web/l10n/zh_TW.json600
-rw-r--r--web/load.js183
-rw-r--r--web/logo.svg24
-rw-r--r--web/release.html16
-rw-r--r--web/simple/index.html238
286 files changed, 0 insertions, 50188 deletions
diff --git a/web/app.css b/web/app.css
deleted file mode 100644
index f9f28bb9..00000000
--- a/web/app.css
+++ /dev/null
@@ -1,62 +0,0 @@
-.view-color-green {
- background-color: rgba(77, 250, 144, 0.3);
-}
-.view-color-yellow {
- background-color: rgba(250, 190, 77, 0.3);
-}
-.view-color-red {
- background-color: rgba(255, 84, 104, 0.3);
-}
-
-.view-item-disabled {
- opacity: 0.5;
-}
-
-.toolbar-header-style {
- background-color: #5fa2dd !important;
-}
-
-body.x-border-layout-ct, div.x-border-layout-ct {
- background-color: #bbbbbb !important;
-}
-
-.x-fieldset {
- overflow: visible !important; /* workaround for Safari issue */
-}
-
-#update {
- position: absolute;
- width: 100%;
- top: 20px;
- font-weight: bold;
- text-align: center;
-}
-
-#attribution {
- position: absolute;
- bottom: 10px;
- right: 15px;
- font-size: x-small;
-}
-
-#spinner:before {
- content: '';
- box-sizing: border-box;
- position: absolute;
- top: 50%;
- left: 50%;
- width: 60px;
- height: 60px;
- margin-top: -30px;
- margin-left: -30px;
- border-radius: 50%;
- border-top: 6px solid #5fa2dd;
- border-right: 6px solid transparent;
- animation: spinner .6s linear infinite;
-}
-
-@keyframes spinner {
- to {
- transform: rotate(360deg);
- }
-}
diff --git a/web/app.js b/web/app.js
deleted file mode 100644
index cc95b0a9..00000000
--- a/web/app.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.application({
- name: 'Traccar',
- extend: 'Traccar.Application'
-});
diff --git a/web/app/Application.js b/web/app/Application.js
deleted file mode 100644
index dd9210dc..00000000
--- a/web/app/Application.js
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.Application', {
- extend: 'Ext.app.Application',
- name: 'Traccar',
-
- requires: [
- 'Traccar.Style',
- 'Traccar.AttributeFormatter',
- 'Traccar.view.TouchFix62'
- ],
-
- models: [
- 'Server',
- 'User',
- 'Group',
- 'Device',
- 'Position',
- 'Attribute',
- 'Command',
- 'Event',
- 'Geofence',
- 'Notification',
- 'ReportSummary',
- 'ReportTrip',
- 'ReportStop',
- 'Calendar',
- 'KnownAttribute',
- 'Driver',
- 'KnownCommand',
- 'KnownNotification',
- 'Maintenance'
- ],
-
- stores: [
- 'Groups',
- 'Devices',
- 'AllGroups',
- 'AllDevices',
- 'AlarmTypes',
- 'Positions',
- 'LatestPositions',
- 'EventPositions',
- 'Users',
- 'Attributes',
- 'MapTypes',
- 'DistanceUnits',
- 'SpeedUnits',
- 'CoordinateFormats',
- 'CommandTypes',
- 'TimeUnits',
- 'Languages',
- 'Events',
- 'Geofences',
- 'AllGeofences',
- 'Notifications',
- 'AllNotifications',
- 'GeofenceTypes',
- 'ReportRoute',
- 'ReportEvents',
- 'ReportTrips',
- 'ReportStops',
- 'ReportSummary',
- 'ReportTypes',
- 'ReportEventTypes',
- 'ReportChartTypes',
- 'ReportPeriods',
- 'Statistics',
- 'DeviceImages',
- 'Calendars',
- 'AllCalendars',
- 'AllTimezones',
- 'VisibleDevices',
- 'DeviceStatuses',
- 'CommonDeviceAttributes',
- 'DeviceAttributes',
- 'GeofenceAttributes',
- 'GroupAttributes',
- 'ServerAttributes',
- 'CommonUserAttributes',
- 'UserAttributes',
- 'ComputedAttributes',
- 'AllComputedAttributes',
- 'PositionAttributes',
- 'AttributeValueTypes',
- 'Drivers',
- 'AllDrivers',
- 'KnownCommands',
- 'VolumeUnits',
- 'AllCommandTypes',
- 'Commands',
- 'AllCommands',
- 'DeviceCommands',
- 'AllNotificationTypes',
- 'Maintenances',
- 'AllMaintenances',
- 'MaintenanceTypes',
- 'HoursUnits',
- 'AllNotificators'
- ],
-
- controllers: [
- 'Root'
- ],
-
- isMobile: function () {
- return window.matchMedia && window.matchMedia('(max-width: 768px)').matches;
- },
-
- getVehicleFeaturesDisabled: function () {
- return this.getBooleanAttributePreference('ui.disableVehicleFeatures');
- },
-
- getEventString: function (eventType) {
- var key = 'event' + eventType.charAt(0).toUpperCase() + eventType.slice(1);
- return Strings[key] || key;
- },
-
- getNotificatorString: function (eventType) {
- var key = 'notificator' + eventType.charAt(0).toUpperCase() + eventType.slice(1);
- return Strings[key] || key;
- },
-
- showReports: function (show) {
- var rootPanel = Ext.getCmp('rootPanel');
- if (rootPanel) {
- rootPanel.setActiveItem(show ? 1 : 0);
- }
- },
-
- showEvents: function (show) {
- var rootPanel = Ext.getCmp('rootPanel');
- if (rootPanel) {
- rootPanel.setActiveItem(show ? 2 : 0);
- }
- },
-
- updateNotificationToken: function (token) {
- var attributes = Ext.clone(this.user.get('attributes'));
- if (!attributes.notificationTokens || attributes.notificationTokens.indexOf(token) < 0) {
- if (!attributes.notificationTokens) {
- attributes.notificationTokens = token;
- } else {
- attributes.notificationTokens += ',' + token;
- }
- this.user.set('attributes', attributes);
- this.user.save();
- }
- },
-
- setUser: function (data) {
- var reader = Ext.create('Ext.data.reader.Json', {
- model: 'Traccar.model.User'
- });
- this.user = reader.readRecords(data).getRecords()[0];
- },
-
- getUser: function () {
- return this.user;
- },
-
- setServer: function (data) {
- var reader = Ext.create('Ext.data.reader.Json', {
- model: 'Traccar.model.Server'
- });
- this.server = reader.readRecords(data).getRecords()[0];
- },
-
- getServer: function () {
- return this.server;
- },
-
- getPreference: function (key, defaultValue) {
- if (this.getServer().get('forceSettings')) {
- return this.getServer().get(key) || this.getUser().get(key) || defaultValue;
- } else {
- return this.getUser().get(key) || this.getServer().get(key) || defaultValue;
- }
- },
-
- getAttributePreference: function (key, defaultValue) {
- if (this.getServer().get('forceSettings')) {
- return this.getServer().get('attributes')[key] || this.getUser().get('attributes')[key] || defaultValue;
- } else {
- return this.getUser().get('attributes')[key] || this.getServer().get('attributes')[key] || defaultValue;
- }
- },
-
- getBooleanAttributePreference: function (key) {
- return this.getAttributePreference(key, false).toString() === 'true';
- },
-
- getReportColor: function (deviceId) {
- var index, reportColor, device = Ext.getStore('Devices').getById(deviceId);
- if (device) {
- reportColor = device.get('attributes')['web.reportColor'];
- }
- if (reportColor) {
- return reportColor;
- } else {
- index = 0;
- if (deviceId !== undefined) {
- index = deviceId % Traccar.Style.mapRouteColor.length;
- }
- return Traccar.Style.mapRouteColor[index];
- }
- },
-
- showError: function (error) {
- if (Ext.isString(error)) {
- Ext.Msg.alert(Strings.errorTitle, error);
- } else if (error.responseText) {
- Ext.Msg.alert(Strings.errorTitle, Strings.errorGeneral +
- '<br><br><textarea readonly rows="5" style="resize: none; width: 100%;">' +
- error.responseText + '</textarea>');
- } else if (error.statusText) {
- Ext.Msg.alert(Strings.errorTitle, error.statusText);
- } else {
- Ext.Msg.alert(Strings.errorTitle, Strings.errorConnection);
- }
- },
-
- showToast: function (message, title) {
- Ext.toast({
- html: message,
- title: title,
- width: Traccar.Style.toastWidth,
- align: 'br'
- });
- }
-});
diff --git a/web/app/AttributeFormatter.js b/web/app/AttributeFormatter.js
deleted file mode 100644
index d207ef1e..00000000
--- a/web/app/AttributeFormatter.js
+++ /dev/null
@@ -1,311 +0,0 @@
-/*
- * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.AttributeFormatter', {
- singleton: true,
-
- numberFormatterFactory: function (precision, suffix) {
- return function (value) {
- if (value !== undefined) {
- return Number(value.toFixed(precision)) + ' ' + suffix;
- }
- return null;
- };
- },
-
- coordinateFormatter: function (key, value) {
- return Ext.getStore('CoordinateFormats').formatValue(key, value, Traccar.app.getPreference('coordinateFormat'));
- },
-
- speedFormatter: function (value) {
- return Ext.getStore('SpeedUnits').formatValue(value, Traccar.app.getAttributePreference('speedUnit'));
- },
-
- speedConverter: function (value) {
- return Ext.getStore('SpeedUnits').convertValue(value, Traccar.app.getAttributePreference('speedUnit'));
- },
-
- courseFormatter: function (value) {
- var courseValues = ['N', 'NE', 'E', 'SE', 'S', 'SW', 'W', 'NW'];
- return courseValues[Math.floor(value / 45)];
- },
-
- distanceFormatter: function (value) {
- return Ext.getStore('DistanceUnits').formatValue(value, Traccar.app.getAttributePreference('distanceUnit'));
- },
-
- distanceConverter: function (value) {
- return Ext.getStore('DistanceUnits').convertValue(value, Traccar.app.getAttributePreference('distanceUnit'));
- },
-
- volumeFormatter: function (value) {
- return Ext.getStore('VolumeUnits').formatValue(value, Traccar.app.getAttributePreference('volumeUnit'));
- },
-
- volumeConverter: function (value) {
- return Ext.getStore('VolumeUnits').convertValue(value, Traccar.app.getAttributePreference('volumeUnit'));
- },
-
- hoursFormatter: function (value) {
- return Ext.getStore('HoursUnits').formatValue(value, 'h');
- },
-
- hoursConverter: function (value) {
- return Ext.getStore('HoursUnits').convertValue(value, 'h');
- },
-
- durationFormatter: function (value) {
- return Ext.getStore('HoursUnits').formatValue(value, 'h', true);
- },
-
- deviceIdFormatter: function (value) {
- var device, store;
- if (value !== 0) {
- store = Ext.getStore('AllDevices');
- if (store.getTotalCount() === 0) {
- store = Ext.getStore('Devices');
- }
- device = store.getById(value);
- return device ? device.get('name') : '';
- }
- return null;
- },
-
- groupIdFormatter: function (value) {
- var group, store;
- if (value !== 0) {
- store = Ext.getStore('AllGroups');
- if (store.getTotalCount() === 0) {
- store = Ext.getStore('Groups');
- }
- group = store.getById(value);
- return group ? group.get('name') : value;
- }
- return null;
- },
-
- geofenceIdFormatter: function (value) {
- var geofence, store;
- if (value !== 0) {
- store = Ext.getStore('AllGeofences');
- if (store.getTotalCount() === 0) {
- store = Ext.getStore('Geofences');
- }
- geofence = store.getById(value);
- return geofence ? geofence.get('name') : '';
- }
- return null;
- },
-
- calendarIdFormatter: function (value) {
- var calendar, store;
- if (value !== 0) {
- store = Ext.getStore('AllCalendars');
- if (store.getTotalCount() === 0) {
- store = Ext.getStore('Calendars');
- }
- calendar = store.getById(value);
- return calendar ? calendar.get('name') : '';
- }
- return null;
- },
-
- driverUniqueIdFormatter: function (value) {
- var driver, store;
- if (value !== 0) {
- store = Ext.getStore('AllDrivers');
- if (store.getTotalCount() === 0) {
- store = Ext.getStore('Drivers');
- }
- driver = store.findRecord('uniqueId', value, 0, false, true, true);
- return driver ? value + ' (' + driver.get('name') + ')' : value;
- }
- return null;
- },
-
- maintenanceIdFormatter: function (value) {
- var maintenance, store;
- if (value !== 0) {
- store = Ext.getStore('AllMaintenances');
- if (store.getTotalCount() === 0) {
- store = Ext.getStore('Maintenances');
- }
- maintenance = store.getById(value);
- return maintenance ? maintenance.get('name') : '';
- }
- return null;
- },
-
- lastUpdateFormatter: function (value) {
- var seconds, interval;
- if (value) {
- seconds = Math.floor((new Date() - value) / 1000);
- if (seconds < 0) {
- seconds = 0;
- }
- interval = Math.floor(seconds / 86400);
- if (interval > 1) {
- return interval + ' ' + Strings.sharedDays;
- }
- interval = Math.floor(seconds / 3600);
- if (interval > 1) {
- return interval + ' ' + Strings.sharedHours;
- }
- return Math.floor(seconds / 60) + ' ' + Strings.sharedMinutes;
- }
- return null;
- },
-
- commandTypeFormatter: function (value) {
- var name = Strings['command' + value.charAt(0).toUpperCase() + value.slice(1)];
- return name ? name : value;
- },
-
- defaultFormatter: function (value) {
- if (typeof value === 'number') {
- return Number(value.toFixed(Traccar.Style.numberPrecision));
- } else if (typeof value === 'boolean') {
- return value ? Ext.Msg.buttonText.yes : Ext.Msg.buttonText.no;
- } else if (value instanceof Date) {
- if (Traccar.app.getPreference('twelveHourFormat', false)) {
- return Ext.Date.format(value, Traccar.Style.dateTimeFormat12);
- } else {
- return Ext.Date.format(value, Traccar.Style.dateTimeFormat24);
- }
- }
- return value;
- },
-
- dateFormatter: function (value) {
- return Ext.Date.format(value, Traccar.Style.dateFormat);
- },
-
- getFormatter: function (key) {
- var self = this;
-
- switch (key) {
- case 'latitude':
- case 'longitude':
- return function (value) {
- return self.coordinateFormatter(key, value);
- };
- case 'speed':
- return this.speedFormatter;
- case 'course':
- return this.courseFormatter;
- case 'distance':
- case 'accuracy':
- return this.distanceFormatter;
- case 'duration':
- return this.durationFormatter;
- case 'deviceId':
- return this.deviceIdFormatter;
- case 'groupId':
- return this.groupIdFormatter;
- case 'geofenceId':
- return this.geofenceIdFormatter;
- case 'maintenanceId':
- return this.maintenanceIdFormatter;
- case 'calendarId':
- return this.calendarIdFormatter;
- case 'lastUpdate':
- return this.lastUpdateFormatter;
- case 'spentFuel':
- return this.volumeFormatter;
- case 'driverUniqueId':
- return this.driverUniqueIdFormatter;
- case 'commandType':
- return this.commandTypeFormatter;
- default:
- return this.defaultFormatter;
- }
- },
-
- getConverter: function (key) {
- switch (key) {
- case 'speed':
- return this.speedConverter;
- case 'distance':
- case 'accuracy':
- return this.distanceConverter;
- case 'spentFuel':
- return this.volumeConverter;
- default:
- return function (value) {
- return value;
- };
- }
- },
-
- getAttributeFormatter: function (key) {
- var dataType = Ext.getStore('PositionAttributes').getAttributeDataType(key);
-
- switch (dataType) {
- case 'distance':
- return this.distanceFormatter;
- case 'speed':
- return this.speedFormatter;
- case 'driverUniqueId':
- return this.driverUniqueIdFormatter;
- case 'voltage':
- return this.numberFormatterFactory(Traccar.Style.numberPrecision, Strings.sharedVoltAbbreviation);
- case 'percentage':
- return this.numberFormatterFactory(Traccar.Style.numberPrecision, '&#37;');
- case 'temperature':
- return this.numberFormatterFactory(Traccar.Style.numberPrecision, '&deg;C');
- case 'volume':
- return this.volumeFormatter;
- case 'hours':
- return this.hoursFormatter;
- case 'consumption':
- return this.numberFormatterFactory(Traccar.Style.numberPrecision, Strings.sharedLiterPerHourAbbreviation);
- default:
- return this.defaultFormatter;
- }
- },
-
- getAttributeConverter: function (key) {
- var dataType = Ext.getStore('PositionAttributes').getAttributeDataType(key);
-
- switch (dataType) {
- case 'distance':
- return this.distanceConverter;
- case 'speed':
- return this.speedConverter;
- case 'volume':
- return this.volumeConverter;
- case 'hours':
- return this.hoursConverter;
- default:
- return function (value) {
- return value;
- };
- }
- },
-
- renderAttribute: function (value, attribute) {
- if (attribute && attribute.get('dataType') === 'speed') {
- return Ext.getStore('SpeedUnits').formatValue(value, Traccar.app.getAttributePreference('speedUnit', 'kn'), true);
- } else if (attribute && attribute.get('dataType') === 'distance') {
- return Ext.getStore('DistanceUnits').formatValue(value, Traccar.app.getAttributePreference('distanceUnit', 'km'), true);
- } else if (attribute && attribute.get('dataType') === 'hours') {
- return Ext.getStore('HoursUnits').formatValue(value, 'h', true);
- } else {
- return value;
- }
- }
-});
diff --git a/web/app/DeviceImages.js b/web/app/DeviceImages.js
deleted file mode 100644
index af45ce90..00000000
--- a/web/app/DeviceImages.js
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.DeviceImages', {
- singleton: true,
-
- getImageSvg: function (color, zoom, angle, category) {
- var i, info, svg, width, height, rotateTransform, scaleTransform, fill;
-
- info = Ext.getStore('DeviceImages').findRecord('key', category || 'default', 0, false, false, true);
- svg = Ext.clone(info.get('svg'));
- if (!svg) {
- svg = this.cloneDocument(info.get('svg'));
- }
-
- width = parseFloat(svg.documentElement.getAttribute('width'));
- height = parseFloat(svg.documentElement.getAttribute('height'));
-
- fill = info.get('fillId');
- if (!Ext.isArray(fill)) {
- fill = [fill];
- }
- for (i = 0; i < fill.length; i++) {
- svg.getElementById(fill[i]).style.fill = color;
- }
-
- rotateTransform = 'rotate(' + angle + ' ' + width / 2 + ' ' + height / 2 + ')';
- svg.getElementById(info.get('rotateId')).setAttribute('transform', rotateTransform);
-
- if (zoom) {
- width *= Traccar.Style.mapScaleSelected;
- height *= Traccar.Style.mapScaleSelected;
- scaleTransform = 'scale(' + Traccar.Style.mapScaleSelected + ') ';
- } else {
- width *= Traccar.Style.mapScaleNormal;
- height *= Traccar.Style.mapScaleNormal;
- scaleTransform = 'scale(' + Traccar.Style.mapScaleNormal + ') ';
- }
-
- if (info.get('scaleId') !== info.get('rotateId')) {
- svg.getElementById(info.get('scaleId')).setAttribute('transform', scaleTransform);
- } else {
- svg.getElementById(info.get('scaleId')).setAttribute('transform', scaleTransform + ' ' + rotateTransform);
- }
-
- svg.documentElement.setAttribute('width', width);
- svg.documentElement.setAttribute('height', height);
- svg.documentElement.setAttribute('viewBox', '0 0 ' + width + ' ' + height);
-
- return svg;
- },
-
- formatSrc: function (svg) {
- return 'data:image/svg+xml;charset=utf-8,' +
- encodeURIComponent(new XMLSerializer().serializeToString(svg.documentElement));
- },
-
- cloneDocument: function (svgDocument) {
- var newDocument, newNode;
- newDocument = svgDocument.implementation.createDocument(svgDocument.namespaceURI, null, null);
- newNode = newDocument.importNode(svgDocument.documentElement, true);
- newDocument.appendChild(newNode);
- return newDocument;
- },
-
- getImageIcon: function (color, zoom, angle, category) {
- var image, svg, width, height;
-
- svg = this.getImageSvg(color, zoom, angle, category);
- width = parseFloat(svg.documentElement.getAttribute('width'));
- height = parseFloat(svg.documentElement.getAttribute('height'));
-
- image = new ol.style.Icon({
- imgSize: [width, height],
- src: this.formatSrc(svg)
- });
- image.fill = color;
- image.zoom = zoom;
- image.angle = angle;
- image.category = category;
-
- return image;
- }
-});
diff --git a/web/app/GeofenceConverter.js b/web/app/GeofenceConverter.js
deleted file mode 100644
index 688f2233..00000000
--- a/web/app/GeofenceConverter.js
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.GeofenceConverter', {
- singleton: true,
-
- wktToGeometry: function (mapView, wkt) {
- var geometry, projection, resolutionAtEquator, pointResolution, resolutionFactor,
- points = [], center, radius, content, i, lat, lon, coordinates;
- if (wkt.lastIndexOf('POLYGON', 0) === 0) {
- content = wkt.match(/\([^()]+\)/);
- if (content !== null) {
- coordinates = content[0].match(/-?\d+\.?\d*/g);
- if (coordinates !== null) {
- projection = mapView.getProjection();
- for (i = 0; i < coordinates.length; i += 2) {
- lat = Number(coordinates[i]);
- lon = Number(coordinates[i + 1]);
- points.push(ol.proj.transform([lon, lat], 'EPSG:4326', projection));
- }
- geometry = new ol.geom.Polygon([points]);
- }
- }
- } else if (wkt.lastIndexOf('CIRCLE', 0) === 0) {
- content = wkt.match(/\([^()]+\)/);
- if (content !== null) {
- coordinates = content[0].match(/-?\d+\.?\d*/g);
- if (coordinates !== null) {
- projection = mapView.getProjection();
- center = ol.proj.transform([Number(coordinates[1]), Number(coordinates[0])], 'EPSG:4326', projection);
- resolutionAtEquator = mapView.getResolution();
- pointResolution = ol.proj.getPointResolution(projection, resolutionAtEquator, center);
- resolutionFactor = resolutionAtEquator / pointResolution;
- radius = Number(coordinates[2]) / ol.proj.Units.METERS_PER_UNIT.m * resolutionFactor;
- geometry = new ol.geom.Circle(center, radius);
- }
- }
- } else if (wkt.lastIndexOf('LINESTRING', 0) === 0) {
- content = wkt.match(/\([^()]+\)/);
- if (content !== null) {
- coordinates = content[0].match(/-?\d+\.?\d*/g);
- if (coordinates !== null) {
- projection = mapView.getProjection();
- for (i = 0; i < coordinates.length; i += 2) {
- lat = Number(coordinates[i]);
- lon = Number(coordinates[i + 1]);
- points.push(ol.proj.transform([lon, lat], 'EPSG:4326', projection));
- }
- geometry = new ol.geom.LineString(points);
- }
- }
- }
- return geometry;
- },
-
- geometryToWkt: function (projection, geometry) {
- var result, i, center, radius, edgeCoordinate, groundRadius, points;
- if (geometry instanceof ol.geom.Circle) {
- center = geometry.getCenter();
- radius = geometry.getRadius();
- edgeCoordinate = [center[0] + radius, center[1]];
- center = ol.proj.transform(center, projection, 'EPSG:4326');
- groundRadius = ol.sphere.getDistance(
- center, ol.proj.transform(edgeCoordinate, projection, 'EPSG:4326'), 6378137);
- result = 'CIRCLE (';
- result += center[1] + ' ' + center[0] + ', ';
- result += groundRadius.toFixed(1) + ')';
- } else if (geometry instanceof ol.geom.Polygon) {
- geometry.transform(projection, 'EPSG:4326');
- points = geometry.getCoordinates();
- result = 'POLYGON((';
- for (i = 0; i < points[0].length; i += 1) {
- result += points[0][i][1] + ' ' + points[0][i][0] + ', ';
- }
- result = result.substring(0, result.length - 2) + '))';
- } else if (geometry instanceof ol.geom.LineString) {
- geometry.transform(projection, 'EPSG:4326');
- points = geometry.getCoordinates();
- result = 'LINESTRING (';
- for (i = 0; i < points.length; i += 1) {
- result += points[i][1] + ' ' + points[i][0] + ', ';
- }
- result = result.substring(0, result.length - 2) + ')';
- }
- return result;
- }
-});
diff --git a/web/app/Style.js b/web/app/Style.js
deleted file mode 100644
index 371e05a1..00000000
--- a/web/app/Style.js
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.Style', {
- singleton: true,
-
- refreshPeriod: 60 * 1000,
- reconnectTimeout: 60 * 1000,
- reportTimeout: 120 * 1000,
-
- normalPadding: 10,
-
- windowWidth: 800,
- windowHeight: 600,
-
- formFieldWidth: 275,
-
- dateTimeFormat24: 'Y-m-d H:i:s',
- dateTimeFormat12: 'Y-m-d g:i:s a',
- timeFormat24: 'H:i',
- timeFormat12: 'g:i a',
- dateFormat: 'Y-m-d',
- weekStartDay: 1,
-
- deviceWidth: 400,
- toastWidth: 300,
-
- reportHeight: 250,
-
- columnWidthNormal: 100,
-
- mapDefaultLat: 48.8567,
- mapDefaultLon: 2.3508,
- mapDefaultZoom: 4,
-
- mapRouteColor: [
- '#F06292',
- '#BA68C8',
- '#4DD0E1',
- '#4DB6AC',
- '#FF8A65',
- '#A1887F'
- ],
- mapRouteWidth: 5,
-
- mapTextColor: 'rgba(50, 50, 50, 1.0)',
- mapTextStrokeColor: 'rgba(255, 255, 255, 1.0)',
- mapTextStrokeWidth: 2,
- mapTextOffset: 2,
- mapTextFont: 'bold 12px sans-serif',
-
- mapColorOnline: 'rgba(77, 250, 144, 1.0)',
- mapColorUnknown: 'rgba(250, 190, 77, 1.0)',
- mapColorOffline: 'rgba(255, 162, 173, 1.0)',
-
- mapScaleNormal: 1,
- mapScaleSelected: 1.5,
-
- mapMaxZoom: 18,
- mapDelay: 500,
-
- mapAccuracyColor: 'rgba(96, 96, 96, 1.0)',
-
- mapGeofenceTextColor: 'rgba(14, 88, 141, 1.0)',
- mapGeofenceColor: 'rgba(21, 127, 204, 1.0)',
- mapGeofenceOverlayOpacity: 0.2,
- mapGeofenceWidth: 5,
- mapGeofenceRadius: 9,
-
- mapAnimateMarkerDuration: 2000,
- mapAnimateMarkerTimeout: 40,
-
- coordinatePrecision: 6,
- numberPrecision: 2,
-
- reportGridStyle: 'borderTop: 1px solid lightgray',
-
- chartPadding: '20 40 10 10',
- chartMarkerRadius: 3,
- chartMarkerHighlightScaling: 1.5
-});
diff --git a/web/app/controller/Root.js b/web/app/controller/Root.js
deleted file mode 100644
index 22869f45..00000000
--- a/web/app/controller/Root.js
+++ /dev/null
@@ -1,363 +0,0 @@
-/*
- * Copyright 2015 - 2022 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.controller.Root', {
- extend: 'Ext.app.Controller',
- alias: 'controller.root',
-
- requires: [
- 'Traccar.view.dialog.Login',
- 'Traccar.view.Main',
- 'Traccar.view.MainMobile',
- 'Traccar.model.Position'
- ],
-
- init: function () {
- var i, data, attribute, chartTypesStore, maintenanceTypesStore;
- chartTypesStore = Ext.getStore('ReportChartTypes');
- maintenanceTypesStore = Ext.getStore('MaintenanceTypes');
- Ext.state.Manager.setProvider(new Ext.state.CookieProvider());
- data = Ext.getStore('PositionAttributes').getData().items;
- for (i = 0; i < data.length; i++) {
- attribute = data[i];
- Traccar.model.Position.addFields([{
- name: 'attribute.' + attribute.get('key'),
- attributeKey: attribute.get('key'),
- calculate: this.calculateAttribute,
- persist: false
- }]);
- if (attribute.get('valueType') === 'number') {
- chartTypesStore.add({
- key: 'attribute.' + attribute.get('key'),
- name: attribute.get('name')
- });
- maintenanceTypesStore.add(attribute);
- }
- }
- },
-
- calculateAttribute: function (data) {
- var value = data.attributes[this.attributeKey];
- if (value !== undefined) {
- return Traccar.AttributeFormatter.getAttributeConverter(this.attributeKey)(value);
- }
- return value;
- },
-
- onLaunch: function () {
- Ext.Ajax.request({
- scope: this,
- url: 'api/server',
- callback: this.onServerReturn
- });
- },
-
- showAnnouncement: function (announcement) {
- var maxWidth = Ext.getBody().getViewSize().width - 2 * Traccar.Style.normalPadding;
- if (maxWidth > Traccar.Style.windowWidth) {
- maxWidth = Traccar.Style.windowWidth;
- }
- Ext.Msg.show({
- msg: announcement,
- buttons: Ext.Msg.OK,
- closable: false,
- modal: false,
- maxWidth: maxWidth
- }).alignTo(Ext.getBody(), 't-t', [0, Traccar.Style.normalPadding]);
- },
-
- onServerReturn: function (options, success, response) {
- var announcement, token, parameters = {};
- if (success) {
- Traccar.app.setServer(Ext.decode(response.responseText));
- announcement = Traccar.app.getServer().get('announcement');
- if (announcement) {
- this.showAnnouncement(announcement);
- }
- token = Ext.Object.fromQueryString(window.location.search).token;
- if (token) {
- parameters.token = token;
- }
- Ext.Ajax.request({
- scope: this,
- url: 'api/session',
- method: 'GET',
- params: parameters,
- callback: this.onSessionReturn
- });
- } else {
- Traccar.app.showError(response);
- }
- },
-
- onSessionReturn: function (options, success, response) {
- var passwordReset, dialog;
- Ext.get('spinner').setVisible(false);
- if (success) {
- Traccar.app.setUser(Ext.decode(response.responseText));
- this.loadApp();
- } else {
- this.login = Ext.create('widget.login', {
- listeners: {
- scope: this,
- login: this.onLogin
- }
- });
- this.login.show();
-
- passwordReset = Ext.Object.fromQueryString(window.location.search).passwordReset;
- if (passwordReset) {
- dialog = Ext.Msg.prompt(Strings.loginReset, Strings.userPassword, function (btn, text) {
- dialog.textField.inputEl.dom.type = 'text';
- if (btn === 'ok') {
- Ext.Ajax.request({
- scope: this,
- method: 'POST',
- url: 'api/password/update',
- params: {
- token: passwordReset,
- password: text
- },
- callback: function (options, success, response) {
- if (success) {
- Traccar.app.showToast(Strings.loginUpdateSuccess);
- this.removeUrlParameter('passwordReset');
- } else {
- Traccar.app.showError(response.responseText);
- }
- }
- });
- }
- }, this);
- dialog.textField.inputEl.dom.type = 'password';
- }
- }
- },
-
- onLogin: function () {
- this.login.close();
- this.loadApp();
- },
-
- loadApp: function () {
- var updateView, attributionView, eventId;
-
- if (window.webkit && window.webkit.messageHandlers.appInterface) {
- window.webkit.messageHandlers.appInterface.postMessage('login');
- }
- if (window.appInterface) {
- window.appInterface.postMessage('login');
- }
-
- Ext.getStore('Groups').load();
- Ext.getStore('Drivers').load();
- Ext.getStore('Geofences').load();
- Ext.getStore('Calendars').load();
- Ext.getStore('Maintenances').load();
- Ext.getStore('ComputedAttributes').load();
- Ext.getStore('AllCommandTypes').load();
- Ext.getStore('Commands').load();
- Ext.getStore('AllNotificationTypes').load({
- callback: function (records, operation, success) {
- var store = Ext.getStore('ReportEventTypes');
- if (success) {
- store.add({
- type: Traccar.store.ReportEventTypes.allEvents,
- name: Strings.eventAll
- });
- store.loadData(records, true);
- }
- }
- });
- Ext.getStore('AllNotificators').load();
- Ext.getStore('Notifications').load();
-
- Ext.getStore('ServerAttributes').loadData(Ext.getStore('CommonDeviceAttributes').getData().items, true);
- Ext.getStore('ServerAttributes').loadData(Ext.getStore('CommonUserAttributes').getData().items, true);
- Ext.getStore('UserAttributes').loadData(Ext.getStore('CommonUserAttributes').getData().items, true);
- Ext.getStore('DeviceAttributes').loadData(Ext.getStore('CommonDeviceAttributes').getData().items, true);
- Ext.getStore('GroupAttributes').loadData(Ext.getStore('CommonDeviceAttributes').getData().items, true);
-
- Ext.getStore('Devices').load({
- scope: this,
- callback: function () {
- this.asyncUpdate(true);
- }
- });
- updateView = Ext.get('update');
- if (updateView) {
- updateView.remove();
- }
- attributionView = Ext.get('attribution');
- if (attributionView) {
- attributionView.remove();
- }
- if (Traccar.app.isMobile()) {
- Ext.create('widget.mainMobile');
- } else {
- Ext.create('widget.main');
- }
- eventId = Ext.Object.fromQueryString(window.location.search).eventId;
- if (eventId) {
- this.fireEvent('showsingleevent', eventId);
- this.removeUrlParameter('eventId');
- }
- },
-
- beep: function () {
- if (!this.beepSound) {
- this.beepSound = new Audio('beep.wav');
- }
- this.beepSound.play();
- },
-
- soundPressed: function () {
- var soundButton = Ext.getCmp('soundButton');
- return soundButton && soundButton.pressed;
- },
-
- removeUrlParameter: function (param) {
- var params = Ext.Object.fromQueryString(window.location.search);
- delete params[param];
- if (Ext.Object.isEmpty(params)) {
- window.history.pushState(null, null, window.location.pathname);
- } else {
- window.history.pushState(null, null, window.location.pathname + '?' + Ext.Object.toQueryString(params));
- }
- },
-
- asyncUpdate: function (first) {
- var self = this, protocol, pathname, socket;
- protocol = window.location.protocol === 'https:' ? 'wss:' : 'ws:';
- pathname = window.location.pathname.substring(0, window.location.pathname.lastIndexOf('/') + 1);
- socket = new WebSocket(protocol + '//' + window.location.host + pathname + 'api/socket');
-
- socket.onclose = function () {
- Ext.Ajax.request({
- url: 'api/devices',
- success: function (response) {
- self.updateDevices(Ext.decode(response.responseText));
- },
- failure: function (response) {
- if (response.status === 401) {
- window.location.reload();
- }
- }
- });
-
- Ext.Ajax.request({
- url: 'api/positions',
- headers: {
- Accept: 'application/json'
- },
- success: function (response) {
- self.updatePositions(Ext.decode(response.responseText));
- }
- });
-
- setTimeout(function () {
- self.asyncUpdate(false);
- }, Traccar.Style.reconnectTimeout);
- };
-
- socket.onmessage = function (event) {
- var data = Ext.decode(event.data);
-
- if (data.devices) {
- self.updateDevices(data.devices);
- }
- if (data.positions) {
- self.updatePositions(data.positions, first);
- first = false;
- }
- if (data.events) {
- self.updateEvents(data.events);
- }
- };
- },
-
- updateDevices: function (array) {
- var i, store, entity;
- store = Ext.getStore('Devices');
- for (i = 0; i < array.length; i++) {
- entity = store.getById(array[i].id);
- if (entity) {
- entity.set({
- status: array[i].status,
- lastUpdate: array[i].lastUpdate
- }, {
- dirty: false
- });
- }
- }
- },
-
- updatePositions: function (array, first) {
- var i, store, entity, uniqueId, device;
- store = Ext.getStore('LatestPositions');
- for (i = 0; i < array.length; i++) {
- entity = store.findRecord('deviceId', array[i].deviceId, 0, false, false, true);
- if (entity) {
- entity.set(array[i]);
- } else {
- store.add(Ext.create('Traccar.model.Position', array[i]));
- }
- if (Ext.getStore('Events').findRecord('positionId', array[i].id, 0, false, false, true)) {
- Ext.getStore('EventPositions').add(Ext.create('Traccar.model.Position', array[i]));
- }
- }
- if (first) {
- uniqueId = Ext.Object.fromQueryString(window.location.search).deviceId;
- if (uniqueId) {
- device = Ext.getStore('VisibleDevices').findRecord('uniqueId', uniqueId, 0, false, true, true);
- if (device) {
- this.fireEvent('selectdevice', device, true);
- }
- }
- if (!device) {
- this.zoomToAllDevices();
- }
- }
- },
-
- updateEvents: function (array) {
- var i, store, device;
- store = Ext.getStore('Events');
- for (i = 0; i < array.length; i++) {
- store.insert(0, array[i]);
- device = Ext.getStore('Devices').getById(array[i].deviceId);
- if (device) {
- if (this.soundPressed()) {
- this.beep();
- }
- Traccar.app.showToast(array[i].text, device.get('name'));
- } else {
- Traccar.app.showToast(array[i].text);
- }
- }
- },
-
- zoomToAllDevices: function () {
- var lat, lon, zoom;
- lat = Traccar.app.getPreference('latitude', 0);
- lon = Traccar.app.getPreference('longitude', 0);
- zoom = Traccar.app.getPreference('zoom', 0);
- if (lat === 0 && lon === 0 && zoom === 0) {
- this.fireEvent('zoomtoalldevices');
- }
- }
-});
diff --git a/web/app/model/Attribute.js b/web/app/model/Attribute.js
deleted file mode 100644
index b1586a73..00000000
--- a/web/app/model/Attribute.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Attribute', {
- extend: 'Ext.data.Model',
-
- fields: [{
- name: 'priority',
- type: 'int'
- }, {
- name: 'name',
- type: 'string'
- }, {
- name: 'value'
- }, {
- name: 'attribute',
- type: 'string'
- }]
-});
diff --git a/web/app/model/Calendar.js b/web/app/model/Calendar.js
deleted file mode 100644
index 8c44d625..00000000
--- a/web/app/model/Calendar.js
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Calendar', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'name',
- type: 'string'
- }, {
- name: 'data'
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/Command.js b/web/app/model/Command.js
deleted file mode 100644
index f64d2a4b..00000000
--- a/web/app/model/Command.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Command', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'description',
- type: 'string'
- }, {
- name: 'deviceId',
- type: 'int'
- }, {
- name: 'type',
- type: 'string'
- }, {
- name: 'textChannel',
- type: 'boolean'
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/ComputedAttribute.js b/web/app/model/ComputedAttribute.js
deleted file mode 100644
index 16a78ef1..00000000
--- a/web/app/model/ComputedAttribute.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.ComputedAttribute', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'description',
- type: 'string'
- }, {
- name: 'type',
- type: 'string'
- }, {
- name: 'attribute',
- type: 'string'
- }, {
- name: 'expression',
- type: 'string'
- }]
-});
diff --git a/web/app/model/Device.js b/web/app/model/Device.js
deleted file mode 100644
index ca1e07a6..00000000
--- a/web/app/model/Device.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Device', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'name',
- type: 'string'
- }, {
- name: 'uniqueId',
- type: 'string'
- }, {
- name: 'phone',
- type: 'string',
- allowNull: true
- }, {
- name: 'model',
- type: 'string',
- allowNull: true
- }, {
- name: 'contact',
- type: 'string',
- allowNull: true
- }, {
- name: 'category',
- type: 'string',
- allowNull: true
- }, {
- name: 'status',
- type: 'string',
- allowNull: true
- }, {
- name: 'lastUpdate',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'groupId',
- type: 'int'
- }, {
- name: 'disabled',
- type: 'boolean'
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/Driver.js b/web/app/model/Driver.js
deleted file mode 100644
index 3c3b30e5..00000000
--- a/web/app/model/Driver.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Driver', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'name',
- type: 'string'
- }, {
- name: 'uniqueId',
- type: 'string'
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/Event.js b/web/app/model/Event.js
deleted file mode 100644
index d1297dd7..00000000
--- a/web/app/model/Event.js
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Event', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'type',
- type: 'string'
- }, {
- name: 'eventTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'deviceId',
- type: 'int'
- }, {
- name: 'positionId',
- type: 'int'
- }, {
- name: 'geofenceId',
- type: 'int'
- }, {
- name: 'maintenanceId',
- type: 'int'
- }, {
- name: 'text',
- convert: function (v, rec) {
- var text, alarmKey, geofence, maintenance;
- if (rec.get('type') === 'commandResult') {
- text = Strings.eventCommandResult + ': ' + rec.get('attributes')['result'];
- } else if (rec.get('type') === 'alarm') {
- alarmKey = rec.get('attributes')['alarm'];
- alarmKey = 'alarm' + alarmKey.charAt(0).toUpperCase() + alarmKey.slice(1);
- text = Strings[alarmKey] || alarmKey;
- } else if (rec.get('type') === 'textMessage') {
- text = Strings.eventTextMessage + ': ' + rec.get('attributes')['message'];
- } else if (rec.get('type') === 'driverChanged') {
- text = Strings.eventDriverChanged + ': ' +
- Traccar.AttributeFormatter.driverUniqueIdFormatter(rec.get('attributes')['driverUniqueId']);
- } else {
- text = Traccar.app.getEventString(rec.get('type'));
- }
- if (rec.get('geofenceId')) {
- geofence = Ext.getStore('Geofences').getById(rec.get('geofenceId'));
- if (geofence) {
- text += ' "' + geofence.get('name') + '"';
- }
- }
- if (rec.get('maintenanceId')) {
- maintenance = Ext.getStore('Maintenances').getById(rec.get('maintenanceId'));
- if (maintenance) {
- text += ' "' + maintenance.get('name') + '"';
- }
- }
- return text;
- },
- depends: ['type', 'attributes', 'geofenceId', 'maintenanceId']
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/Geofence.js b/web/app/model/Geofence.js
deleted file mode 100644
index 12a9f878..00000000
--- a/web/app/model/Geofence.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Geofence', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'name',
- type: 'string'
- }, {
- name: 'description',
- type: 'string'
- }, {
- name: 'area',
- type: 'string'
- }, {
- name: 'calendarId',
- type: 'int'
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/Group.js b/web/app/model/Group.js
deleted file mode 100644
index 8230fda1..00000000
--- a/web/app/model/Group.js
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Group', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'name',
- type: 'string'
- }, {
- name: 'groupId',
- type: 'int'
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/KnownAttribute.js b/web/app/model/KnownAttribute.js
deleted file mode 100644
index f6f41a73..00000000
--- a/web/app/model/KnownAttribute.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.model.KnownAttribute', {
- extend: 'Ext.data.Model',
- idProperty: 'key',
-
- fields: [{
- name: 'key',
- type: 'string'
- }, {
- name: 'name',
- type: 'string'
- }, {
- name: 'valueType',
- type: 'string'
- }, {
- name: 'dataType',
- type: 'string'
- }]
-});
diff --git a/web/app/model/KnownCommand.js b/web/app/model/KnownCommand.js
deleted file mode 100644
index 06610e32..00000000
--- a/web/app/model/KnownCommand.js
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.model.KnownCommand', {
- extend: 'Ext.data.Model',
- idProperty: 'type',
-
- fields: [{
- name: 'type',
- type: 'string'
- }, {
- name: 'name',
- convert: function (v, rec) {
- return Traccar.AttributeFormatter.getFormatter('commandType')(rec.get('type'));
- },
- depends: ['type']
- }, {
- name: 'parameters'
- }]
-});
diff --git a/web/app/model/KnownNotification.js b/web/app/model/KnownNotification.js
deleted file mode 100644
index f42ef972..00000000
--- a/web/app/model/KnownNotification.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.model.KnownNotification', {
- extend: 'Ext.data.Model',
- idProperty: 'type',
-
- fields: [{
- name: 'type',
- type: 'string'
- }, {
- name: 'name',
- convert: function (v, rec) {
- return Traccar.app.getEventString(rec.get('type'));
- },
- depends: ['type']
- }]
-});
diff --git a/web/app/model/KnownNotificator.js b/web/app/model/KnownNotificator.js
deleted file mode 100644
index 7855a12b..00000000
--- a/web/app/model/KnownNotificator.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.model.KnownNotificator', {
- extend: 'Ext.data.Model',
- idProperty: 'type',
-
- fields: [{
- name: 'type',
- type: 'string'
- }, {
- name: 'name',
- convert: function (v, rec) {
- return Traccar.app.getNotificatorString(rec.get('type'));
- },
- depends: ['type']
- }]
-});
diff --git a/web/app/model/Maintenance.js b/web/app/model/Maintenance.js
deleted file mode 100644
index a0654275..00000000
--- a/web/app/model/Maintenance.js
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Maintenance', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'name',
- type: 'string'
- }, {
- name: 'type',
- type: 'string'
- }, {
- name: 'start',
- type: 'float'
- }, {
- name: 'period',
- type: 'float'
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/Notification.js b/web/app/model/Notification.js
deleted file mode 100644
index fc9d84d7..00000000
--- a/web/app/model/Notification.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Notification', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'type',
- type: 'string'
- }, {
- name: 'always',
- type: 'bool'
- }, {
- name: 'attributes'
- }, {
- name: 'notificators',
- type: 'string'
- }, {
- name: 'calendarId',
- type: 'int'
- }]
-});
diff --git a/web/app/model/Position.js b/web/app/model/Position.js
deleted file mode 100644
index 6db54653..00000000
--- a/web/app/model/Position.js
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Position', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'protocol',
- type: 'string'
- }, {
- name: 'deviceId',
- type: 'int'
- }, {
- name: 'serverTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'deviceTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'fixTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'valid',
- type: 'boolean'
- }, {
- name: 'accuracy',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('accuracy')
- }, {
- name: 'latitude',
- type: 'float'
- }, {
- name: 'longitude',
- type: 'float'
- }, {
- name: 'altitude',
- type: 'float'
- }, {
- name: 'speed',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('speed')
- }, {
- name: 'course',
- type: 'float'
- }, {
- name: 'address',
- type: 'string'
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/ReportStop.js b/web/app/model/ReportStop.js
deleted file mode 100644
index 9aaa58b0..00000000
--- a/web/app/model/ReportStop.js
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.ReportStop', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'deviceId',
- type: 'int'
- }, {
- name: 'deviceName',
- type: 'string'
- }, {
- name: 'duration',
- type: 'int'
- }, {
- name: 'startTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'startOdometer',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('distance')
- }, {
- name: 'address',
- type: 'string'
- }, {
- name: 'endTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'engineHours',
- type: 'int'
- }, {
- name: 'positionId',
- type: 'int'
- }, {
- name: 'spentFuel',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('spentFuel')
- }]
-});
diff --git a/web/app/model/ReportSummary.js b/web/app/model/ReportSummary.js
deleted file mode 100644
index 559ffd41..00000000
--- a/web/app/model/ReportSummary.js
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.ReportSummary', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'deviceId',
- type: 'int'
- }, {
- name: 'deviceName',
- type: 'string'
- }, {
- name: 'startTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'maxSpeed',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('speed')
- }, {
- name: 'averageSpeed',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('speed')
- }, {
- name: 'distance',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('distance')
- }, {
- name: 'startOdometer',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('distance')
- }, {
- name: 'endOdometer',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('distance')
- }, {
- name: 'engineHours',
- type: 'int'
- }, {
- name: 'spentFuel',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('spentFuel')
- }]
-});
diff --git a/web/app/model/ReportTrip.js b/web/app/model/ReportTrip.js
deleted file mode 100644
index 9d45fc87..00000000
--- a/web/app/model/ReportTrip.js
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.ReportTrip', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'deviceId',
- type: 'int'
- }, {
- name: 'deviceName',
- type: 'string'
- }, {
- name: 'maxSpeed',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('speed')
- }, {
- name: 'averageSpeed',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('speed')
- }, {
- name: 'distance',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('distance')
- }, {
- name: 'startOdometer',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('distance')
- }, {
- name: 'endOdometer',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('distance')
- }, {
- name: 'duration',
- type: 'int'
- }, {
- name: 'startTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'startAddress',
- type: 'string'
- }, {
- name: 'endTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'endAddress',
- type: 'string'
- }, {
- name: 'spentFuel',
- type: 'float',
- convert: Traccar.AttributeFormatter.getConverter('spentFuel')
- }, {
- name: 'driverUniqueId',
- type: 'string'
- }, {
- name: 'driverName',
- type: 'string'
- }]
-});
diff --git a/web/app/model/Server.js b/web/app/model/Server.js
deleted file mode 100644
index 177b4fc4..00000000
--- a/web/app/model/Server.js
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Server', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'registration',
- type: 'boolean'
- }, {
- name: 'readonly',
- type: 'boolean'
- }, {
- name: 'deviceReadonly',
- type: 'boolean'
- }, {
- name: 'limitCommands',
- type: 'boolean'
- }, {
- name: 'disableReports',
- type: 'boolean'
- }, {
- name: 'map',
- type: 'string'
- }, {
- name: 'bingKey',
- type: 'string'
- }, {
- name: 'mapUrl',
- type: 'string'
- }, {
- name: 'latitude',
- type: 'float'
- }, {
- name: 'longitude',
- type: 'float'
- }, {
- name: 'zoom',
- type: 'int'
- }, {
- name: 'twelveHourFormat',
- type: 'boolean'
- }, {
- name: 'forceSettings',
- type: 'boolean'
- }, {
- name: 'coordinateFormat',
- type: 'string'
- }, {
- name: 'poiLayer',
- type: 'string'
- }, {
- name: 'announcement',
- type: 'string'
- }, {
- name: 'attributes'
- }],
-
- proxy: {
- type: 'ajax',
- url: 'api/server',
- actionMethods: {
- update: 'PUT'
- },
- writer: {
- type: 'json',
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/model/Statistics.js b/web/app/model/Statistics.js
deleted file mode 100644
index 95280ac4..00000000
--- a/web/app/model/Statistics.js
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.Statistics', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'captureTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'activeUsers',
- type: 'int'
- }, {
- name: 'activeDevices',
- type: 'int'
- }, {
- name: 'requests',
- type: 'int'
- }, {
- name: 'messagesReceived',
- type: 'int'
- }, {
- name: 'messagesStored',
- type: 'int'
- }, {
- name: 'mailSent',
- type: 'int'
- }, {
- name: 'smsSent',
- type: 'int'
- }, {
- name: 'geocoderRequests',
- type: 'int'
- }, {
- name: 'geolocationRequests',
- type: 'int'
- }, {
- name: 'attributes'
- }]
-});
diff --git a/web/app/model/User.js b/web/app/model/User.js
deleted file mode 100644
index 455bca64..00000000
--- a/web/app/model/User.js
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.model.User', {
- extend: 'Ext.data.Model',
- identifier: 'negative',
-
- fields: [{
- name: 'id',
- type: 'int'
- }, {
- name: 'name',
- type: 'string'
- }, {
- name: 'login',
- type: 'string'
- }, {
- name: 'email',
- type: 'string'
- }, {
- name: 'password',
- type: 'string'
- }, {
- name: 'phone',
- type: 'string'
- }, {
- name: 'readonly',
- type: 'boolean'
- }, {
- name: 'administrator',
- type: 'boolean'
- }, {
- name: 'map',
- type: 'string'
- }, {
- name: 'latitude',
- type: 'float'
- }, {
- name: 'longitude',
- type: 'float'
- }, {
- name: 'zoom',
- type: 'int'
- }, {
- name: 'twelveHourFormat',
- type: 'boolean'
- }, {
- name: 'coordinateFormat',
- type: 'string'
- }, {
- name: 'disabled',
- type: 'boolean'
- }, {
- name: 'expirationTime',
- type: 'date',
- dateFormat: 'c'
- }, {
- name: 'deviceLimit',
- type: 'int'
- }, {
- name: 'userLimit',
- type: 'int'
- }, {
- name: 'deviceReadonly',
- type: 'boolean'
- }, {
- name: 'limitCommands',
- type: 'boolean'
- }, {
- name: 'disableReports',
- type: 'boolean'
- }, {
- name: 'poiLayer',
- type: 'string'
- }, {
- name: 'attributes'
- }],
-
- proxy: {
- type: 'rest',
- url: 'api/users',
- writer: {
- type: 'json',
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/AlarmTypes.js b/web/app/store/AlarmTypes.js
deleted file mode 100644
index 1ee7ffe8..00000000
--- a/web/app/store/AlarmTypes.js
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.AlarmTypes', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name'],
-
- data: (function () {
- var key, items = [];
- for (key in Strings) {
- if (Strings.hasOwnProperty(key) && key.lastIndexOf('alarm', 0) === 0) {
- items.push({
- key: key.charAt(5).toLowerCase() + key.slice(6),
- name: Strings[key]
- });
- }
- }
- return items;
- })()
-});
diff --git a/web/app/store/AllCalendars.js b/web/app/store/AllCalendars.js
deleted file mode 100644
index 26557287..00000000
--- a/web/app/store/AllCalendars.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllCalendars', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Calendar',
-
- proxy: {
- type: 'rest',
- url: 'api/calendars',
- extraParams: {
- all: true
- }
- }
-});
diff --git a/web/app/store/AllCommandTypes.js b/web/app/store/AllCommandTypes.js
deleted file mode 100644
index c35f50d9..00000000
--- a/web/app/store/AllCommandTypes.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllCommandTypes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownCommand',
-
- proxy: {
- type: 'rest',
- url: 'api/commands/types',
- listeners: {
- exception: function (proxy, response) {
- Traccar.app.showError(response);
- }
- }
- }
-});
diff --git a/web/app/store/AllCommands.js b/web/app/store/AllCommands.js
deleted file mode 100644
index 7f5e1253..00000000
--- a/web/app/store/AllCommands.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllCommands', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Command',
-
- proxy: {
- type: 'rest',
- url: 'api/commands',
- extraParams: {
- all: true
- }
- }
-});
diff --git a/web/app/store/AllComputedAttributes.js b/web/app/store/AllComputedAttributes.js
deleted file mode 100644
index e63feb14..00000000
--- a/web/app/store/AllComputedAttributes.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllComputedAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.ComputedAttribute',
-
- proxy: {
- type: 'rest',
- url: 'api/attributes/computed',
- extraParams: {
- all: true
- }
- }
-});
diff --git a/web/app/store/AllDevices.js b/web/app/store/AllDevices.js
deleted file mode 100644
index 338e6be7..00000000
--- a/web/app/store/AllDevices.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllDevices', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Device',
-
- proxy: {
- type: 'rest',
- url: 'api/devices',
- extraParams: {
- all: true
- }
- }
-});
diff --git a/web/app/store/AllDrivers.js b/web/app/store/AllDrivers.js
deleted file mode 100644
index 9d723885..00000000
--- a/web/app/store/AllDrivers.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllDrivers', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Driver',
-
- proxy: {
- type: 'rest',
- url: 'api/drivers',
- extraParams: {
- all: true
- }
- }
-});
diff --git a/web/app/store/AllGeofences.js b/web/app/store/AllGeofences.js
deleted file mode 100644
index 4042732b..00000000
--- a/web/app/store/AllGeofences.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllGeofences', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Geofence',
-
- proxy: {
- type: 'rest',
- url: 'api/geofences',
- extraParams: {
- all: true
- }
- }
-});
diff --git a/web/app/store/AllGroups.js b/web/app/store/AllGroups.js
deleted file mode 100644
index ba02e715..00000000
--- a/web/app/store/AllGroups.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllGroups', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Group',
-
- proxy: {
- type: 'rest',
- url: 'api/groups',
- extraParams: {
- all: true
- }
- }
-});
diff --git a/web/app/store/AllMaintenances.js b/web/app/store/AllMaintenances.js
deleted file mode 100644
index 8435ad40..00000000
--- a/web/app/store/AllMaintenances.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllMaintenances', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Maintenance',
-
- proxy: {
- type: 'rest',
- url: 'api/maintenance',
- extraParams: {
- all: true
- }
- }
-});
diff --git a/web/app/store/AllNotificationTypes.js b/web/app/store/AllNotificationTypes.js
deleted file mode 100644
index 63fec1bc..00000000
--- a/web/app/store/AllNotificationTypes.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllNotificationTypes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownNotification',
-
- proxy: {
- type: 'rest',
- url: 'api/notifications/types',
- listeners: {
- exception: function (proxy, response) {
- Traccar.app.showError(response);
- }
- }
- }
-});
diff --git a/web/app/store/AllNotifications.js b/web/app/store/AllNotifications.js
deleted file mode 100644
index a3e59e15..00000000
--- a/web/app/store/AllNotifications.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllNotifications', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Notification',
-
- proxy: {
- type: 'rest',
- url: 'api/notifications',
- extraParams: {
- all: true
- }
- }
-});
diff --git a/web/app/store/AllNotificators.js b/web/app/store/AllNotificators.js
deleted file mode 100644
index d81b02fd..00000000
--- a/web/app/store/AllNotificators.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.AllNotificators', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownNotificator',
-
- proxy: {
- type: 'rest',
- url: 'api/notifications/notificators',
- listeners: {
- exception: function (proxy, response) {
- Traccar.app.showError(response);
- }
- }
- }
-});
diff --git a/web/app/store/AllTimezones.js b/web/app/store/AllTimezones.js
deleted file mode 100644
index 2a7fa371..00000000
--- a/web/app/store/AllTimezones.js
+++ /dev/null
@@ -1,798 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.AllTimezones', {
- extend: 'Ext.data.Store',
- fields: ['key'],
-
- sorters: {
- property: 'key',
- direction: 'ASC'
- },
-
- data: [{
- key: 'Africa/Abidjan'
- }, {
- key: 'Africa/Accra'
- }, {
- key: 'Africa/Bissau'
- }, {
- key: 'Africa/Casablanca'
- }, {
- key: 'Africa/El_Aaiun'
- }, {
- key: 'Africa/Monrovia'
- }, {
- key: 'America/Danmarkshavn'
- }, {
- key: 'Antarctica/Troll'
- }, {
- key: 'Atlantic/Canary'
- }, {
- key: 'Atlantic/Faroe'
- }, {
- key: 'Atlantic/Madeira'
- }, {
- key: 'Atlantic/Reykjavik'
- }, {
- key: 'GMT'
- }, {
- key: 'Etc/GMT'
- }, {
- key: 'Etc/UCT'
- }, {
- key: 'Etc/UTC'
- }, {
- key: 'Europe/Dublin'
- }, {
- key: 'Europe/Lisbon'
- }, {
- key: 'Europe/London'
- }, {
- key: 'WET'
- }, {
- key: 'Africa/Algiers'
- }, {
- key: 'Africa/Ceuta'
- }, {
- key: 'Africa/Lagos'
- }, {
- key: 'Africa/Ndjamena'
- }, {
- key: 'Africa/Tunis'
- }, {
- key: 'Africa/Windhoek'
- }, {
- key: 'CET'
- }, {
- key: 'Etc/GMT-1'
- }, {
- key: 'Europe/Amsterdam'
- }, {
- key: 'Europe/Andorra'
- }, {
- key: 'Europe/Belgrade'
- }, {
- key: 'Europe/Berlin'
- }, {
- key: 'Europe/Brussels'
- }, {
- key: 'Europe/Budapest'
- }, {
- key: 'Europe/Copenhagen'
- }, {
- key: 'Europe/Gibraltar'
- }, {
- key: 'Europe/Luxembourg'
- }, {
- key: 'Europe/Madrid'
- }, {
- key: 'Europe/Malta'
- }, {
- key: 'Europe/Monaco'
- }, {
- key: 'Europe/Oslo'
- }, {
- key: 'Europe/Paris'
- }, {
- key: 'Europe/Prague'
- }, {
- key: 'Europe/Rome'
- }, {
- key: 'Europe/Stockholm'
- }, {
- key: 'Europe/Tirane'
- }, {
- key: 'Europe/Vienna'
- }, {
- key: 'Europe/Warsaw'
- }, {
- key: 'Europe/Zurich'
- }, {
- key: 'MET'
- }, {
- key: 'Africa/Cairo'
- }, {
- key: 'Africa/Johannesburg'
- }, {
- key: 'Africa/Maputo'
- }, {
- key: 'Africa/Tripoli'
- }, {
- key: 'Asia/Amman'
- }, {
- key: 'Asia/Beirut'
- }, {
- key: 'Asia/Damascus'
- }, {
- key: 'Asia/Gaza'
- }, {
- key: 'Asia/Hebron'
- }, {
- key: 'Asia/Jerusalem'
- }, {
- key: 'Asia/Nicosia'
- }, {
- key: 'EET'
- }, {
- key: 'Etc/GMT-2'
- }, {
- key: 'Europe/Athens'
- }, {
- key: 'Europe/Bucharest'
- }, {
- key: 'Europe/Chisinau'
- }, {
- key: 'Europe/Helsinki'
- }, {
- key: 'Europe/Kaliningrad'
- }, {
- key: 'Europe/Kiev'
- }, {
- key: 'Europe/Riga'
- }, {
- key: 'Europe/Sofia'
- }, {
- key: 'Europe/Tallinn'
- }, {
- key: 'Europe/Uzhgorod'
- }, {
- key: 'Europe/Vilnius'
- }, {
- key: 'Europe/Zaporozhye'
- }, {
- key: 'Africa/Khartoum'
- }, {
- key: 'Africa/Nairobi'
- }, {
- key: 'Antarctica/Syowa'
- }, {
- key: 'Asia/Baghdad'
- }, {
- key: 'Asia/Famagusta'
- }, {
- key: 'Asia/Qatar'
- }, {
- key: 'Asia/Riyadh'
- }, {
- key: 'Etc/GMT-3'
- }, {
- key: 'Europe/Istanbul'
- }, {
- key: 'Europe/Kirov'
- }, {
- key: 'Europe/Minsk'
- }, {
- key: 'Europe/Moscow'
- }, {
- key: 'Europe/Simferopol'
- }, {
- key: 'Europe/Volgograd'
- }, {
- key: 'Asia/Tehran'
- }, {
- key: 'Asia/Baku'
- }, {
- key: 'Asia/Dubai'
- }, {
- key: 'Asia/Tbilisi'
- }, {
- key: 'Asia/Yerevan'
- }, {
- key: 'Etc/GMT-4'
- }, {
- key: 'Europe/Astrakhan'
- }, {
- key: 'Europe/Samara'
- }, {
- key: 'Europe/Saratov'
- }, {
- key: 'Europe/Ulyanovsk'
- }, {
- key: 'Indian/Mahe'
- }, {
- key: 'Indian/Mauritius'
- }, {
- key: 'Indian/Reunion'
- }, {
- key: 'Asia/Kabul'
- }, {
- key: 'Antarctica/Mawson'
- }, {
- key: 'Asia/Aqtau'
- }, {
- key: 'Asia/Aqtobe'
- }, {
- key: 'Asia/Ashgabat'
- }, {
- key: 'Asia/Atyrau'
- }, {
- key: 'Asia/Dushanbe'
- }, {
- key: 'Asia/Karachi'
- }, {
- key: 'Asia/Oral'
- }, {
- key: 'Asia/Samarkand'
- }, {
- key: 'Asia/Tashkent'
- }, {
- key: 'Asia/Yekaterinburg'
- }, {
- key: 'Etc/GMT-5'
- }, {
- key: 'Indian/Kerguelen'
- }, {
- key: 'Indian/Maldives'
- }, {
- key: 'Asia/Colombo'
- }, {
- key: 'Asia/Kolkata'
- }, {
- key: 'Asia/Kathmandu'
- }, {
- key: 'Antarctica/Vostok'
- }, {
- key: 'Asia/Almaty'
- }, {
- key: 'Asia/Bishkek'
- }, {
- key: 'Asia/Dhaka'
- }, {
- key: 'Asia/Omsk'
- }, {
- key: 'Asia/Qyzylorda'
- }, {
- key: 'Asia/Thimphu'
- }, {
- key: 'Asia/Urumqi'
- }, {
- key: 'Etc/GMT-6'
- }, {
- key: 'Indian/Chagos'
- }, {
- key: 'Asia/Yangon'
- }, {
- key: 'Indian/Cocos'
- }, {
- key: 'Antarctica/Davis'
- }, {
- key: 'Asia/Bangkok'
- }, {
- key: 'Asia/Barnaul'
- }, {
- key: 'Asia/Ho_Chi_Minh'
- }, {
- key: 'Asia/Hovd'
- }, {
- key: 'Asia/Jakarta'
- }, {
- key: 'Asia/Krasnoyarsk'
- }, {
- key: 'Asia/Novokuznetsk'
- }, {
- key: 'Asia/Novosibirsk'
- }, {
- key: 'Asia/Pontianak'
- }, {
- key: 'Asia/Tomsk'
- }, {
- key: 'Etc/GMT-7'
- }, {
- key: 'Indian/Christmas'
- }, {
- key: 'Asia/Brunei'
- }, {
- key: 'Asia/Choibalsan'
- }, {
- key: 'Asia/Hong_Kong'
- }, {
- key: 'Asia/Irkutsk'
- }, {
- key: 'Asia/Kuala_Lumpur'
- }, {
- key: 'Asia/Kuching'
- }, {
- key: 'Asia/Macau'
- }, {
- key: 'Asia/Makassar'
- }, {
- key: 'Asia/Manila'
- }, {
- key: 'Asia/Shanghai'
- }, {
- key: 'Asia/Singapore'
- }, {
- key: 'Asia/Taipei'
- }, {
- key: 'Asia/Ulaanbaatar'
- }, {
- key: 'Australia/Perth'
- }, {
- key: 'Etc/GMT-8'
- }, {
- key: 'Asia/Pyongyang'
- }, {
- key: 'Australia/Eucla'
- }, {
- key: 'Asia/Chita'
- }, {
- key: 'Asia/Dili'
- }, {
- key: 'Asia/Jayapura'
- }, {
- key: 'Asia/Khandyga'
- }, {
- key: 'Asia/Seoul'
- }, {
- key: 'Asia/Tokyo'
- }, {
- key: 'Asia/Yakutsk'
- }, {
- key: 'Etc/GMT-9'
- }, {
- key: 'Pacific/Palau'
- }, {
- key: 'Australia/Adelaide'
- }, {
- key: 'Australia/Broken_Hill'
- }, {
- key: 'Australia/Darwin'
- }, {
- key: 'Antarctica/DumontDUrville'
- }, {
- key: 'Asia/Ust-Nera'
- }, {
- key: 'Asia/Vladivostok'
- }, {
- key: 'Australia/Brisbane'
- }, {
- key: 'Australia/Currie'
- }, {
- key: 'Australia/Hobart'
- }, {
- key: 'Australia/Lindeman'
- }, {
- key: 'Australia/Melbourne'
- }, {
- key: 'Australia/Sydney'
- }, {
- key: 'Etc/GMT-10'
- }, {
- key: 'Pacific/Chuuk'
- }, {
- key: 'Pacific/Guam'
- }, {
- key: 'Pacific/Port_Moresby'
- }, {
- key: 'Australia/Lord_Howe'
- }, {
- key: 'Antarctica/Casey'
- }, {
- key: 'Antarctica/Macquarie'
- }, {
- key: 'Asia/Magadan'
- }, {
- key: 'Asia/Sakhalin'
- }, {
- key: 'Asia/Srednekolymsk'
- }, {
- key: 'Etc/GMT-11'
- }, {
- key: 'Pacific/Bougainville'
- }, {
- key: 'Pacific/Efate'
- }, {
- key: 'Pacific/Guadalcanal'
- }, {
- key: 'Pacific/Kosrae'
- }, {
- key: 'Pacific/Norfolk'
- }, {
- key: 'Pacific/Noumea'
- }, {
- key: 'Pacific/Pohnpei'
- }, {
- key: 'Asia/Anadyr'
- }, {
- key: 'Asia/Kamchatka'
- }, {
- key: 'Etc/GMT-12'
- }, {
- key: 'Pacific/Auckland'
- }, {
- key: 'Pacific/Fiji'
- }, {
- key: 'Pacific/Funafuti'
- }, {
- key: 'Pacific/Kwajalein'
- }, {
- key: 'Pacific/Majuro'
- }, {
- key: 'Pacific/Nauru'
- }, {
- key: 'Pacific/Tarawa'
- }, {
- key: 'Pacific/Wake'
- }, {
- key: 'Pacific/Wallis'
- }, {
- key: 'Pacific/Chatham'
- }, {
- key: 'Etc/GMT-13'
- }, {
- key: 'Pacific/Apia'
- }, {
- key: 'Pacific/Enderbury'
- }, {
- key: 'Pacific/Fakaofo'
- }, {
- key: 'Pacific/Tongatapu'
- }, {
- key: 'Etc/GMT-14'
- }, {
- key: 'Pacific/Kiritimati'
- }, {
- key: 'America/Scoresbysund'
- }, {
- key: 'Atlantic/Azores'
- }, {
- key: 'Atlantic/Cape_Verde'
- }, {
- key: 'Etc/GMT+1'
- }, {
- key: 'America/Noronha'
- }, {
- key: 'Atlantic/South_Georgia'
- }, {
- key: 'Etc/GMT+2'
- }, {
- key: 'America/Araguaina'
- }, {
- key: 'America/Argentina/Buenos_Aires'
- }, {
- key: 'America/Argentina/Catamarca'
- }, {
- key: 'America/Argentina/Cordoba'
- }, {
- key: 'America/Argentina/Jujuy'
- }, {
- key: 'America/Argentina/La_Rioja'
- }, {
- key: 'America/Argentina/Mendoza'
- }, {
- key: 'America/Argentina/Rio_Gallegos'
- }, {
- key: 'America/Argentina/Salta'
- }, {
- key: 'America/Argentina/San_Juan'
- }, {
- key: 'America/Argentina/San_Luis'
- }, {
- key: 'America/Argentina/Tucuman'
- }, {
- key: 'America/Argentina/Ushuaia'
- }, {
- key: 'America/Bahia'
- }, {
- key: 'America/Belem'
- }, {
- key: 'America/Cayenne'
- }, {
- key: 'America/Fortaleza'
- }, {
- key: 'America/Godthab'
- }, {
- key: 'America/Maceio'
- }, {
- key: 'America/Miquelon'
- }, {
- key: 'America/Montevideo'
- }, {
- key: 'America/Paramaribo'
- }, {
- key: 'America/Recife'
- }, {
- key: 'America/Santarem'
- }, {
- key: 'America/Sao_Paulo'
- }, {
- key: 'Antarctica/Rothera'
- }, {
- key: 'Atlantic/Stanley'
- }, {
- key: 'Etc/GMT+3'
- }, {
- key: 'America/St_Johns'
- }, {
- key: 'America/Asuncion'
- }, {
- key: 'America/Barbados'
- }, {
- key: 'America/Blanc-Sablon'
- }, {
- key: 'America/Boa_Vista'
- }, {
- key: 'America/Campo_Grande'
- }, {
- key: 'America/Caracas'
- }, {
- key: 'America/Cuiaba'
- }, {
- key: 'America/Curacao'
- }, {
- key: 'America/Glace_Bay'
- }, {
- key: 'America/Goose_Bay'
- }, {
- key: 'America/Grand_Turk'
- }, {
- key: 'America/Guyana'
- }, {
- key: 'America/Halifax'
- }, {
- key: 'America/La_Paz'
- }, {
- key: 'America/Manaus'
- }, {
- key: 'America/Martinique'
- }, {
- key: 'America/Moncton'
- }, {
- key: 'America/Port_of_Spain'
- }, {
- key: 'America/Porto_Velho'
- }, {
- key: 'America/Puerto_Rico'
- }, {
- key: 'America/Santiago'
- }, {
- key: 'America/Santo_Domingo'
- }, {
- key: 'America/Thule'
- }, {
- key: 'Antarctica/Palmer'
- }, {
- key: 'Atlantic/Bermuda'
- }, {
- key: 'Etc/GMT+4'
- }, {
- key: 'America/Atikokan'
- }, {
- key: 'America/Bogota'
- }, {
- key: 'America/Cancun'
- }, {
- key: 'America/Detroit'
- }, {
- key: 'America/Eirunepe'
- }, {
- key: 'America/Guayaquil'
- }, {
- key: 'America/Havana'
- }, {
- key: 'America/Indiana/Indianapolis'
- }, {
- key: 'America/Indiana/Marengo'
- }, {
- key: 'America/Indiana/Petersburg'
- }, {
- key: 'America/Indiana/Vevay'
- }, {
- key: 'America/Indiana/Vincennes'
- }, {
- key: 'America/Indiana/Winamac'
- }, {
- key: 'America/Iqaluit'
- }, {
- key: 'America/Jamaica'
- }, {
- key: 'America/Kentucky/Louisville'
- }, {
- key: 'America/Kentucky/Monticello'
- }, {
- key: 'America/Lima'
- }, {
- key: 'America/Nassau'
- }, {
- key: 'America/New_York'
- }, {
- key: 'America/Nipigon'
- }, {
- key: 'America/Panama'
- }, {
- key: 'America/Pangnirtung'
- }, {
- key: 'America/Port-au-Prince'
- }, {
- key: 'America/Rio_Branco'
- }, {
- key: 'America/Thunder_Bay'
- }, {
- key: 'America/Toronto'
- }, {
- key: 'EST'
- }, {
- key: 'EST5EDT'
- }, {
- key: 'Etc/GMT+5'
- }, {
- key: 'America/Bahia_Banderas'
- }, {
- key: 'America/Belize'
- }, {
- key: 'America/Chicago'
- }, {
- key: 'America/Costa_Rica'
- }, {
- key: 'America/El_Salvador'
- }, {
- key: 'America/Guatemala'
- }, {
- key: 'America/Indiana/Knox'
- }, {
- key: 'America/Indiana/Tell_City'
- }, {
- key: 'America/Managua'
- }, {
- key: 'America/Matamoros'
- }, {
- key: 'America/Menominee'
- }, {
- key: 'America/Merida'
- }, {
- key: 'America/Mexico_City'
- }, {
- key: 'America/Monterrey'
- }, {
- key: 'America/North_Dakota/Beulah'
- }, {
- key: 'America/North_Dakota/Center'
- }, {
- key: 'America/North_Dakota/New_Salem'
- }, {
- key: 'America/Rainy_River'
- }, {
- key: 'America/Rankin_Inlet'
- }, {
- key: 'America/Regina'
- }, {
- key: 'America/Resolute'
- }, {
- key: 'America/Swift_Current'
- }, {
- key: 'America/Tegucigalpa'
- }, {
- key: 'America/Winnipeg'
- }, {
- key: 'CST6CDT'
- }, {
- key: 'Etc/GMT+6'
- }, {
- key: 'Pacific/Easter'
- }, {
- key: 'Pacific/Galapagos'
- }, {
- key: 'America/Boise'
- }, {
- key: 'America/Cambridge_Bay'
- }, {
- key: 'America/Chihuahua'
- }, {
- key: 'America/Creston'
- }, {
- key: 'America/Dawson_Creek'
- }, {
- key: 'America/Denver'
- }, {
- key: 'America/Edmonton'
- }, {
- key: 'America/Fort_Nelson'
- }, {
- key: 'America/Hermosillo'
- }, {
- key: 'America/Inuvik'
- }, {
- key: 'America/Mazatlan'
- }, {
- key: 'America/Ojinaga'
- }, {
- key: 'America/Phoenix'
- }, {
- key: 'America/Yellowknife'
- }, {
- key: 'Etc/GMT+7'
- }, {
- key: 'MST'
- }, {
- key: 'MST7MDT'
- }, {
- key: 'America/Dawson'
- }, {
- key: 'America/Los_Angeles'
- }, {
- key: 'America/Tijuana'
- }, {
- key: 'America/Vancouver'
- }, {
- key: 'America/Whitehorse'
- }, {
- key: 'Etc/GMT+8'
- }, {
- key: 'Pacific/Pitcairn'
- }, {
- key: 'PST8PDT'
- }, {
- key: 'America/Anchorage'
- }, {
- key: 'America/Juneau'
- }, {
- key: 'America/Metlakatla'
- }, {
- key: 'America/Nome'
- }, {
- key: 'America/Sitka'
- }, {
- key: 'America/Yakutat'
- }, {
- key: 'Etc/GMT+9'
- }, {
- key: 'Pacific/Gambier'
- }, {
- key: 'Pacific/Marquesas'
- }, {
- key: 'America/Adak'
- }, {
- key: 'Etc/GMT+10'
- }, {
- key: 'HST'
- }, {
- key: 'Pacific/Honolulu'
- }, {
- key: 'Pacific/Rarotonga'
- }, {
- key: 'Pacific/Tahiti'
- }, {
- key: 'Etc/GMT+11'
- }, {
- key: 'Pacific/Niue'
- }, {
- key: 'Pacific/Pago_Pago'
- }, {
- key: 'Etc/GMT+12'
- }]
-});
diff --git a/web/app/store/AttributeValueTypes.js b/web/app/store/AttributeValueTypes.js
deleted file mode 100644
index b80eba39..00000000
--- a/web/app/store/AttributeValueTypes.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.AttributeValueTypes', {
- extend: 'Ext.data.Store',
- fields: ['id', 'name'],
- proxy: 'memory',
-
- data: [{
- id: 'string',
- name: Strings.sharedTypeString
- }, {
- id: 'number',
- name: Strings.sharedTypeNumber
- }, {
- id: 'boolean',
- name: Strings.sharedTypeBoolean
- }]
-});
diff --git a/web/app/store/Attributes.js b/web/app/store/Attributes.js
deleted file mode 100644
index 388fa436..00000000
--- a/web/app/store/Attributes.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Attributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Attribute',
-
- sorters: [{
- property: 'priority'
- }]
-});
diff --git a/web/app/store/Calendars.js b/web/app/store/Calendars.js
deleted file mode 100644
index fa8e5c66..00000000
--- a/web/app/store/Calendars.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Calendars', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Calendar',
-
- proxy: {
- type: 'rest',
- url: 'api/calendars',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/CommandTypes.js b/web/app/store/CommandTypes.js
deleted file mode 100644
index 3b898f2e..00000000
--- a/web/app/store/CommandTypes.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2016 Gabor Somogyi (gabor.g.somogyi@gmail.com)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.CommandTypes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownCommand',
-
- proxy: {
- type: 'rest',
- url: 'api/commands/types',
- listeners: {
- 'exception': function (proxy, response) {
- Traccar.app.showError(response);
- }
- }
- }
-});
diff --git a/web/app/store/Commands.js b/web/app/store/Commands.js
deleted file mode 100644
index 3e5b7604..00000000
--- a/web/app/store/Commands.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Commands', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Command',
-
- proxy: {
- type: 'rest',
- url: 'api/commands',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/CommonDeviceAttributes.js b/web/app/store/CommonDeviceAttributes.js
deleted file mode 100644
index e63daa6b..00000000
--- a/web/app/store/CommonDeviceAttributes.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.CommonDeviceAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownAttribute',
-
- data: [{
- key: 'speedLimit',
- name: Strings.attributeSpeedLimit,
- valueType: 'number',
- dataType: 'speed'
- }, {
- key: 'report.ignoreOdometer',
- name: Strings.attributeReportIgnoreOdometer,
- valueType: 'boolean'
- }]
-});
diff --git a/web/app/store/CommonUserAttributes.js b/web/app/store/CommonUserAttributes.js
deleted file mode 100644
index 0619df22..00000000
--- a/web/app/store/CommonUserAttributes.js
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright 2017 - 2022 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.CommonUserAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownAttribute',
-
- data: [{
- key: 'web.liveRouteLength',
- name: Strings.attributeWebLiveRouteLength,
- valueType: 'number',
- allowDecimals: false
- }, {
- key: 'web.selectZoom',
- name: Strings.attributeWebSelectZoom,
- valueType: 'number',
- allowDecimals: false,
- minValue: Traccar.Style.mapDefaultZoom,
- maxValue: Traccar.Style.mapMaxZoom
- }, {
- key: 'web.maxZoom',
- name: Strings.attributeWebMaxZoom,
- valueType: 'number',
- allowDecimals: false,
- minValue: Traccar.Style.mapDefaultZoom,
- maxValue: Traccar.Style.mapMaxZoom
- }, {
- key: 'ui.disableEvents',
- name: Strings.attributeUiDisableEvents,
- valueType: 'boolean'
- }, {
- key: 'ui.disableVehicleFeatures',
- name: Strings.attributeUiDisableVehicleFeatures,
- valueType: 'boolean'
- }, {
- key: 'ui.disableDrivers',
- name: Strings.attributeUiDisableDrivers,
- valueType: 'boolean'
- }, {
- key: 'ui.disableComputedAttributes',
- name: Strings.attributeUiDisableComputedAttributes,
- valueType: 'boolean'
- }, {
- key: 'ui.disableCalendars',
- name: Strings.attributeUiDisableCalendars,
- valueType: 'boolean'
- }, {
- key: 'ui.disableMaintenance',
- name: Strings.attributeUiDisableMaintenance,
- valueType: 'boolean'
- }, {
- key: 'ui.hidePositionAttributes',
- name: Strings.attributeUiHidePositionAttributes,
- valueType: 'string'
- }, {
- key: 'distanceUnit',
- name: Strings.settingsDistanceUnit,
- valueType: 'string',
- dataType: 'distanceUnit'
- }, {
- key: 'speedUnit',
- name: Strings.settingsSpeedUnit,
- valueType: 'string',
- dataType: 'speedUnit'
- }, {
- key: 'volumeUnit',
- name: Strings.settingsVolumeUnit,
- valueType: 'string',
- dataType: 'volumeUnit'
- }, {
- key: 'timezone',
- name: Strings.sharedTimezone,
- valueType: 'string',
- dataType: 'timezone'
- }]
-});
diff --git a/web/app/store/ComputedAttributes.js b/web/app/store/ComputedAttributes.js
deleted file mode 100644
index 33d78298..00000000
--- a/web/app/store/ComputedAttributes.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ComputedAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.ComputedAttribute',
-
- proxy: {
- type: 'rest',
- url: 'api/attributes/computed',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/CoordinateFormats.js b/web/app/store/CoordinateFormats.js
deleted file mode 100644
index d5db871a..00000000
--- a/web/app/store/CoordinateFormats.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.CoordinateFormats', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name'],
-
- data: [{
- key: 'dd',
- name: Strings.sharedDecimalDegrees
- }, {
- key: 'ddm',
- name: Strings.sharedDegreesDecimalMinutes
- }, {
- key: 'dms',
- name: Strings.sharedDegreesMinutesSeconds
- }],
-
- formatValue: function (key, value, unit) {
- var hemisphere, degrees, minutes, seconds;
- if (key === 'latitude') {
- hemisphere = value >= 0 ? 'N' : 'S';
- } else {
- hemisphere = value >= 0 ? 'E' : 'W';
- }
- switch (unit) {
- case 'ddm':
- value = Math.abs(value);
- degrees = Math.floor(value);
- minutes = (value - degrees) * 60;
- return degrees + '° ' + minutes.toFixed(Traccar.Style.coordinatePrecision) + '\' ' + hemisphere;
- case 'dms':
- value = Math.abs(value);
- degrees = Math.floor(value);
- minutes = Math.floor((value - degrees) * 60);
- seconds = Math.round((value - degrees - minutes / 60) * 3600);
- return degrees + '° ' + minutes + '\' ' + seconds + '" ' + hemisphere;
- default:
- return value.toFixed(Traccar.Style.coordinatePrecision) + '°';
- }
- }
-});
diff --git a/web/app/store/DeviceAttributes.js b/web/app/store/DeviceAttributes.js
deleted file mode 100644
index 45ae6e3d..00000000
--- a/web/app/store/DeviceAttributes.js
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.DeviceAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownAttribute',
-
- data: [{
- key: 'web.reportColor',
- name: Strings.attributeWebReportColor,
- valueType: 'color'
- }, {
- key: 'devicePassword',
- name: Strings.attributeDevicePassword,
- valueType: 'string'
- }, {
- key: 'processing.copyAttributes',
- name: Strings.attributeProcessingCopyAttributes,
- valueType: 'string'
- }, {
- key: 'decoder.timezone',
- name: Strings.sharedTimezone,
- valueType: 'string',
- dataType: 'timezone'
- }, {
- key: 'deviceInactivityStart',
- name: Strings.attributeDeviceInactivityStart,
- valueType: 'number',
- allowDecimals: false,
- minValue: 1
- }, {
- key: 'deviceInactivityPeriod',
- name: Strings.attributeDeviceInactivityPeriod,
- valueType: 'number',
- allowDecimals: false,
- minValue: 1
- }]
-});
diff --git a/web/app/store/DeviceCommands.js b/web/app/store/DeviceCommands.js
deleted file mode 100644
index 7233b3ba..00000000
--- a/web/app/store/DeviceCommands.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.DeviceCommands', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Command',
-
- proxy: {
- type: 'rest',
- url: 'api/commands/send',
- listeners: {
- 'exception': function (proxy, response) {
- Traccar.app.showError(response);
- }
- }
- }
-});
diff --git a/web/app/store/DeviceImages.js b/web/app/store/DeviceImages.js
deleted file mode 100644
index 6f8e8cfd..00000000
--- a/web/app/store/DeviceImages.js
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.DeviceImages', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name', 'svg', 'fillId', 'rotateId', 'scaleId'],
-
- data: (function () {
- var i, key, data = [];
- for (i = 0; i < window.Images.length; i++) {
- key = window.Images[i];
- data.push({
- key: key,
- name: Strings['category' + key.charAt(0).toUpperCase() + key.slice(1)],
- svg: document.getElementById(key + 'Svg').contentDocument,
- fillId: key === 'arrow' ? 'arrow' : 'background',
- rotateId: key === 'arrow' ? 'arrow' : 'background',
- scaleId: key === 'arrow' ? 'arrow' : 'layer1'
- });
- }
- return data;
- })()
-});
diff --git a/web/app/store/DeviceStatuses.js b/web/app/store/DeviceStatuses.js
deleted file mode 100644
index eafba241..00000000
--- a/web/app/store/DeviceStatuses.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.DeviceStatuses', {
- extend: 'Ext.data.Store',
- fields: ['id', 'name', 'color'],
-
- data: [{
- id: 'online',
- name: Strings.deviceStatusOnline,
- color: 'view-color-green'
- }, {
- id: 'offline',
- name: Strings.deviceStatusOffline,
- color: 'view-color-red'
- }, {
- id: 'unknown',
- name: Strings.deviceStatusUnknown,
- color: 'view-color-yellow'
- }]
-});
diff --git a/web/app/store/Devices.js b/web/app/store/Devices.js
deleted file mode 100644
index e69c93fa..00000000
--- a/web/app/store/Devices.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Devices', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Device',
-
- proxy: {
- type: 'rest',
- url: 'api/devices',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/DistanceUnits.js b/web/app/store/DistanceUnits.js
deleted file mode 100644
index e64ce234..00000000
--- a/web/app/store/DistanceUnits.js
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright 2015 - 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.DistanceUnits', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name', 'factor'],
-
- data: [{
- key: 'km',
- name: Strings.sharedKm,
- factor: 0.001
- }, {
- key: 'mi',
- name: Strings.sharedMi,
- factor: 0.000621371
- }, {
- key: 'nmi',
- name: Strings.sharedNmi,
- factor: 0.000539957
- }],
-
- convertValue: function (value, unit, back) {
- var model;
- if (!unit) {
- unit = 'km';
- }
- model = this.findRecord('key', unit);
- return back ? value / model.get('factor') : value * model.get('factor');
- },
-
- formatValue: function (value, unit, convert) {
- var model;
- if (!unit) {
- unit = 'km';
- }
- model = this.findRecord('key', unit);
- return (convert ? this.convertValue(value, unit) : value).toFixed(2) + ' ' + model.get('name');
- }
-});
diff --git a/web/app/store/Drivers.js b/web/app/store/Drivers.js
deleted file mode 100644
index fd4ca203..00000000
--- a/web/app/store/Drivers.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Drivers', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Driver',
-
- proxy: {
- type: 'rest',
- url: 'api/drivers',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/EventPositions.js b/web/app/store/EventPositions.js
deleted file mode 100644
index d984e4b8..00000000
--- a/web/app/store/EventPositions.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.EventPositions', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Position',
-
- trackRemoved: false,
-
- proxy: {
- type: 'rest',
- url: 'api/positions',
- headers: {
- 'Accept': 'application/json'
- }
- }
-});
diff --git a/web/app/store/Events.js b/web/app/store/Events.js
deleted file mode 100644
index cfa0d568..00000000
--- a/web/app/store/Events.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Events', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Event',
-
- trackRemoved: false,
-
- proxy: {
- type: 'rest',
- url: 'api/events'
- }
-});
diff --git a/web/app/store/GeofenceAttributes.js b/web/app/store/GeofenceAttributes.js
deleted file mode 100644
index b1d48c19..00000000
--- a/web/app/store/GeofenceAttributes.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.GeofenceAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownAttribute',
- proxy: 'memory',
-
- data: [{
- key: 'color',
- name: Strings.attributeColor,
- valueType: 'color'
- }, {
- key: 'speedLimit',
- name: Strings.attributeSpeedLimit,
- valueType: 'number',
- dataType: 'speed'
- }, {
- key: 'polylineDistance',
- name: Strings.attributePolylineDistance,
- valueType: 'number',
- dataType: 'distance'
- }]
-});
diff --git a/web/app/store/GeofenceTypes.js b/web/app/store/GeofenceTypes.js
deleted file mode 100644
index 45b79897..00000000
--- a/web/app/store/GeofenceTypes.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.GeofenceTypes', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name'],
-
- data: [{
- key: 'Polygon',
- name: Strings.mapShapePolygon
- }, {
- key: 'Circle',
- name: Strings.mapShapeCircle
- }, {
- key: 'LineString',
- name: Strings.mapShapePolyline
- }]
-});
diff --git a/web/app/store/Geofences.js b/web/app/store/Geofences.js
deleted file mode 100644
index 5a7172be..00000000
--- a/web/app/store/Geofences.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Geofences', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Geofence',
-
- proxy: {
- type: 'rest',
- url: 'api/geofences',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/GroupAttributes.js b/web/app/store/GroupAttributes.js
deleted file mode 100644
index 589e4ec2..00000000
--- a/web/app/store/GroupAttributes.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.GroupAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownAttribute',
-
- data: [{
- key: 'processing.copyAttributes',
- name: Strings.attributeProcessingCopyAttributes,
- valueType: 'string'
- }, {
- key: 'decoder.timezone',
- name: Strings.sharedTimezone,
- valueType: 'string',
- dataType: 'timezone'
- }]
-});
diff --git a/web/app/store/Groups.js b/web/app/store/Groups.js
deleted file mode 100644
index 5f8fa60a..00000000
--- a/web/app/store/Groups.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Groups', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Group',
-
- proxy: {
- type: 'rest',
- url: 'api/groups',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/HoursUnits.js b/web/app/store/HoursUnits.js
deleted file mode 100644
index 02f62c65..00000000
--- a/web/app/store/HoursUnits.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.HoursUnits', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name', 'fullName'],
-
- data: [{
- key: 'h',
- name: Strings.sharedHourAbbreviation,
- fullName: Strings.sharedHour
- }],
-
- convertValue: function (value, unit, back) {
- return back ? value * 3600000 : value / 3600000;
- },
-
- formatValue: function (value, unit, convert) {
- var hours, minutes;
- if (convert) {
- hours = Math.floor(value / 3600000);
- minutes = Math.floor(value % 3600000 / 60000);
- } else {
- hours = Math.floor(value);
- minutes = Math.floor(value % 1 * 60);
- }
- return hours + ' ' + Strings.sharedHourAbbreviation + ' ' + minutes + ' ' + Strings.sharedMinuteAbbreviation;
- }
-});
diff --git a/web/app/store/KnownCommands.js b/web/app/store/KnownCommands.js
deleted file mode 100644
index a6089c48..00000000
--- a/web/app/store/KnownCommands.js
+++ /dev/null
@@ -1,241 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.KnownCommands', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownCommand',
-
- data: [{
- type: 'custom',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'positionPeriodic',
- parameters: [{
- key: 'frequency',
- name: Strings.commandFrequency,
- valueType: 'number',
- allowDecimals: false,
- minValue: 0,
- dataType: 'frequency'
- }]
- }, {
- type: 'setTimezone',
- parameters: [{
- key: 'timezone',
- name: Strings.commandTimezone,
- valueType: 'string',
- dataType: 'timezone'
- }]
- }, {
- type: 'sendSms',
- parameters: [{
- key: 'phone',
- name: Strings.commandPhone,
- valueType: 'string'
- }, {
- key: 'message',
- name: Strings.commandMessage,
- valueType: 'string'
- }]
- }, {
- type: 'message',
- parameters: [{
- key: 'message',
- name: Strings.commandMessage,
- valueType: 'string'
- }]
- }, {
- type: 'sendUssd',
- parameters: [{
- key: 'phone',
- name: Strings.commandPhone,
- valueType: 'string'
- }]
- }, {
- type: 'sosNumber',
- parameters: [{
- key: 'index',
- name: Strings.commandIndex,
- valueType: 'number',
- allowDecimals: false,
- minValue: 0
- }, {
- key: 'phone',
- name: Strings.commandPhone,
- valueType: 'string'
- }]
- }, {
- type: 'silenceTime',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'setPhonebook',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'voiceMessage',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'outputControl',
- parameters: [{
- key: 'index',
- name: Strings.commandIndex,
- valueType: 'number',
- allowDecimals: false,
- minValue: 0
- }, {
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'voiceMonitoring',
- parameters: [{
- key: 'enable',
- name: Strings.commandEnable,
- valueType: 'boolean'
- }]
- }, {
- type: 'setAgps',
- parameters: [{
- key: 'enable',
- name: Strings.commandEnable,
- valueType: 'boolean'
- }]
- }, {
- type: 'setIndicator',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'configuration',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'setConnection',
- parameters: [{
- key: 'server',
- name: Strings.commandServer,
- valueType: 'string'
- }, {
- key: 'port',
- name: Strings.commandPort,
- valueType: 'number',
- allowDecimals: false,
- minValue: 1,
- maxValue: 65535
- }]
- }, {
- type: 'setOdometer',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'modePowerSaving',
- parameters: [{
- key: 'enable',
- name: Strings.commandEnable,
- valueType: 'boolean'
- }]
- }, {
- type: 'modeDeepSleep',
- parameters: [{
- key: 'enable',
- name: Strings.commandEnable,
- valueType: 'boolean'
- }]
- }, {
- type: 'alarmGeofence',
- parameters: [{
- key: 'radius',
- name: Strings.commandRadius,
- valueType: 'number',
- allowDecimals: false,
- minValue: 0
- }]
- }, {
- type: 'alarmBattery',
- parameters: [{
- key: 'enable',
- name: Strings.commandEnable,
- valueType: 'boolean'
- }]
- }, {
- type: 'alarmSos',
- parameters: [{
- key: 'enable',
- name: Strings.commandEnable,
- valueType: 'boolean'
- }]
- }, {
- type: 'alarmRemove',
- parameters: [{
- key: 'enable',
- name: Strings.commandEnable,
- valueType: 'boolean'
- }]
- }, {
- type: 'alarmClock',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'alarmSpeed',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }, {
- type: 'alarmFall',
- parameters: [{
- key: 'enable',
- name: Strings.commandEnable,
- valueType: 'boolean'
- }]
- }, {
- type: 'alarmVibration',
- parameters: [{
- key: 'data',
- name: Strings.commandData,
- valueType: 'string'
- }]
- }]
-});
diff --git a/web/app/store/Languages.js b/web/app/store/Languages.js
deleted file mode 100644
index 32d648e0..00000000
--- a/web/app/store/Languages.js
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Languages', {
- extend: 'Ext.data.Store',
- fields: ['code', 'name'],
-
- data: (function () {
- var code, data = [];
- for (code in Locale.languages) {
- if (Locale.languages.hasOwnProperty(code)) {
- data.push({
- code: code,
- name: Locale.languages[code].name
- });
- }
- }
- return data;
- })()
-});
diff --git a/web/app/store/LatestPositions.js b/web/app/store/LatestPositions.js
deleted file mode 100644
index f7cf5406..00000000
--- a/web/app/store/LatestPositions.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.LatestPositions', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Position'
-});
diff --git a/web/app/store/MaintenanceTypes.js b/web/app/store/MaintenanceTypes.js
deleted file mode 100644
index 468b67ea..00000000
--- a/web/app/store/MaintenanceTypes.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.MaintenanceTypes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownAttribute'
-});
diff --git a/web/app/store/Maintenances.js b/web/app/store/Maintenances.js
deleted file mode 100644
index a7aa4a07..00000000
--- a/web/app/store/Maintenances.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Maintenances', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Maintenance',
-
- proxy: {
- type: 'rest',
- url: 'api/maintenance',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/MapTypes.js b/web/app/store/MapTypes.js
deleted file mode 100644
index f517045d..00000000
--- a/web/app/store/MapTypes.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.MapTypes', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name'],
-
- data: [{
- key: 'locationIqStreets',
- name: Strings.mapLocationIqStreets
- }, {
- key: 'osm',
- name: Strings.mapOsm
- }, {
- key: 'carto',
- name: Strings.mapCarto
- }, {
- key: 'autoNavi',
- name: Strings.mapAutoNavi
- }, {
- key: 'bingRoad',
- name: Strings.mapBingRoad
- }, {
- key: 'bingAerial',
- name: Strings.mapBingAerial
- }, {
- key: 'bingHybrid',
- name: Strings.mapBingHybrid
- }, {
- key: 'yandexMap',
- name: Strings.mapYandexMap
- }, {
- key: 'yandexSat',
- name: Strings.mapYandexSat
- }, {
- key: 'custom',
- name: Strings.mapCustom
- }, {
- key: 'customArcgis',
- name: Strings.mapCustomArcgis
- }]
-});
diff --git a/web/app/store/Notifications.js b/web/app/store/Notifications.js
deleted file mode 100644
index b30505fd..00000000
--- a/web/app/store/Notifications.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Notifications', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Notification',
-
- proxy: {
- type: 'rest',
- url: 'api/notifications',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/PositionAttributes.js b/web/app/store/PositionAttributes.js
deleted file mode 100644
index 5b1206b7..00000000
--- a/web/app/store/PositionAttributes.js
+++ /dev/null
@@ -1,269 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.PositionAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownAttribute',
- proxy: 'memory',
-
- data: [{
- key: 'raw',
- name: Strings.positionRaw,
- valueType: 'string'
- }, {
- key: 'index',
- name: Strings.positionIndex,
- valueType: 'number'
- }, {
- key: 'hdop',
- name: Strings.positionHdop,
- valueType: 'number'
- }, {
- key: 'vdop',
- name: Strings.positionVdop,
- valueType: 'number'
- }, {
- key: 'pdop',
- name: Strings.positionPdop,
- valueType: 'number'
- }, {
- key: 'sat',
- name: Strings.positionSat,
- valueType: 'number'
- }, {
- key: 'satVisible',
- name: Strings.positionSatVisible,
- valueType: 'number'
- }, {
- key: 'rssi',
- name: Strings.positionRssi,
- valueType: 'number'
- }, {
- key: 'gps',
- name: Strings.positionGps,
- valueType: 'number'
- }, {
- key: 'roaming',
- name: Strings.positionRoaming,
- valueType: 'boolean'
- }, {
- key: 'event',
- name: Strings.positionEvent,
- valueType: 'string'
- }, {
- key: 'alarm',
- name: Strings.positionAlarm,
- valueType: 'string'
- }, {
- key: 'status',
- name: Strings.positionStatus,
- valueType: 'string'
- }, {
- key: 'odometer',
- name: Strings.positionOdometer,
- valueType: 'number',
- dataType: 'distance'
- }, {
- key: 'serviceOdometer',
- name: Strings.positionServiceOdometer,
- valueType: 'number',
- dataType: 'distance'
- }, {
- key: 'tripOdometer',
- name: Strings.positionTripOdometer,
- valueType: 'number',
- dataType: 'distance'
- }, {
- key: 'hours',
- name: Strings.positionHours,
- valueType: 'number',
- dataType: 'hours'
- }, {
- key: 'steps',
- name: Strings.positionSteps,
- valueType: 'number'
- }, {
- key: 'input',
- name: Strings.positionInput,
- valueType: 'string'
- }, {
- key: 'output',
- name: Strings.positionOutput,
- valueType: 'string'
- }, {
- key: 'power',
- name: Strings.positionPower,
- valueType: 'number',
- dataType: 'voltage'
- }, {
- key: 'battery',
- name: Strings.positionBattery,
- valueType: 'number',
- dataType: 'voltage'
- }, {
- key: 'batteryLevel',
- name: Strings.positionBatteryLevel,
- valueType: 'number',
- dataType: 'percentage'
- }, {
- key: 'fuel',
- name: Strings.positionFuel,
- valueType: 'number',
- dataType: 'volume'
- }, {
- key: 'fuelConsumption',
- name: Strings.positionFuelConsumption,
- valueType: 'number',
- dataType: 'consumption'
- }, {
- key: 'versionFw',
- name: Strings.positionVersionFw,
- valueType: 'string'
- }, {
- key: 'versionHw',
- name: Strings.positionVersionHw,
- valueType: 'string'
- }, {
- key: 'type',
- name: Strings.sharedType,
- valueType: 'string'
- }, {
- key: 'ignition',
- name: Strings.positionIgnition,
- valueType: 'boolean'
- }, {
- key: 'flags',
- name: Strings.positionFlags,
- valueType: 'string'
- }, {
- key: 'charge',
- name: Strings.positionCharge,
- valueType: 'boolean'
- }, {
- key: 'ip',
- name: Strings.positionIp,
- valueType: 'string'
- }, {
- key: 'archive',
- name: Strings.positionArchive,
- valueType: 'boolean'
- }, {
- key: 'distance',
- name: Strings.positionDistance,
- valueType: 'number',
- dataType: 'distance'
- }, {
- key: 'totalDistance',
- name: Strings.deviceTotalDistance,
- valueType: 'number',
- dataType: 'distance'
- }, {
- key: 'rpm',
- name: Strings.positionRpm,
- valueType: 'number'
- }, {
- key: 'vin',
- name: Strings.positionVin,
- valueType: 'string'
- }, {
- key: 'approximate',
- name: Strings.positionApproximate,
- valueType: 'boolean'
- }, {
- key: 'throttle',
- name: Strings.positionThrottle,
- valueType: 'number'
- }, {
- key: 'motion',
- name: Strings.positionMotion,
- valueType: 'boolean'
- }, {
- key: 'armed',
- name: Strings.positionArmed,
- valueType: 'number'
- }, {
- key: 'geofence',
- name: Strings.sharedGeofence,
- valueType: 'string'
- }, {
- key: 'acceleration',
- name: Strings.positionAcceleration,
- valueType: 'number'
- }, {
- key: 'deviceTemp',
- name: Strings.positionDeviceTemp,
- valueType: 'number',
- dataType: 'temperature'
- }, {
- key: 'operator',
- name: Strings.positionOperator,
- valueType: 'string'
- }, {
- key: 'command',
- name: Strings.deviceCommand,
- valueType: 'string'
- }, {
- key: 'blocked',
- name: Strings.positionBlocked,
- valueType: 'boolean'
- }, {
- key: 'dtcs',
- name: Strings.positionDtcs,
- valueType: 'string'
- }, {
- key: 'obdSpeed',
- name: Strings.positionObdSpeed,
- valueType: 'number',
- dataType: 'speed'
- }, {
- key: 'obdOdometer',
- name: Strings.positionObdOdometer,
- valueType: 'number',
- dataType: 'distance'
- }, {
- key: 'result',
- name: Strings.eventCommandResult,
- valueType: 'string'
- }, {
- key: 'driverUniqueId',
- name: Strings.positionDriverUniqueId,
- valueType: 'string',
- dataType: 'driverUniqueId'
- }],
-
- getAttributeName: function (key, capitalize) {
- var model = this.getById(key);
- if (model) {
- return model.get('name');
- } else if (capitalize) {
- return key.replace(/^./, function (match) {
- return match.toUpperCase();
- });
- } else {
- return key;
- }
- },
-
- getAttributeDataType: function (key) {
- var model = this.getById(key);
- if (model && model.get('dataType')) {
- return model.get('dataType');
- } else {
- return null;
- }
- }
-});
diff --git a/web/app/store/Positions.js b/web/app/store/Positions.js
deleted file mode 100644
index 388a3320..00000000
--- a/web/app/store/Positions.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Positions', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Position',
-
- proxy: {
- type: 'rest',
- url: 'api/positions',
- headers: {
- 'Accept': 'application/json'
- }
- }
-});
diff --git a/web/app/store/ReportChartTypes.js b/web/app/store/ReportChartTypes.js
deleted file mode 100644
index f53d3197..00000000
--- a/web/app/store/ReportChartTypes.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ReportChartTypes', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name'],
-
- data: [{
- key: 'speed',
- name: Strings.positionSpeed
- }, {
- key: 'accuracy',
- name: Strings.positionAccuracy
- }, {
- key: 'altitude',
- name: Strings.positionAltitude
- }]
-});
diff --git a/web/app/store/ReportEventTypes.js b/web/app/store/ReportEventTypes.js
deleted file mode 100644
index 001f159b..00000000
--- a/web/app/store/ReportEventTypes.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ReportEventTypes', {
- extend: 'Ext.data.Store',
- fields: ['type', 'name'],
-
- statics: {
- allEvents: 'allEvents'
- }
-});
diff --git a/web/app/store/ReportEvents.js b/web/app/store/ReportEvents.js
deleted file mode 100644
index 061aaa42..00000000
--- a/web/app/store/ReportEvents.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ReportEvents', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Event',
-
- proxy: {
- type: 'rest',
- url: 'api/reports/events',
- timeout: Traccar.Style.reportTimeout,
- headers: {
- 'Accept': 'application/json'
- },
- listeners: {
- exception: function (proxy, exception) {
- Traccar.app.showError(exception);
- }
- }
- }
-});
diff --git a/web/app/store/ReportPeriods.js b/web/app/store/ReportPeriods.js
deleted file mode 100644
index 542fdce9..00000000
--- a/web/app/store/ReportPeriods.js
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ReportPeriods', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name'],
-
- data: [{
- key: 'custom',
- name: Strings.reportCustom
- }, {
- key: 'today',
- name: Strings.reportToday
- }, {
- key: 'yesterday',
- name: Strings.reportYesterday
- }, {
- key: 'thisWeek',
- name: Strings.reportThisWeek
- }, {
- key: 'previousWeek',
- name: Strings.reportPreviousWeek
- }, {
- key: 'thisMonth',
- name: Strings.reportThisMonth
- }, {
- key: 'previousMonth',
- name: Strings.reportPreviousMonth
- }]
-});
diff --git a/web/app/store/ReportRoute.js b/web/app/store/ReportRoute.js
deleted file mode 100644
index 7babe163..00000000
--- a/web/app/store/ReportRoute.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ReportRoute', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Position',
-
- proxy: {
- type: 'rest',
- url: 'api/reports/route',
- timeout: Traccar.Style.reportTimeout,
- headers: {
- 'Accept': 'application/json'
- },
- listeners: {
- exception: function (proxy, exception) {
- Traccar.app.showError(exception);
- }
- }
- }
-});
diff --git a/web/app/store/ReportStops.js b/web/app/store/ReportStops.js
deleted file mode 100644
index 75c9fc18..00000000
--- a/web/app/store/ReportStops.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ReportStops', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.ReportStop',
-
- proxy: {
- type: 'rest',
- url: 'api/reports/stops',
- timeout: Traccar.Style.reportTimeout,
- headers: {
- 'Accept': 'application/json'
- },
- listeners: {
- exception: function (proxy, exception) {
- Traccar.app.showError(exception);
- }
- }
- }
-});
diff --git a/web/app/store/ReportSummary.js b/web/app/store/ReportSummary.js
deleted file mode 100644
index f328da2d..00000000
--- a/web/app/store/ReportSummary.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ReportSummary', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.ReportSummary',
-
- proxy: {
- type: 'rest',
- url: 'api/reports/summary',
- timeout: Traccar.Style.reportTimeout,
- headers: {
- 'Accept': 'application/json'
- },
- listeners: {
- exception: function (proxy, exception) {
- Traccar.app.showError(exception);
- }
- }
- }
-});
diff --git a/web/app/store/ReportTrips.js b/web/app/store/ReportTrips.js
deleted file mode 100644
index 057cc7c0..00000000
--- a/web/app/store/ReportTrips.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ReportTrips', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.ReportTrip',
-
- proxy: {
- type: 'rest',
- url: 'api/reports/trips',
- timeout: Traccar.Style.reportTimeout,
- headers: {
- 'Accept': 'application/json'
- },
- listeners: {
- exception: function (proxy, exception) {
- Traccar.app.showError(exception);
- }
- }
- }
-});
diff --git a/web/app/store/ReportTypes.js b/web/app/store/ReportTypes.js
deleted file mode 100644
index ceaba9d2..00000000
--- a/web/app/store/ReportTypes.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.ReportTypes', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name'],
-
- data: [{
- key: 'route',
- name: Strings.reportRoute
- }, {
- key: 'events',
- name: Strings.reportEvents
- }, {
- key: 'trips',
- name: Strings.reportTrips
- }, {
- key: 'stops',
- name: Strings.reportStops
- }, {
- key: 'summary',
- name: Strings.reportSummary
- }, {
- key: 'daily',
- name: Strings.reportDaily
- }, {
- key: 'chart',
- name: Strings.reportChart
- }]
-});
diff --git a/web/app/store/ServerAttributes.js b/web/app/store/ServerAttributes.js
deleted file mode 100644
index 204f885b..00000000
--- a/web/app/store/ServerAttributes.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.ServerAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownAttribute',
-
- data: []
-});
diff --git a/web/app/store/SpeedUnits.js b/web/app/store/SpeedUnits.js
deleted file mode 100644
index a36be928..00000000
--- a/web/app/store/SpeedUnits.js
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright 2015 - 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.SpeedUnits', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name', 'factor'],
-
- data: [{
- key: 'kn',
- name: Strings.sharedKn,
- factor: 1
- }, {
- key: 'kmh',
- name: Strings.sharedKmh,
- factor: 1.852
- }, {
- key: 'mph',
- name: Strings.sharedMph,
- factor: 1.15078
- }],
-
- convertValue: function (value, unit, back) {
- var model;
- if (!unit) {
- unit = 'kn';
- }
- model = this.findRecord('key', unit);
- return back ? value / model.get('factor') : value * model.get('factor');
- },
-
- formatValue: function (value, unit, convert) {
- var model;
- if (!unit) {
- unit = 'kn';
- }
- model = this.findRecord('key', unit);
- return (convert ? this.convertValue(value, unit) : value).toFixed(1) + ' ' + model.get('name');
- }
-});
diff --git a/web/app/store/Statistics.js b/web/app/store/Statistics.js
deleted file mode 100644
index 1d44c6e3..00000000
--- a/web/app/store/Statistics.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Statistics', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.Statistics',
-
- proxy: {
- type: 'rest',
- url: 'api/statistics'
- }
-});
diff --git a/web/app/store/TimeUnits.js b/web/app/store/TimeUnits.js
deleted file mode 100644
index 0d16c4bb..00000000
--- a/web/app/store/TimeUnits.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.TimeUnits', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name', 'factor'],
-
- data: [{
- key: 's',
- name: Strings.sharedSecondAbbreviation,
- factor: 1
- }, {
- key: 'm',
- name: Strings.sharedMinuteAbbreviation,
- factor: 60
- }, {
- key: 'h',
- name: Strings.sharedHourAbbreviation,
- factor: 3600
- }],
-
- convertValue: function (value, unit, back) {
- var model;
- if (!unit) {
- unit = 'kn';
- }
- model = this.findRecord('key', unit);
- return back ? value * model.get('factor') : value / model.get('factor');
- }
-});
diff --git a/web/app/store/UserAttributes.js b/web/app/store/UserAttributes.js
deleted file mode 100644
index dfe69421..00000000
--- a/web/app/store/UserAttributes.js
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.store.UserAttributes', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.KnownAttribute',
-
- data: [{
- key: 'mail.smtp.host',
- name: Strings.attributeMailSmtpHost,
- valueType: 'string'
- }, {
- key: 'mail.smtp.port',
- name: Strings.attributeMailSmtpPort,
- valueType: 'number',
- allowDecimals: false,
- minValue: 1,
- maxValue: 65535
- }, {
- key: 'mail.smtp.starttls.enable',
- name: Strings.attributeMailSmtpStarttlsEnable,
- valueType: 'boolean'
- }, {
- key: 'mail.smtp.starttls.required',
- name: Strings.attributeMailSmtpStarttlsRequired,
- valueType: 'boolean'
- }, {
- key: 'mail.smtp.ssl.enable',
- name: Strings.attributeMailSmtpSslEnable,
- valueType: 'boolean'
- }, {
- key: 'mail.smtp.ssl.trust',
- name: Strings.attributeMailSmtpSslTrust,
- valueType: 'string'
- }, {
- key: 'mail.smtp.ssl.protocols',
- name: Strings.attributeMailSmtpSslProtocols,
- valueType: 'string'
- }, {
- key: 'mail.smtp.from',
- name: Strings.attributeMailSmtpFrom,
- valueType: 'string'
- }, {
- key: 'mail.smtp.auth',
- name: Strings.attributeMailSmtpAuth,
- valueType: 'boolean'
- }, {
- key: 'mail.smtp.username',
- name: Strings.attributeMailSmtpUsername,
- valueType: 'string'
- }, {
- key: 'mail.smtp.password',
- name: Strings.attributeMailSmtpPassword,
- valueType: 'string'
- }]
-});
diff --git a/web/app/store/Users.js b/web/app/store/Users.js
deleted file mode 100644
index 0279afea..00000000
--- a/web/app/store/Users.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.Users', {
- extend: 'Ext.data.Store',
- model: 'Traccar.model.User',
-
- proxy: {
- type: 'rest',
- url: 'api/users',
- writer: {
- writeAllFields: true
- }
- }
-});
diff --git a/web/app/store/VisibleDevices.js b/web/app/store/VisibleDevices.js
deleted file mode 100644
index db1ca7da..00000000
--- a/web/app/store/VisibleDevices.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.VisibleDevices', {
- extend: 'Ext.data.ChainedStore',
- source: 'Devices'
-});
diff --git a/web/app/store/VolumeUnits.js b/web/app/store/VolumeUnits.js
deleted file mode 100644
index 2bdf6684..00000000
--- a/web/app/store/VolumeUnits.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.store.VolumeUnits', {
- extend: 'Ext.data.Store',
- fields: ['key', 'name', 'fullName', 'factor'],
-
- data: [{
- key: 'ltr',
- name: Strings.sharedLiterAbbreviation,
- fullName: Strings.sharedLiter,
- factor: 1
- }, {
- key: 'impGal',
- name: Strings.sharedGallonAbbreviation,
- fullName: Strings.sharedImpGallon,
- factor: 4.546
- }, {
- key: 'usGal',
- name: Strings.sharedGallonAbbreviation,
- fullName: Strings.sharedUsGallon,
- factor: 3.785
- }],
-
- convertValue: function (value, unit, back) {
- var model;
- if (!unit) {
- unit = 'ltr';
- }
- model = this.findRecord('key', unit);
- return back ? value * model.get('factor') : value / model.get('factor');
- },
-
- formatValue: function (value, unit, convert) {
- var model;
- if (!unit) {
- unit = 'ltr';
- }
- model = this.findRecord('key', unit);
- return (convert ? this.convertValue(value, unit) : value).toFixed(1) + ' ' + model.get('name');
- }
-});
diff --git a/web/app/view/ArrayListFilter.js b/web/app/view/ArrayListFilter.js
deleted file mode 100644
index 519096eb..00000000
--- a/web/app/view/ArrayListFilter.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.ArrayListFilter', {
- extend: 'Ext.grid.filters.filter.List',
- alias: 'grid.filter.arraylist',
-
- type: 'arraylist',
-
- constructor: function (config) {
- this.callParent([config]);
- this.filter.setFilterFn(function (item) {
- var i, property, value, splits;
- property = item.get(this.getProperty());
- value = this.getValue();
- if (Ext.isArray(property)) {
- for (i = 0; i < property.length; i++) {
- if (value.indexOf(property[i]) !== -1) {
- return true;
- }
- }
- } else if (property.match(/[ ,]+/)) {
- splits = property.split(/[ ,]+/).filter(Boolean);
- for (i = 0; i < splits.length; i++) {
- if (value.indexOf(splits[i]) !== -1) {
- return true;
- }
- }
- } else if (value.indexOf(property) !== -1) {
- return true;
- }
- return false;
- });
- }
-});
diff --git a/web/app/view/BaseWindow.js b/web/app/view/BaseWindow.js
deleted file mode 100644
index bf698e08..00000000
--- a/web/app/view/BaseWindow.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2015 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.BaseWindow', {
- extend: 'Ext.window.Window',
-
- width: Traccar.Style.windowWidth,
- height: Traccar.Style.windowHeight,
- layout: 'fit',
-
- initComponent: function () {
- if (window.innerWidth < Traccar.Style.windowWidth || window.innerHeight < Traccar.Style.windowHeight) {
- this.maximized = true;
- this.style = 'border-width: 0';
- }
- this.callParent();
- }
-});
diff --git a/web/app/view/ClearableComboBox.js b/web/app/view/ClearableComboBox.js
deleted file mode 100644
index cf811d1d..00000000
--- a/web/app/view/ClearableComboBox.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.ClearableComboBox', {
- extend: 'Ext.form.field.ComboBox',
- xtype: 'clearableComboBox',
-
- editable: false,
- triggers: {
- clear: {
- cls: 'iconCls: x-fa fa-times',
- handler: function (button) {
- button.clearValue();
- }
- }
- }
-});
diff --git a/web/app/view/ColorPicker.js b/web/app/view/ColorPicker.js
deleted file mode 100644
index 5de03aa3..00000000
--- a/web/app/view/ColorPicker.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.ColorPicker', {
- extend: 'Ext.form.field.Picker',
- xtype: 'customcolorpicker',
-
- config: {
- value: '#008000'
- },
-
- editable: false,
-
- createPicker: function () {
- return Ext.create('Ext.picker.Color', {
- floating: true,
- picker: this,
- select: function (selColor) {
- this.picker.setValue('#' + selColor);
- this.picker.collapse();
- }
- });
- },
-
- setValue: function (color) {
- this.callParent([color]);
- this.setFieldStyle('background-color:' + color);
- }
-});
diff --git a/web/app/view/CustomNumberField.js b/web/app/view/CustomNumberField.js
deleted file mode 100644
index 8cfac1ee..00000000
--- a/web/app/view/CustomNumberField.js
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.CustomNumberField', {
- extend: 'Ext.form.field.Number',
- xtype: 'customNumberField',
-
- beforeEl: '<div style="width:100%;display:inline-table;">',
- unitEl: '<div id="numberUnitEl" style="display:table-cell;padding-left:10px;vertical-align:middle;width:1px;white-space:nowrap;">',
-
- constructor: function (config) {
- var unitName = '';
- if (config.dataType) {
- config.beforeBodyEl = this.beforeEl;
- switch (config.dataType) {
- case 'speed':
- config.units = {};
- config.units.getStore = function () {
- return Ext.getStore('SpeedUnits');
- };
- config.units.getValue = function () {
- return Traccar.app.getAttributePreference('speedUnit', 'kn');
- };
- unitName = Ext.getStore('SpeedUnits').findRecord('key', config.units.getValue()).get('name');
- break;
- case 'distance':
- config.units = {};
- config.units.getStore = function () {
- return Ext.getStore('DistanceUnits');
- };
- config.units.getValue = function () {
- return Traccar.app.getAttributePreference('distanceUnit', 'km');
- };
- unitName = Ext.getStore('DistanceUnits').findRecord('key', config.units.getValue()).get('name');
- break;
- case 'frequency':
- if (!config.listeners) {
- config.listeners = {};
- }
- config.listeners.afterrender = function () {
- if (!this.units) {
- this.units = Ext.create({
- xtype: 'combobox',
- renderTo: 'numberUnitEl',
- store: 'TimeUnits',
- displayField: 'name',
- valueField: 'key',
- editable: false,
- numberField: this,
- value: 's',
- width: '70px',
- listeners: {
- select: function () {
- this.numberField.step = this.getStore().convertValue(1, this.getValue(), true);
- }
- }
- });
- }
- };
- break;
- case 'hours':
- config.units = {};
- config.units.getStore = function () {
- return Ext.getStore('HoursUnits');
- };
- config.units.getValue = function () {
- return 'h';
- };
- unitName = Strings.sharedHourAbbreviation;
- break;
- default:
- break;
- }
- config.afterBodyEl = this.unitEl + unitName + '</div></div>';
- config.rawToValue = function (rawValue) {
- if (this.units) {
- return this.units.getStore().convertValue(this.parseValue(rawValue), this.units.getValue(), true);
- } else {
- return this.parseValue(rawValue);
- }
- };
- config.valueToRaw = function (value) {
- if (this.units) {
- return String(this.units.getStore().convertValue(value, this.units.getValue(), false));
- } else {
- return String(value);
- }
- };
- if (config.units) {
- config.step = config.units.getStore().convertValue(1, config.units.getValue(), true);
- }
- }
- this.callParent(arguments);
- }
-});
diff --git a/web/app/view/CustomTimeField.js b/web/app/view/CustomTimeField.js
deleted file mode 100644
index c2b44ce1..00000000
--- a/web/app/view/CustomTimeField.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.CustomTimeField', {
- extend: 'Ext.form.field.Time',
- xtype: 'customTimeField',
-
- constructor: function (config) {
- if (Traccar.app.getPreference('twelveHourFormat', false)) {
- config.format = Traccar.Style.timeFormat12;
- } else {
- config.format = Traccar.Style.timeFormat24;
- }
- this.callParent(arguments);
- }
-});
diff --git a/web/app/view/DeviceMenu.js b/web/app/view/DeviceMenu.js
deleted file mode 100644
index 06b272ad..00000000
--- a/web/app/view/DeviceMenu.js
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.DeviceMenu', {
- extend: 'Ext.button.Button',
- xtype: 'deviceMenu',
-
- requires: [
- 'Traccar.view.DeviceMenuController'
- ],
-
- glyph: 'xf013@FontAwesome',
- tooltip: Strings.settingsTitle,
- tooltipType: 'title',
-
- menu: {
- controller: 'deviceMenu',
-
- items: [{
- text: Strings.sharedDrivers,
- glyph: 'xf084@FontAwesome',
- handler: 'onDriversClick',
- reference: 'menuDriversButton'
- }, {
- text: Strings.sharedGeofences,
- glyph: 'xf21d@FontAwesome',
- handler: 'onGeofencesClick',
- reference: 'menuGeofencesButton'
- }, {
- text: Strings.sharedNotifications,
- glyph: 'xf003@FontAwesome',
- handler: 'onNotificationsClick',
- reference: 'menuNotificationsButton'
- }, {
- text: Strings.sharedComputedAttributes,
- glyph: 'xf0ae@FontAwesome',
- handler: 'onComputedAttributesClick',
- reference: 'menuComputedAttributesButton'
- }, {
- text: Strings.sharedSavedCommands,
- glyph: 'xf093@FontAwesome',
- handler: 'onCommandsClick',
- reference: 'menuCommandsButton'
- }, {
- text: Strings.sharedMaintenance,
- glyph: 'xf0ad@FontAwesome',
- handler: 'onMaintenancesClick',
- reference: 'menuMaintenancesButton'
- }, {
- hidden: true,
- text: Strings.sharedDeviceAccumulators,
- glyph: 'xf0e4@FontAwesome',
- handler: 'onDeviceAccumulatorsClick',
- reference: 'menuDeviceAccumulatorsButton'
- }]
- }
-});
diff --git a/web/app/view/DeviceMenuController.js b/web/app/view/DeviceMenuController.js
deleted file mode 100644
index 830ea7ec..00000000
--- a/web/app/view/DeviceMenuController.js
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.DeviceMenuController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.deviceMenu',
-
- requires: [
- 'Traccar.view.permissions.Geofences',
- 'Traccar.view.permissions.Drivers',
- 'Traccar.view.permissions.Notifications',
- 'Traccar.view.edit.ComputedAttributes',
- 'Traccar.view.permissions.SavedCommands',
- 'Traccar.view.permissions.Maintenances',
- 'Traccar.view.dialog.DeviceAccumulators',
- 'Traccar.view.BaseWindow'
- ],
-
- init: function () {
- this.lookupReference('menuDriversButton').setHidden(
- Traccar.app.getVehicleFeaturesDisabled() || Traccar.app.getBooleanAttributePreference('ui.disableDrivers'));
- this.lookupReference('menuComputedAttributesButton').setHidden(
- Traccar.app.getBooleanAttributePreference('ui.disableComputedAttributes'));
- this.lookupReference('menuCommandsButton').setHidden(Traccar.app.getPreference('limitCommands', false));
- this.lookupReference('menuDeviceAccumulatorsButton').setHidden(
- !Traccar.app.getUser().get('administrator') && Traccar.app.getUser().get('userLimit') === 0 || Traccar.app.getVehicleFeaturesDisabled());
- this.lookupReference('menuMaintenancesButton').setHidden(
- Traccar.app.getVehicleFeaturesDisabled() || Traccar.app.getBooleanAttributePreference('ui.disableMaintenance'));
- },
-
- onGeofencesClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedGeofences,
- items: {
- xtype: 'linkGeofencesView',
- baseObjectName: 'deviceId',
- linkObjectName: 'geofenceId',
- storeName: 'Geofences',
- baseObject: this.getView().up('deviceMenu').device.getId()
- }
- }).show();
- },
-
- onNotificationsClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedNotifications,
- items: {
- xtype: 'linkNotificationsView',
- baseObjectName: 'deviceId',
- linkObjectName: 'notificationId',
- storeName: 'Notifications',
- baseObject: this.getView().up('deviceMenu').device.getId()
- }
- }).show();
- },
-
- onComputedAttributesClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedComputedAttributes,
- items: {
- xtype: 'linkComputedAttributesView',
- baseObjectName: 'deviceId',
- linkObjectName: 'attributeId',
- storeName: 'ComputedAttributes',
- baseObject: this.getView().up('deviceMenu').device.getId()
- }
- }).show();
- },
-
- onDriversClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedDrivers,
- items: {
- xtype: 'linkDriversView',
- baseObjectName: 'deviceId',
- linkObjectName: 'driverId',
- storeName: 'Drivers',
- baseObject: this.getView().up('deviceMenu').device.getId()
- }
- }).show();
- },
-
- onCommandsClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedSavedCommands,
- items: {
- xtype: 'linkSavedCommandsView',
- baseObjectName: 'deviceId',
- linkObjectName: 'commandId',
- storeName: 'Commands',
- baseObject: this.getView().up('deviceMenu').device.getId()
- }
- }).show();
- },
-
- onMaintenancesClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedMaintenance,
- items: {
- xtype: 'linkMaintenancesView',
- baseObjectName: 'deviceId',
- linkObjectName: 'maintenanceId',
- storeName: 'Maintenances',
- baseObject: this.getView().up('deviceMenu').device.getId()
- }
- }).show();
- },
-
- onDeviceAccumulatorsClick: function () {
- var position, dialog = Ext.create('Traccar.view.dialog.DeviceAccumulators');
- dialog.deviceId = this.getView().up('deviceMenu').device.getId();
- position = Ext.getStore('LatestPositions').findRecord('deviceId', dialog.deviceId, 0, false, false, true);
- if (position) {
- dialog.lookupReference('totalDistance').setValue(position.get('attributes').totalDistance);
- dialog.lookupReference('hours').setValue(position.get('attributes').hours);
- }
- dialog.show();
- }
-});
diff --git a/web/app/view/Events.js b/web/app/view/Events.js
deleted file mode 100644
index 439de5af..00000000
--- a/web/app/view/Events.js
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.Events', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'eventsView',
-
- requires: [
- 'Traccar.view.EventsController'
- ],
-
- controller: 'events',
-
- store: 'Events',
-
- stateful: true,
- stateId: 'events-grid',
-
- title: Strings.reportEvents,
-
- sortableColumns: false,
-
- header: false,
-
- tbar: {
- componentCls: 'toolbar-header-style',
- defaults: {
- xtype: 'button',
- tooltipType: 'title',
- stateEvents: ['toggle'],
- enableToggle: true,
- stateful: {
- pressed: true
- }
- },
- items: [{
- xtype: 'tbtext',
- html: Strings.reportEvents,
- baseCls: 'x-panel-header-title-default'
- }, {
- xtype: 'tbfill'
- }, {
- glyph: 'xf063@FontAwesome',
- pressed: true,
- toggleHandler: 'onScrollToLastClick',
- stateId: 'events-scroll-to-last-button',
- tooltip: Strings.eventsScrollToLast,
- reference: 'scrollToLastButton'
- }, {
- id: 'soundButton',
- glyph: 'xf0a2@FontAwesome',
- tooltip: Strings.sharedSound,
- stateId: 'sound-button'
- }, {
- glyph: 'xf014@FontAwesome',
- tooltip: Strings.sharedRemove,
- handler: 'onRemoveClick',
- reference: 'removeEventButton',
- disabled: true,
- stateful: false,
- enableToggle: false
- }, {
- glyph: 'xf1f8@FontAwesome',
- tooltip: Strings.reportClear,
- handler: 'onClearClick',
- stateful: false,
- enableToggle: false
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedHide,
- handler: 'onHideEvents',
- reference: 'hideEventsButton',
- hidden: true,
- stateful: false,
- enableToggle: false
- }]
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedDevice,
- dataIndex: 'deviceId',
- renderer: Traccar.AttributeFormatter.getFormatter('deviceId')
- }, {
- flex: 2,
- text: Strings.positionEvent,
- dataIndex: 'text'
- }, {
- text: Strings.positionFixTime,
- dataIndex: 'eventTime',
- renderer: Traccar.AttributeFormatter.getFormatter('eventTime')
- }]
- }
-});
diff --git a/web/app/view/EventsController.js b/web/app/view/EventsController.js
deleted file mode 100644
index e11b4ff6..00000000
--- a/web/app/view/EventsController.js
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.EventsController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.events',
-
- config: {
- listen: {
- controller: {
- '*': {
- selectdevice: 'deselectEvent',
- selectreport: 'deselectEvent'
- },
- 'map': {
- deselectfeature: 'deselectFeature'
- }
- },
- store: {
- '#Events': {
- add: 'onAddEvent'
- }
- }
- }
- },
-
- init: function () {
- var self = this;
- setInterval(function () {
- self.getView().getView().refresh();
- }, Traccar.Style.refreshPeriod);
-
- if (Traccar.app.isMobile()) {
- this.lookupReference('hideEventsButton').setHidden(false);
- }
- },
-
- onRemoveClick: function () {
- var event, positionId;
- event = this.getView().getSelectionModel().getSelection()[0];
- if (event) {
- Ext.getStore('Events').remove(event);
- positionId = event.get('positionId');
- if (positionId && !Ext.getStore('Events').findRecord('positionId', positionId, 0, false, false, true)) {
- Ext.getStore('EventPositions').remove(Ext.getStore('EventPositions').getById(positionId));
- }
- }
- },
-
- onClearClick: function () {
- Ext.getStore('Events').removeAll();
- Ext.getStore('EventPositions').removeAll();
- },
-
- onAddEvent: function () {
- if (this.lookupReference('scrollToLastButton').pressed) {
- this.getView().scrollBy(0, Number.POSITIVE_INFINITY, true);
- }
- },
-
- onScrollToLastClick: function (button, pressed) {
- if (pressed) {
- this.onAddEvent();
- }
- },
-
- onHideEvents: function () {
- Traccar.app.showEvents(false);
- },
-
-
- deselectEvent: function (object) {
- if (object) {
- this.deselectFeature();
- }
- },
-
- deselectFeature: function () {
- this.getView().getSelectionModel().deselectAll();
- },
-
- onSelectionChange: function (selection, selected) {
- var event, positionId, position;
- event = selected.length > 0 ? selected[0] : null;
- if (event) {
- positionId = event.get('positionId');
- if (positionId) {
- position = Ext.getStore('EventPositions').getById(positionId);
- if (position) {
- this.fireEvent('selectevent', position);
- } else {
- Ext.getStore('EventPositions').load({
- params: {
- id: positionId
- },
- scope: this,
- addRecords: true,
- callback: function (records, operation, success) {
- if (success && records.length > 0) {
- this.fireEvent('selectevent', records[0]);
- }
- }
- });
- }
- } else {
- this.fireEvent('selectevent');
- }
- }
- this.lookupReference('removeEventButton').setDisabled(!event);
- }
-});
diff --git a/web/app/view/GridPanel.js b/web/app/view/GridPanel.js
deleted file mode 100644
index 848af081..00000000
--- a/web/app/view/GridPanel.js
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.GridPanel', {
- extend: 'Ext.grid.Panel',
- xtype: 'customGridPanel',
-
- requires: [
- 'Ext.grid.filters.Filters'
- ],
-
- plugins: 'gridfilters',
-
- viewConfig: {
- enableTextSelection: true,
- getRowClass: function () {
- return this.enableTextSelection ? 'x-selectable' : '';
- }
- }
-});
diff --git a/web/app/view/Main.js b/web/app/view/Main.js
deleted file mode 100644
index 0504245e..00000000
--- a/web/app/view/Main.js
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.Main', {
- extend: 'Ext.container.Viewport',
- alias: 'widget.main',
-
- requires: [
- 'Traccar.view.MainController',
- 'Traccar.view.edit.Devices',
- 'Traccar.view.State',
- 'Traccar.view.Report',
- 'Traccar.view.Events',
- 'Traccar.view.map.Map'
- ],
-
- controller: 'mainController',
-
- layout: 'border',
-
- defaults: {
- header: false,
- collapsible: true,
- split: true
- },
-
- items: [{
- region: 'west',
- layout: 'border',
- width: Traccar.Style.deviceWidth,
- title: Strings.devicesAndState,
- titleCollapse: true,
- floatable: false,
- stateful: true,
- stateId: 'devices-and-state-panel',
-
- defaults: {
- split: true,
- flex: 1
- },
-
- items: [{
- region: 'center',
- xtype: 'devicesView'
- }, {
- region: 'south',
- xtype: 'stateView'
- }]
- }, {
- region: 'south',
- xtype: 'reportView',
- reference: 'reportView',
- height: Traccar.Style.reportHeight,
- collapsed: true,
- titleCollapse: true,
- floatable: false
- }, {
- region: 'center',
- xtype: 'mapView',
- collapsible: false
- }, {
- region: 'east',
- xtype: 'eventsView',
- reference: 'eventsView',
- width: Traccar.Style.deviceWidth,
- collapsed: true,
- titleCollapse: true,
- floatable: false
- }]
-});
diff --git a/web/app/view/MainController.js b/web/app/view/MainController.js
deleted file mode 100644
index 8ed986af..00000000
--- a/web/app/view/MainController.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright 2017 - 2022 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.MainController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.mainController',
-
- init: function () {
- this.lookupReference('reportView').setHidden(Traccar.app.getPreference('disableReports', false));
- this.lookupReference('eventsView').setHidden(Traccar.app.getBooleanAttributePreference('ui.disableEvents'));
- }
-});
diff --git a/web/app/view/MainMobile.js b/web/app/view/MainMobile.js
deleted file mode 100644
index 8aab7710..00000000
--- a/web/app/view/MainMobile.js
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.MainMobile', {
- extend: 'Ext.container.Viewport',
- alias: 'widget.mainMobile',
-
- id: 'rootPanel',
-
- requires: [
- 'Traccar.view.edit.Devices',
- 'Traccar.view.State',
- 'Traccar.view.Report',
- 'Traccar.view.Events',
- 'Traccar.view.map.Map'
- ],
-
- layout: 'card',
-
- items: [{
- layout: 'border',
-
- defaults: {
- header: false,
- collapsible: true,
- split: true
- },
-
- items: [{
- region: 'east',
- xtype: 'stateView',
- title: Strings.stateTitle,
- flex: 4,
- collapsed: true,
- collapseMode: 'mini',
- titleCollapse: true,
- floatable: false,
- stateId: 'mobile-state-grid'
- }, {
- region: 'center',
- xtype: 'mapView',
- collapsible: false,
- flex: 2
- }, {
- region: 'south',
- xtype: 'devicesView',
- title: Strings.deviceTitle,
- flex: 1,
- collapsed: true,
- titleCollapse: true,
- floatable: false,
- stateId: 'mobile-devices-grid'
- }]
- }, {
- xtype: 'reportView'
- }, {
- xtype: 'eventsView'
- }]
-});
diff --git a/web/app/view/Report.js b/web/app/view/Report.js
deleted file mode 100644
index deedb747..00000000
--- a/web/app/view/Report.js
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Copyright 2015 - 2016 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.Report', {
- extend: 'Ext.panel.Panel',
- xtype: 'reportView',
-
- requires: [
- 'Traccar.view.ReportController',
- 'Traccar.view.GridPanel'
- ],
-
- controller: 'report',
-
- title: Strings.reportTitle,
-
- tools: [{
- type: 'close',
- tooltip: Strings.sharedHide,
- handler: 'hideReports'
- }],
-
- tbar: {
- scrollable: true,
- items: [{
- xtype: 'tbtext',
- html: Strings.sharedType
- }, {
- xtype: 'combobox',
- reference: 'reportTypeField',
- store: 'ReportTypes',
- displayField: 'name',
- valueField: 'key',
- editable: false,
- listeners: {
- change: 'onTypeChange'
- }
- }, '-', {
- text: Strings.reportConfigure,
- handler: 'onConfigureClick'
- }, '-', {
- text: Strings.reportShow,
- reference: 'showButton',
- disabled: true,
- handler: 'onReportClick'
- }, {
- text: Strings.reportExport,
- reference: 'exportButton',
- disabled: true,
- handler: 'onReportClick'
- }, {
- text: Strings.reportEmail,
- reference: 'emailButton',
- disabled: true,
- handler: 'onReportClick'
- }, {
- text: Strings.reportClear,
- handler: 'onClearClick'
- }]
- },
-
- layout: 'card',
-
- items: [{
- xtype: 'customGridPanel',
- itemId: 'grid',
- listeners: {
- selectionchange: 'onSelectionChange'
- },
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [
- ]
- },
- style: Traccar.Style.reportGridStyle
- }, {
- xtype: 'cartesian',
- itemId: 'chart',
- plugins: {
- ptype: 'chartitemevents',
- moveEvents: true
- },
- store: 'ReportRoute',
- axes: [{
- title: Strings.reportChart,
- type: 'numeric',
- position: 'left'
- }, {
- type: 'time',
- position: 'bottom',
- fields: ['fixTime']
- }],
- listeners: {
- itemclick: 'onChartMarkerClick'
- },
- insetPadding: Traccar.Style.chartPadding
- }]
-});
diff --git a/web/app/view/ReportController.js b/web/app/view/ReportController.js
deleted file mode 100644
index 8f63bd31..00000000
--- a/web/app/view/ReportController.js
+++ /dev/null
@@ -1,678 +0,0 @@
-/*
- * Copyright 2015 - 2016 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.ReportController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.report',
-
- requires: [
- 'Traccar.AttributeFormatter',
- 'Traccar.model.Position',
- 'Traccar.model.ReportTrip',
- 'Traccar.view.dialog.ReportConfig',
- 'Traccar.store.ReportEventTypes'
- ],
-
- config: {
- listen: {
- controller: {
- '*': {
- selectdevice: 'deselectReport',
- selectevent: 'deselectReport',
- showsingleevent: 'showSingleEvent'
- },
- 'map': {
- selectreport: 'selectReport',
- deselectfeature: 'deselectFeature'
- }
- },
- global: {
- routegeocode: 'onGeocode'
- },
- store: {
- '#ReportEvents': {
- add: 'loadRelatedPositions',
- load: 'loadRelatedPositions'
- },
- '#ReportRoute': {
- load: 'loadRoute'
- },
- '#ReportStops': {
- load: 'loadRelatedPositions'
- }
- }
- }
- },
-
- hideReports: function () {
- Traccar.app.showReports(false);
- },
-
- getGrid: function () {
- return this.getView().getComponent('grid');
- },
-
- getChart: function () {
- return this.getView().getComponent('chart');
- },
-
- init: function () {
- var i, data, attribute;
- data = Ext.getStore('PositionAttributes').getData().items;
- for (i = 0; i < data.length; i++) {
- attribute = data[i];
- this.routeColumns.push({
- text: attribute.get('name'),
- dataIndex: 'attribute.' + attribute.get('key'),
- renderer: Traccar.AttributeFormatter.getAttributeFormatter(attribute.get('key')),
- hidden: true
- });
- }
- if (Traccar.app.getVehicleFeaturesDisabled()) {
- for (i = 0; i < this.summaryColumns.length; i++) {
- if (this.summaryColumns[i].dataIndex.match('engineHours|spentFuel')) {
- this.summaryColumns[i].hidden = true;
- }
- }
- for (i = 0; i < this.tripsColumns.length; i++) {
- if (this.tripsColumns[i].dataIndex.match('spentFuel|driverUniqueId')) {
- this.tripsColumns[i].hidden = true;
- }
- }
- for (i = 0; i < this.stopsColumns.length; i++) {
- if (this.stopsColumns[i].dataIndex.match('engineHours|spentFuel')) {
- this.stopsColumns[i].hidden = true;
- }
- }
- }
- },
-
- onConfigureClick: function () {
- var dialog = Ext.create('Traccar.view.dialog.ReportConfig');
- dialog.lookupReference('eventTypeField').setHidden(this.lookupReference('reportTypeField').getValue() !== 'events');
- dialog.lookupReference('chartTypeField').setHidden(this.lookupReference('reportTypeField').getValue() !== 'chart');
- dialog.callingPanel = this;
- dialog.lookupReference('deviceField').setValue(this.deviceId);
- dialog.lookupReference('groupField').setValue(this.groupId);
- if (this.eventType !== undefined) {
- dialog.lookupReference('eventTypeField').setValue(this.eventType);
- } else {
- dialog.lookupReference('eventTypeField').setValue([Traccar.store.ReportEventTypes.allEvents]);
- }
- if (this.chartType !== undefined) {
- dialog.lookupReference('chartTypeField').setValue(this.chartType);
- }
- if (this.showMarkers !== undefined) {
- dialog.lookupReference('showMarkersField').setValue(this.showMarkers);
- }
- if (this.fromDate !== undefined) {
- dialog.lookupReference('fromDateField').setValue(this.fromDate);
- }
- if (this.fromTime !== undefined) {
- dialog.lookupReference('fromTimeField').setValue(this.fromTime);
- }
- if (this.toDate !== undefined) {
- dialog.lookupReference('toDateField').setValue(this.toDate);
- }
- if (this.toTime !== undefined) {
- dialog.lookupReference('toTimeField').setValue(this.toTime);
- }
- if (this.period !== undefined) {
- dialog.lookupReference('periodField').setValue(this.period);
- }
- dialog.show();
- },
-
- updateButtons: function () {
- var reportType, disabled, devices, time;
- reportType = this.lookupReference('reportTypeField').getValue();
- devices = this.deviceId && this.deviceId.length !== 0 || this.groupId && this.groupId.length !== 0;
- time = this.fromDate && this.fromTime && this.toDate && this.toTime;
- disabled = !reportType || !devices || !time || this.reportProgress;
- this.lookupReference('showButton').setDisabled(disabled);
- this.lookupReference('exportButton').setDisabled(reportType === 'chart' || disabled);
- this.lookupReference('emailButton').setDisabled(reportType === 'chart' || disabled);
- },
-
- onReportClick: function (button) {
- var reportType, from, to, store, url, daily;
-
- this.getGrid().getSelectionModel().deselectAll();
-
- reportType = this.lookupReference('reportTypeField').getValue();
- if (reportType && (this.deviceId || this.groupId)) {
- from = new Date(
- this.fromDate.getFullYear(), this.fromDate.getMonth(), this.fromDate.getDate(),
- this.fromTime.getHours(), this.fromTime.getMinutes(), this.fromTime.getSeconds(), this.fromTime.getMilliseconds());
-
- to = new Date(
- this.toDate.getFullYear(), this.toDate.getMonth(), this.toDate.getDate(),
- this.toTime.getHours(), this.toTime.getMinutes(), this.toTime.getSeconds(), this.toTime.getMilliseconds());
-
- daily = reportType === 'daily';
-
- this.reportProgress = true;
- this.updateButtons();
-
- if (button.reference === 'showButton') {
- if (reportType === 'chart') {
- store = this.getChart().getStore();
- this.getChart().setSeries([]);
- } else {
- store = this.getGrid().getStore();
- }
- store.showMarkers = this.showMarkers;
- store.load({
- scope: this,
- callback: function () {
- this.reportProgress = false;
- this.updateButtons();
- },
- params: {
- deviceId: this.deviceId,
- groupId: this.groupId,
- type: this.eventType,
- from: from.toISOString(),
- to: to.toISOString(),
- daily: daily
- }
- });
- } else {
- url = this.getGrid().getStore().getProxy().url;
- this.excelReport(url, {
- deviceId: this.deviceId,
- groupId: this.groupId,
- type: this.eventType,
- from: Ext.Date.format(from, 'c'),
- to: Ext.Date.format(to, 'c'),
- daily: daily,
- mail: button.reference === 'emailButton'
- });
- }
- }
- },
-
- onClearClick: function () {
- var reportType = this.lookupReference('reportTypeField').getValue();
- this.clearReport(reportType);
- },
-
- clearReport: function (reportType) {
- this.getGrid().getStore().removeAll();
- if (reportType === 'trips' || reportType === 'events' || reportType === 'stops') {
- Ext.getStore('ReportRoute').removeAll();
- }
- if (reportType === 'chart') {
- this.getChart().getStore().removeAll();
- }
- },
-
- onSelectionChange: function (selection, selected) {
- var report;
- if (selected.length > 0) {
- report = selected[0];
- this.fireEvent('selectreport', report, true);
- if (report instanceof Traccar.model.ReportTrip) {
- this.selectTrip(report);
- }
- if (report instanceof Traccar.model.Event || report instanceof Traccar.model.ReportStop) {
- this.selectPositionRelated(report);
- }
- }
- },
-
- selectReport: function (object) {
- var positionRelated, reportType = this.lookupReference('reportTypeField').getValue();
- if (object instanceof Traccar.model.Position) {
- if (reportType === 'route') {
- this.getGrid().getSelectionModel().select([object], false, true);
- this.getGrid().getView().focusRow(object);
- } else if (reportType === 'events' || reportType === 'stops') {
- positionRelated = this.getGrid().getStore().findRecord('positionId', object.get('id'), 0, false, true, true);
- this.getGrid().getSelectionModel().select([positionRelated], false, true);
- this.getGrid().getView().focusRow(positionRelated);
- }
- }
- },
-
- deselectReport: function (object) {
- if (object) {
- this.deselectFeature();
- }
- },
-
- deselectFeature: function () {
- if (this.lookupReference('reportTypeField').getValue() !== 'trips') {
- this.getGrid().getSelectionModel().deselectAll();
- }
- },
-
- selectTrip: function (trip) {
- var from, to;
- from = new Date(trip.get('startTime'));
- to = new Date(trip.get('endTime'));
- Ext.getStore('ReportRoute').removeAll();
- Ext.getStore('ReportRoute').showMarkers = this.showMarkers;
- Ext.getStore('ReportRoute').load({
- params: {
- deviceId: trip.get('deviceId'),
- from: from.toISOString(),
- to: to.toISOString()
- }
- });
- },
-
- selectPositionRelated: function (report) {
- var position;
- if (report.get('positionId')) {
- position = Ext.getStore('ReportRoute').getById(report.get('positionId'));
- if (position) {
- this.fireEvent('selectreport', position, true);
- }
- }
- },
-
- loadRelatedPositions: function (store, data) {
- var i, reportObject, positionIds = [];
- Ext.getStore('ReportRoute').removeAll();
- if (data) {
- for (i = 0; i < data.length; i++) {
- reportObject = data[i];
- if (reportObject.get('positionId')) {
- positionIds.push(reportObject.get('positionId'));
- }
- }
- }
- if (positionIds.length > 0) {
- Ext.getStore('Positions').load({
- params: {
- id: positionIds
- },
- scope: this,
- callback: function (records, operation, success) {
- if (success) {
- Ext.getStore('ReportRoute').showMarkers = this.showMarkers;
- Ext.getStore('ReportRoute').add(records);
- if (records.length === 1) {
- this.fireEvent('selectreport', records[0], false);
- }
- }
- }
- });
- }
- },
-
- loadRoute: function (store) {
- var i, deviceIds, chartSeries, deviceStore;
- if (this.lookupReference('reportTypeField').getValue() === 'chart') {
- this.getChart().getAxes()[0].setTitle(
- Ext.getStore('ReportChartTypes').findRecord('key', this.chartType).get('name'));
- chartSeries = [];
- deviceIds = store.collect('deviceId');
- for (i = 0; i < deviceIds.length; i++) {
- deviceStore = Ext.create('Ext.data.ChainedStore', {
- source: 'ReportRoute',
- filters: [{
- property: 'deviceId',
- value: deviceIds[i]
- }]
- });
- chartSeries.push({
- type: 'line',
- store: deviceStore,
- yField: this.chartType,
- xField: 'fixTime',
- highlightCfg: {
- scaling: Traccar.Style.chartMarkerHighlightScaling
- },
- colors: [Traccar.app.getReportColor(deviceIds[i])],
- marker: {
- type: 'circle',
- radius: Traccar.Style.chartMarkerRadius,
- fill: Traccar.app.getReportColor(deviceIds[i])
- }
- });
- }
- this.getChart().setSeries(chartSeries);
- }
- },
-
- onChartMarkerClick: function (chart, item) {
- this.fireEvent('selectreport', item.record, true);
- },
-
- showSingleEvent: function (eventId) {
- this.lookupReference('reportTypeField').setValue('events');
- Ext.getStore('Events').load({
- id: eventId,
- scope: this,
- callback: function (records, operation, success) {
- if (success) {
- Ext.getStore('ReportEvents').add(records);
- if (records.length > 0) {
- if (!records[0].get('positionId')) {
- if (Traccar.app.isMobile()) {
- Traccar.app.showReports(true);
- } else {
- this.getView().expand();
- }
- }
- this.getGrid().getSelectionModel().select([records[0]], false, true);
- this.getGrid().getView().focusRow(records[0]);
- }
- }
- }
- });
- },
-
- excelReport: function (requestUrl, requestParams) {
- Ext.Ajax.request({
- url: requestUrl,
- method: 'GET',
- timeout: Traccar.Style.reportTimeout,
- params: requestParams,
- headers: {
- Accept: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
- },
- binary: true,
- scope: this,
- callback: function (options, success, response) {
- var disposition, filename, type, blob, url, downloadUrl;
- if (success && !requestParams.mail) {
- disposition = response.getResponseHeader('Content-Disposition');
- filename = disposition.slice(disposition.indexOf('=') + 1, disposition.length);
- type = response.getResponseHeader('Content-Type');
- blob = new Blob([response.responseBytes], {type: type});
- if (typeof window.navigator.msSaveBlob !== 'undefined') {
- // IE workaround
- window.navigator.msSaveBlob(blob, filename);
- } else {
- url = window.URL || window.webkitURL;
- downloadUrl = url.createObjectURL(blob);
- if (filename) {
- Ext.dom.Helper.append(Ext.getBody(), {
- tag: 'a',
- href: downloadUrl,
- download: filename
- }).click();
- }
- setTimeout(function () {
- url.revokeObjectURL(downloadUrl);
- }, 100);
- }
- }
- this.reportProgress = false;
- this.updateButtons();
- }
- });
- },
-
- onTypeChange: function (combobox, newValue, oldValue) {
- if (oldValue !== null) {
- this.clearReport(oldValue);
- }
-
- if (newValue === 'route') {
- this.getGrid().reconfigure('ReportRoute', this.routeColumns);
- this.getView().getLayout().setActiveItem('grid');
- } else if (newValue === 'events') {
- this.getGrid().reconfigure('ReportEvents', this.eventsColumns);
- this.getView().getLayout().setActiveItem('grid');
- } else if (newValue === 'summary' || newValue === 'daily') {
- this.getGrid().reconfigure('ReportSummary', this.summaryColumns);
- this.getView().getLayout().setActiveItem('grid');
- } else if (newValue === 'trips') {
- this.getGrid().reconfigure('ReportTrips', this.tripsColumns);
- this.getView().getLayout().setActiveItem('grid');
- } else if (newValue === 'stops') {
- this.getGrid().reconfigure('ReportStops', this.stopsColumns);
- this.getView().getLayout().setActiveItem('grid');
- } else if (newValue === 'chart') {
- this.getView().getLayout().setActiveItem('chart');
- }
-
- this.updateButtons();
- },
-
- onGeocode: function (positionId) {
- var position = Ext.getStore('ReportRoute').getById(positionId);
- if (position && !position.get('address')) {
- Ext.Ajax.request({
- scope: this,
- method: 'GET',
- url: 'api/server/geocode',
- params: {
- latitude: position.get('latitude'),
- longitude: position.get('longitude')
- },
- success: function (response) {
- position.set('address', response.responseText);
- position.commit();
- this.fireEvent('selectReport', position);
- },
- failure: function (response) {
- Traccar.app.showError(response);
- }
- });
- }
- },
-
- routeColumns: [{
- text: Strings.reportDeviceName,
- dataIndex: 'deviceId',
- renderer: Traccar.AttributeFormatter.getFormatter('deviceId')
- }, {
- text: Strings.positionValid,
- dataIndex: 'valid',
- renderer: Traccar.AttributeFormatter.getFormatter('valid')
- }, {
- text: Strings.positionFixTime,
- dataIndex: 'fixTime',
- xtype: 'datecolumn',
- renderer: Traccar.AttributeFormatter.getFormatter('fixTime')
- }, {
- text: Strings.positionLatitude,
- dataIndex: 'latitude',
- renderer: Traccar.AttributeFormatter.getFormatter('latitude')
- }, {
- text: Strings.positionLongitude,
- dataIndex: 'longitude',
- renderer: Traccar.AttributeFormatter.getFormatter('longitude')
- }, {
- text: Strings.positionAltitude,
- dataIndex: 'altitude',
- renderer: Traccar.AttributeFormatter.getFormatter('altitude')
- }, {
- text: Strings.positionSpeed,
- dataIndex: 'speed',
- renderer: Traccar.AttributeFormatter.getFormatter('speed')
- }, {
- text: Strings.positionAddress,
- dataIndex: 'address',
- renderer: function (value, metaData, record) {
- if (!value) {
- return '<a href="#" onclick="Ext.fireEvent(\'routegeocode\', ' +
- record.getId() + ')" >' +
- Strings.sharedShowAddress + '</a>';
- }
- return Traccar.AttributeFormatter.getFormatter('address')(value);
- }
- }],
-
- eventsColumns: [{
- text: Strings.positionFixTime,
- dataIndex: 'eventTime',
- xtype: 'datecolumn',
- renderer: Traccar.AttributeFormatter.getFormatter('eventTime')
- }, {
- text: Strings.reportDeviceName,
- dataIndex: 'deviceId',
- renderer: Traccar.AttributeFormatter.getFormatter('deviceId')
- }, {
- text: Strings.sharedType,
- dataIndex: 'type',
- renderer: function (value) {
- return Traccar.app.getEventString(value);
- }
- }, {
- text: Strings.positionAlarm,
- dataIndex: 'attributes',
- renderer: function (value) {
- return value['alarm'];
- }
- }, {
- text: Strings.sharedGeofence,
- dataIndex: 'geofenceId',
- renderer: Traccar.AttributeFormatter.getFormatter('geofenceId')
- }, {
- text: Strings.sharedMaintenance,
- dataIndex: 'maintenanceId',
- renderer: Traccar.AttributeFormatter.getFormatter('maintenanceId')
- }],
-
- summaryColumns: [{
- text: Strings.reportDeviceName,
- dataIndex: 'deviceId',
- renderer: Traccar.AttributeFormatter.getFormatter('deviceId')
- }, {
- text: Strings.reportStartDate,
- dataIndex: 'startTime',
- xtype: 'datecolumn',
- renderer: Traccar.AttributeFormatter.dateFormatter
- }, {
- text: Strings.sharedDistance,
- dataIndex: 'distance',
- renderer: Traccar.AttributeFormatter.getFormatter('distance')
- }, {
- text: Strings.reportStartOdometer,
- dataIndex: 'startOdometer',
- renderer: Traccar.AttributeFormatter.getFormatter('distance')
- }, {
- text: Strings.reportEndOdometer,
- dataIndex: 'endOdometer',
- renderer: Traccar.AttributeFormatter.getFormatter('distance')
- }, {
- text: Strings.reportAverageSpeed,
- dataIndex: 'averageSpeed',
- renderer: Traccar.AttributeFormatter.getFormatter('speed')
- }, {
- text: Strings.reportMaximumSpeed,
- dataIndex: 'maxSpeed',
- renderer: Traccar.AttributeFormatter.getFormatter('speed')
- }, {
- text: Strings.reportEngineHours,
- dataIndex: 'engineHours',
- renderer: Traccar.AttributeFormatter.getFormatter('duration')
- }, {
- text: Strings.reportSpentFuel,
- dataIndex: 'spentFuel',
- renderer: Traccar.AttributeFormatter.getFormatter('spentFuel')
- }],
-
- tripsColumns: [{
- text: Strings.reportDeviceName,
- dataIndex: 'deviceId',
- renderer: Traccar.AttributeFormatter.getFormatter('deviceId')
- }, {
- text: Strings.reportStartTime,
- dataIndex: 'startTime',
- xtype: 'datecolumn',
- renderer: Traccar.AttributeFormatter.getFormatter('startTime')
- }, {
- text: Strings.reportStartOdometer,
- dataIndex: 'startOdometer',
- renderer: Traccar.AttributeFormatter.getFormatter('distance')
- }, {
- text: Strings.reportStartAddress,
- dataIndex: 'startAddress',
- renderer: Traccar.AttributeFormatter.getFormatter('address')
- }, {
- text: Strings.reportEndTime,
- dataIndex: 'endTime',
- xtype: 'datecolumn',
- renderer: Traccar.AttributeFormatter.getFormatter('endTime')
- }, {
- text: Strings.reportEndOdometer,
- dataIndex: 'endOdometer',
- renderer: Traccar.AttributeFormatter.getFormatter('distance')
- }, {
- text: Strings.reportEndAddress,
- dataIndex: 'endAddress',
- renderer: Traccar.AttributeFormatter.getFormatter('address')
- }, {
- text: Strings.sharedDistance,
- dataIndex: 'distance',
- renderer: Traccar.AttributeFormatter.getFormatter('distance')
- }, {
- text: Strings.reportAverageSpeed,
- dataIndex: 'averageSpeed',
- renderer: Traccar.AttributeFormatter.getFormatter('speed')
- }, {
- text: Strings.reportMaximumSpeed,
- dataIndex: 'maxSpeed',
- renderer: Traccar.AttributeFormatter.getFormatter('speed')
- }, {
- text: Strings.reportDuration,
- dataIndex: 'duration',
- renderer: Traccar.AttributeFormatter.getFormatter('duration')
- }, {
- text: Strings.reportSpentFuel,
- dataIndex: 'spentFuel',
- renderer: Traccar.AttributeFormatter.getFormatter('spentFuel')
- }, {
- text: Strings.sharedDriver,
- dataIndex: 'driverUniqueId',
- renderer: Traccar.AttributeFormatter.getFormatter('driverUniqueId')
- }],
-
- stopsColumns: [{
- text: Strings.reportDeviceName,
- dataIndex: 'deviceId',
- renderer: Traccar.AttributeFormatter.getFormatter('deviceId')
- }, {
- text: Strings.reportStartTime,
- dataIndex: 'startTime',
- xtype: 'datecolumn',
- renderer: Traccar.AttributeFormatter.getFormatter('startTime')
- }, {
- text: Strings.positionOdometer,
- dataIndex: 'startOdometer',
- renderer: Traccar.AttributeFormatter.getFormatter('distance')
- }, {
- text: Strings.positionAddress,
- dataIndex: 'address',
- renderer: Traccar.AttributeFormatter.getFormatter('address')
- }, {
- text: Strings.reportEndTime,
- dataIndex: 'endTime',
- xtype: 'datecolumn',
- renderer: Traccar.AttributeFormatter.getFormatter('endTime')
- }, {
- text: Strings.reportDuration,
- dataIndex: 'duration',
- renderer: Traccar.AttributeFormatter.getFormatter('duration')
- }, {
- text: Strings.reportEngineHours,
- dataIndex: 'engineHours',
- renderer: Traccar.AttributeFormatter.getFormatter('duration')
- }, {
- text: Strings.reportSpentFuel,
- dataIndex: 'spentFuel',
- renderer: Traccar.AttributeFormatter.getFormatter('spentFuel')
- }]
-});
diff --git a/web/app/view/SettingsMenu.js b/web/app/view/SettingsMenu.js
deleted file mode 100644
index 0a81d520..00000000
--- a/web/app/view/SettingsMenu.js
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.SettingsMenu', {
- extend: 'Ext.button.Button',
- xtype: 'settingsMenu',
-
- requires: [
- 'Traccar.view.SettingsMenuController'
- ],
-
- glyph: 'xf013@FontAwesome',
- tooltip: Strings.settingsTitle,
- tooltipType: 'title',
-
- menu: {
- controller: 'settings',
-
- items: [{
- hidden: true,
- text: Strings.settingsUser,
- glyph: 'xf007@FontAwesome',
- handler: 'onUserClick',
- reference: 'settingsUserButton'
- }, {
- hidden: true,
- text: Strings.settingsGroups,
- glyph: 'xf247@FontAwesome',
- handler: 'onGroupsClick',
- reference: 'settingsGroupsButton'
- }, {
- hidden: true,
- text: Strings.sharedDrivers,
- glyph: 'xf084@FontAwesome',
- handler: 'onDriversClick',
- reference: 'settingsDriversButton'
- }, {
- hidden: true,
- text: Strings.sharedGeofences,
- glyph: 'xf21d@FontAwesome',
- handler: 'onGeofencesClick',
- reference: 'settingsGeofencesButton'
- }, {
- hidden: true,
- text: Strings.settingsServer,
- glyph: 'xf233@FontAwesome',
- handler: 'onServerClick',
- reference: 'settingsServerButton'
- }, {
- hidden: true,
- text: Strings.settingsUsers,
- glyph: 'xf0c0@FontAwesome',
- handler: 'onUsersClick',
- reference: 'settingsUsersButton'
- }, {
- hidden: true,
- text: Strings.sharedNotifications,
- glyph: 'xf003@FontAwesome',
- handler: 'onNotificationsClick',
- reference: 'settingsNotificationsButton'
- }, {
- hidden: true,
- text: Strings.sharedComputedAttributes,
- glyph: 'xf0ae@FontAwesome',
- handler: 'onComputedAttributesClick',
- reference: 'settingsComputedAttributesButton'
- }, {
- hidden: true,
- text: Strings.statisticsTitle,
- glyph: 'xf080@FontAwesome',
- handler: 'onStatisticsClick',
- reference: 'settingsStatisticsButton'
- }, {
- hidden: true,
- text: Strings.sharedCalendars,
- glyph: 'xf073@FontAwesome',
- handler: 'onCalendarsClick',
- reference: 'settingsCalendarsButton'
- }, {
- hidden: true,
- text: Strings.sharedSavedCommands,
- glyph: 'xf093@FontAwesome',
- handler: 'onCommandsClick',
- reference: 'settingsCommandsButton'
- }, {
- hidden: true,
- text: Strings.sharedMaintenance,
- glyph: 'xf0ad@FontAwesome',
- handler: 'onMaintenancesClick',
- reference: 'settingsMaintenancesButton'
- }, {
- text: Strings.loginLogout,
- glyph: 'xf08b@FontAwesome',
- handler: 'onLogoutClick'
- }]
- }
-});
diff --git a/web/app/view/SettingsMenuController.js b/web/app/view/SettingsMenuController.js
deleted file mode 100644
index c8018f66..00000000
--- a/web/app/view/SettingsMenuController.js
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.SettingsMenuController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.settings',
-
- requires: [
- 'Traccar.view.dialog.LoginController',
- 'Traccar.view.dialog.User',
- 'Traccar.view.dialog.Server',
- 'Traccar.view.edit.Users',
- 'Traccar.view.edit.Groups',
- 'Traccar.view.edit.Geofences',
- 'Traccar.view.edit.Drivers',
- 'Traccar.view.edit.Notifications',
- 'Traccar.view.edit.ComputedAttributes',
- 'Traccar.view.Statistics',
- 'Traccar.view.edit.Calendars',
- 'Traccar.view.edit.SavedCommands',
- 'Traccar.view.edit.Maintenances',
- 'Traccar.view.BaseWindow'
- ],
-
- init: function () {
- var admin, manager, readonly;
- admin = Traccar.app.getUser().get('administrator');
- manager = Traccar.app.getUser().get('userLimit') !== 0;
- readonly = Traccar.app.getPreference('readonly', false);
- if (admin) {
- this.lookupReference('settingsServerButton').setHidden(false);
- this.lookupReference('settingsStatisticsButton').setHidden(false);
- this.lookupReference('settingsComputedAttributesButton').setHidden(
- Traccar.app.getBooleanAttributePreference('ui.disableComputedAttributes'));
- }
- if (admin || manager) {
- this.lookupReference('settingsUsersButton').setHidden(false);
- }
- if (admin || !readonly) {
- this.lookupReference('settingsUserButton').setHidden(false);
- this.lookupReference('settingsGroupsButton').setHidden(false);
- this.lookupReference('settingsGeofencesButton').setHidden(false);
- this.lookupReference('settingsNotificationsButton').setHidden(false);
- this.lookupReference('settingsCalendarsButton').setHidden(
- Traccar.app.getBooleanAttributePreference('ui.disableCalendars'));
- this.lookupReference('settingsDriversButton').setHidden(
- Traccar.app.getVehicleFeaturesDisabled() || Traccar.app.getBooleanAttributePreference('ui.disableDrivers'));
- this.lookupReference('settingsCommandsButton').setHidden(Traccar.app.getPreference('limitCommands', false));
- this.lookupReference('settingsMaintenancesButton').setHidden(
- Traccar.app.getVehicleFeaturesDisabled() || Traccar.app.getBooleanAttributePreference('ui.disableMaintenance'));
- }
- },
-
- onUserClick: function () {
- var dialog = Ext.create('Traccar.view.dialog.User', {
- selfEdit: true
- });
- dialog.down('form').loadRecord(Traccar.app.getUser());
- dialog.lookupReference('testNotificationButton').setHidden(false);
- dialog.show();
- },
-
- onGroupsClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.settingsGroups,
- items: {
- xtype: 'groupsView'
- }
- }).show();
- },
-
- onGeofencesClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedGeofences,
- items: {
- xtype: 'geofencesView'
- }
- }).show();
- },
-
- onServerClick: function () {
- var dialog = Ext.create('Traccar.view.dialog.Server');
- dialog.down('form').loadRecord(Traccar.app.getServer());
- dialog.show();
- },
-
- onUsersClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.settingsUsers,
- items: {
- xtype: 'usersView'
- }
- }).show();
- },
-
- onNotificationsClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedNotifications,
- items: {
- xtype: 'notificationsView'
- }
- }).show();
- },
-
- onComputedAttributesClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedComputedAttributes,
- items: {
- xtype: 'computedAttributesView'
- }
- }).show();
- },
-
- onStatisticsClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.statisticsTitle,
- items: {
- xtype: 'statisticsView'
- }
- }).show();
- },
-
- onCalendarsClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedCalendars,
- items: {
- xtype: 'calendarsView'
- }
- }).show();
- },
-
- onDriversClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedDrivers,
- items: {
- xtype: 'driversView'
- }
- }).show();
- },
-
- onCommandsClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedSavedCommands,
- items: {
- xtype: 'savedCommandsView'
- }
- }).show();
- },
-
- onMaintenancesClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedMaintenance,
- items: {
- xtype: 'maintenancesView'
- }
- }).show();
- },
-
- onLogoutClick: function () {
- Ext.create('Traccar.view.dialog.LoginController').logout();
- }
-});
diff --git a/web/app/view/State.js b/web/app/view/State.js
deleted file mode 100644
index c0a430d9..00000000
--- a/web/app/view/State.js
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright 2015 - 2022 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.State', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'stateView',
-
- requires: [
- 'Traccar.view.StateController'
- ],
-
- controller: 'state',
- store: 'Attributes',
-
- stateful: true,
- stateId: 'state-grid',
-
- tbar: {
- componentCls: 'toolbar-header-style',
- items: [{
- xtype: 'tbtext',
- html: Strings.stateTitle,
- baseCls: 'x-panel-header-title-default'
- }, {
- xtype: 'tbfill'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onComputedAttributesClick',
- reference: 'computedAttributesButton',
- glyph: 'xf0ae@FontAwesome',
- tooltip: Strings.sharedComputedAttributes,
- tooltipType: 'title'
- }]
- },
-
- columns: {
- defaults: {
- minWidth: Traccar.Style.columnWidthNormal,
- flex: 1
- },
- items: [{
- text: Strings.stateName,
- dataIndex: 'name'
- }, {
- text: Strings.stateValue,
- dataIndex: 'value',
- cellWrap: true,
- renderer: function (value, metaData, record) {
- var position, device, attribute;
- attribute = record.get('attribute');
- if (attribute === 'alarm') {
- metaData.tdCls = 'view-color-red';
- } else if (attribute === 'address' && !value) {
- return '<a href="#" onclick="Ext.fireEvent(\'stategeocode\')" >' +
- Strings.sharedShowAddress + '</a>';
- } else if (attribute === 'image' || attribute === 'video' || attribute === 'audio') {
- position = this.getController().position;
- if (position) {
- device = Ext.getStore('Devices').getById(position.get('deviceId'));
- if (device) {
- return '<a target="_blank" href="/api/media/' +
- device.get('uniqueId') + '/' + value + '" >' + value + '</a>';
- }
- }
- }
- return value;
- }
- }]
- }
-});
diff --git a/web/app/view/StateController.js b/web/app/view/StateController.js
deleted file mode 100644
index f04d7185..00000000
--- a/web/app/view/StateController.js
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- * Copyright 2015 - 2022 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.StateController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.state',
-
- requires: [
- 'Traccar.AttributeFormatter',
- 'Traccar.model.Attribute',
- 'Traccar.model.Position',
- 'Traccar.view.BaseWindow',
- 'Traccar.view.edit.ComputedAttributes'
- ],
-
- config: {
- listen: {
- controller: {
- '*': {
- selectdevice: 'selectDevice',
- selectreport: 'selectPosition',
- selectevent: 'selectPosition',
- deselectfeature: 'deselectFeature'
- }
- },
- global: {
- stategeocode: 'onGeocode'
- },
- store: {
- '#LatestPositions': {
- add: 'updateLatest',
- update: 'updateLatest'
- },
- '#ReportRoute': {
- clear: 'clearReport'
- }
- }
- }
- },
-
- init: function () {
- var i, hideAttributesPreference, attributesList;
- if (Traccar.app.getUser().get('administrator') ||
- !Traccar.app.getUser().get('deviceReadonly') && !Traccar.app.getPreference('readonly', false)) {
- this.lookupReference('computedAttributesButton').setDisabled(
- Traccar.app.getBooleanAttributePreference('ui.disableComputedAttributes'));
- }
- hideAttributesPreference = Traccar.app.getAttributePreference('ui.hidePositionAttributes');
- this.hideAttributes = {};
- if (hideAttributesPreference) {
- attributesList = hideAttributesPreference.split(/[ ,]+/).filter(Boolean);
- for (i = 0; i < attributesList.length; i++) {
- this.hideAttributes[attributesList[i]] = true;
- }
- }
- },
-
- onComputedAttributesClick: function () {
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedComputedAttributes,
- items: {
- xtype: 'computedAttributesView'
- }
- }).show();
- },
-
- keys: (function () {
- var i, list, result;
- result = {};
- list = ['fixTime', 'latitude', 'longitude', 'valid', 'accuracy', 'altitude', 'speed', 'course', 'address', 'protocol'];
- for (i = 0; i < list.length; i++) {
- result[list[i]] = {
- priority: i,
- name: Strings['position' + list[i].replace(/^\w/g, function (s) {
- return s.toUpperCase();
- })]
- };
- }
- return result;
- })(),
-
- updateLatest: function (store, data) {
- var i;
- if (!Ext.isArray(data)) {
- data = [data];
- }
- for (i = 0; i < data.length; i++) {
- if (this.deviceId === data[i].get('deviceId')) {
- this.position = data[i];
- this.updatePosition();
- }
- }
- },
-
- formatValue: function (value) {
- if (typeof id === 'number') {
- return Number(value.toFixed(2));
- } else {
- return value;
- }
- },
-
- findAttribute: function (record) {
- return record.get('deviceId') === this.position.get('deviceId') && record.get('attribute') === this.lookupAttribute;
- },
-
- updatePosition: function () {
- var attributes, store, key, name, value;
- store = Ext.getStore('Attributes');
- store.removeAll();
-
- for (key in this.position.data) {
- if (this.position.data.hasOwnProperty(key) && this.keys[key] !== undefined) {
- store.add(Ext.create('Traccar.model.Attribute', {
- priority: this.keys[key].priority,
- name: this.keys[key].name,
- attribute: key,
- value: Traccar.AttributeFormatter.getFormatter(key)(this.position.get(key))
- }));
- }
- }
-
- attributes = this.position.get('attributes');
- if (attributes instanceof Object) {
- for (key in attributes) {
- if (attributes.hasOwnProperty(key) && !this.hideAttributes[key]) {
- this.lookupAttribute = key;
- name = Ext.getStore('PositionAttributes').getAttributeName(key, true);
- if (this.position.get('attribute.' + key) !== undefined) {
- value = Traccar.AttributeFormatter.getAttributeFormatter(key)(this.position.get('attribute.' + key));
- } else {
- value = Traccar.AttributeFormatter.defaultFormatter(attributes[key]);
- }
- store.add(Ext.create('Traccar.model.Attribute', {
- priority: 1024,
- name: name,
- attribute: key,
- value: value
- }));
- }
- }
- }
- },
-
- selectDevice: function (device) {
- var position;
- this.deviceId = device.get('id');
- position = Ext.getStore('LatestPositions').findRecord('deviceId', this.deviceId, 0, false, false, true);
- if (position) {
- this.position = position;
- this.updatePosition();
- } else {
- this.position = null;
- Ext.getStore('Attributes').removeAll();
- }
- },
-
- selectPosition: function (position) {
- if (position instanceof Traccar.model.Position) {
- this.deviceId = null;
- this.position = position;
- this.updatePosition();
- }
- },
-
- deselectFeature: function () {
- this.deviceId = null;
- this.position = null;
- Ext.getStore('Attributes').removeAll();
- },
-
- clearReport: function () {
- if (!this.deviceId) {
- this.position = null;
- Ext.getStore('Attributes').removeAll();
- }
- },
-
- onGeocode: function () {
- var positionId = this.position.getId();
- if (!this.position.get('address')) {
- Ext.Ajax.request({
- scope: this,
- method: 'GET',
- url: 'api/server/geocode',
- params: {
- latitude: this.position.get('latitude'),
- longitude: this.position.get('longitude')
- },
- success: function (response) {
- if (this.position && this.position.getId() === positionId) {
- this.position.set('address', response.responseText);
- this.updatePosition();
- }
- },
- failure: function (response) {
- Traccar.app.showError(response);
- }
- });
- }
- }
-});
diff --git a/web/app/view/Statistics.js b/web/app/view/Statistics.js
deleted file mode 100644
index af199a02..00000000
--- a/web/app/view/Statistics.js
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-Ext.define('Traccar.view.Statistics', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'statisticsView',
-
- requires: [
- 'Traccar.view.StatisticsController'
- ],
-
- controller: 'statistics',
- store: 'Statistics',
-
- tbar: {
- scrollable: true,
- items: [{
- xtype: 'tbtext',
- html: Strings.reportFrom
- }, {
- xtype: 'datefield',
- reference: 'fromDateField',
- startDay: Traccar.Style.weekStartDay,
- format: Traccar.Style.dateFormat,
- value: new Date(new Date().getTime() - 24 * 60 * 60 * 1000)
- }, '-', {
- xtype: 'tbtext',
- html: Strings.reportTo
- }, {
- xtype: 'datefield',
- reference: 'toDateField',
- startDay: Traccar.Style.weekStartDay,
- format: Traccar.Style.dateFormat,
- value: new Date()
- }, '-', {
- text: Strings.reportShow,
- handler: 'onShowClick'
- }]
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.statisticsCaptureTime,
- dataIndex: 'captureTime',
- xtype: 'datecolumn',
- renderer: Traccar.AttributeFormatter.defaultFormatter()
- }, {
- text: Strings.statisticsActiveUsers,
- dataIndex: 'activeUsers'
- }, {
- text: Strings.statisticsActiveDevices,
- dataIndex: 'activeDevices'
- }, {
- text: Strings.statisticsRequests,
- dataIndex: 'requests'
- }, {
- text: Strings.statisticsMessagesReceived,
- dataIndex: 'messagesReceived'
- }, {
- text: Strings.statisticsMessagesStored,
- dataIndex: 'messagesStored'
- }, {
- text: Strings.notificatorMail,
- dataIndex: 'mailSent'
- }, {
- text: Strings.notificatorSms,
- dataIndex: 'smsSent'
- }, {
- text: Strings.statisticsGeocoder,
- dataIndex: 'geocoderRequests'
- }, {
- text: Strings.statisticsGeolocation,
- dataIndex: 'geolocationRequests'
- }]
- }
-});
diff --git a/web/app/view/StatisticsController.js b/web/app/view/StatisticsController.js
deleted file mode 100644
index c4ce9d37..00000000
--- a/web/app/view/StatisticsController.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-Ext.define('Traccar.view.StatisticsController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.statistics',
-
- onShowClick: function () {
- Ext.getStore('Statistics').load({
- params: {
- from: this.lookupReference('fromDateField').getValue().toISOString(),
- to: this.lookupReference('toDateField').getValue().toISOString()
- }
- });
- }
-});
diff --git a/web/app/view/TouchFix62.js b/web/app/view/TouchFix62.js
deleted file mode 100644
index 300d4f70..00000000
--- a/web/app/view/TouchFix62.js
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * Workaround for bug in ExtJs 6.2.0.
- * Resolved in current yet unreleased version
- */
-
-Ext.define('Traccar.view.TouchFix62', {
- override: 'Ext.dom.Element'
-},
-function () {
- var additiveEvents = this.prototype.additiveEvents,
- eventMap = this.prototype.eventMap;
- if (Ext.supports.TouchEvents && Ext.firefoxVersion >= 52 && Ext.os.is.Desktop) {
- eventMap['touchstart'] = 'mousedown';
- eventMap['touchmove'] = 'mousemove';
- eventMap['touchend'] = 'mouseup';
- eventMap['touchcancel'] = 'mouseup';
- eventMap['click'] = 'click';
- eventMap['dblclick'] = 'dblclick';
- additiveEvents['mousedown'] = 'mousedown';
- additiveEvents['mousemove'] = 'mousemove';
- additiveEvents['mouseup'] = 'mouseup';
- additiveEvents['touchstart'] = 'touchstart';
- additiveEvents['touchmove'] = 'touchmove';
- additiveEvents['touchend'] = 'touchend';
- additiveEvents['touchcancel'] = 'touchcancel';
- additiveEvents['pointerdown'] = 'mousedown';
- additiveEvents['pointermove'] = 'mousemove';
- additiveEvents['pointerup'] = 'mouseup';
- additiveEvents['pointercancel'] = 'mouseup';
- }
-});
diff --git a/web/app/view/UnescapedTextAreaField.js b/web/app/view/UnescapedTextAreaField.js
deleted file mode 100644
index 5de267ce..00000000
--- a/web/app/view/UnescapedTextAreaField.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2019 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.UnescapedTextAreaField', {
- extend: 'Ext.form.field.TextArea',
- xtype: 'unescapedTextAreaField',
-
- initComponent: function () {
- this.callParent();
- this.on('change', this.onValueChange);
- },
-
- onValueChange: function (field, newValue) {
- field.setValue(Ext.String.htmlDecode(newValue));
- }
-});
diff --git a/web/app/view/UnescapedTextField.js b/web/app/view/UnescapedTextField.js
deleted file mode 100644
index 3b1b2798..00000000
--- a/web/app/view/UnescapedTextField.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2019 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.UnescapedTextField', {
- extend: 'Ext.form.field.Text',
- xtype: 'unescapedTextField',
-
- initComponent: function () {
- this.callParent();
- this.on('change', this.onValueChange);
- },
-
- onValueChange: function (field, newValue) {
- field.setValue(Ext.String.htmlDecode(newValue));
- }
-});
diff --git a/web/app/view/dialog/Attribute.js b/web/app/view/dialog/Attribute.js
deleted file mode 100644
index a85cad05..00000000
--- a/web/app/view/dialog/Attribute.js
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Attribute', {
- extend: 'Traccar.view.dialog.Base',
-
- requires: [
- 'Traccar.view.dialog.AttributeController',
- 'Traccar.view.ColorPicker',
- 'Traccar.view.CustomNumberField',
- 'Traccar.view.UnescapedTextField'
- ],
-
- controller: 'attribute',
- title: Strings.sharedAttribute,
-
- items: {
- xtype: 'form',
- listeners: {
- validitychange: 'onValidityChange'
- },
- items: [{
- xtype: 'unescapedTextField',
- reference: 'nameTextField',
- name: 'name',
- allowBlank: false,
- fieldLabel: Strings.sharedName
- }, {
- xtype: 'textfield',
- name: 'value',
- reference: 'valueField',
- allowBlank: false,
- fieldLabel: Strings.stateValue
- }]
- },
-
- buttons: [{
- glyph: 'xf00c@FontAwesome',
- reference: 'saveButton',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSaveClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/AttributeController.js b/web/app/view/dialog/AttributeController.js
deleted file mode 100644
index 9fd452a4..00000000
--- a/web/app/view/dialog/AttributeController.js
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.AttributeController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.attribute',
-
- onSaveClick: function (button) {
- var dialog, store, record;
- dialog = button.up('window').down('form');
- dialog.updateRecord();
- record = dialog.getRecord();
- store = record.store;
- if (store) {
- if (record.phantom) {
- store.add(record);
- }
- store.sync({
- failure: function (batch) {
- store.rejectChanges();
- Traccar.app.showError(batch.exceptions[0].getError().response);
- }
- });
- } else {
- record.save();
- }
- button.up('window').close();
- },
-
- onValidityChange: function (form, valid) {
- this.lookupReference('saveButton').setDisabled(!valid);
- },
-
- defaultFieldConfig: {
- name: 'value',
- reference: 'valueField',
- allowBlank: false,
- fieldLabel: Strings.stateValue
- },
-
- onNameChange: function (combobox, newValue) {
- var config, attribute, valueField = this.lookupReference('valueField');
- attribute = combobox.getStore().getById(newValue);
- if (attribute) {
- config = Ext.clone(this.defaultFieldConfig);
- switch (attribute.get('valueType')) {
- case 'number':
- config.xtype = 'customNumberField';
- if (attribute.get('allowDecimals') !== undefined) {
- config.allowDecimals = attribute.get('allowDecimals');
- } else {
- config.allowDecimals = true;
- }
- config.dataType = attribute.get('dataType');
- config.maxValue = attribute.get('maxValue');
- config.minValue = attribute.get('minValue');
- break;
- case 'boolean':
- config.xtype = 'checkboxfield';
- config.inputValue = true;
- config.uncheckedValue = false;
- break;
- case 'color':
- config.xtype = 'customcolorpicker';
- break;
- default:
- if (attribute.get('dataType')) {
- config.xtype = 'combobox';
- config.queryMode = 'local';
- config.editable = false;
- switch (attribute.get('dataType')) {
- case 'distanceUnit':
- config.store = 'DistanceUnits';
- config.displayField = 'name';
- config.valueField = 'key';
- break;
- case 'speedUnit':
- config.store = 'SpeedUnits';
- config.displayField = 'name';
- config.valueField = 'key';
- break;
- case 'volumeUnit':
- config.store = 'VolumeUnits';
- config.displayField = 'fullName';
- config.valueField = 'key';
- break;
- case 'timezone':
- config.store = 'AllTimezones';
- config.displayField = 'key';
- break;
- default:
- break;
- }
- } else {
- config.xtype = 'textfield';
- }
- break;
- }
- if (valueField.getXType() !== config.xtype ||
- config.xtype === 'customNumberField' && valueField.dataType !== config.dataType) {
- this.getView().down('form').insert(this.getView().down('form').items.indexOf(valueField), config);
- this.getView().down('form').remove(valueField);
- } else if (config.xtype === 'customNumberField') {
- valueField.setConfig(config);
- valueField.validate();
- } else if (config.xtype === 'combobox') {
- valueField.setConfig(config);
- valueField.setValue();
- }
- }
- }
-});
diff --git a/web/app/view/dialog/Base.js b/web/app/view/dialog/Base.js
deleted file mode 100644
index 6affb370..00000000
--- a/web/app/view/dialog/Base.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Base', {
- extend: 'Ext.window.Window',
-
- bodyPadding: Traccar.Style.normalPadding,
- resizable: false,
- scrollable: true,
- constrain: true,
-
- initComponent: function () {
- if (window.innerHeight) {
- this.maxHeight = window.innerHeight - Traccar.Style.normalPadding * 2;
- }
- this.callParent();
- }
-});
diff --git a/web/app/view/dialog/BaseEdit.js b/web/app/view/dialog/BaseEdit.js
deleted file mode 100644
index 286afba5..00000000
--- a/web/app/view/dialog/BaseEdit.js
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.BaseEdit', {
- extend: 'Traccar.view.dialog.Base',
-
- requires: [
- 'Traccar.view.dialog.BaseEditController'
- ],
-
- controller: 'baseEdit',
-
- buttons: [{
- text: Strings.sharedAttributes,
- handler: 'showAttributesView'
- }, {
- xtype: 'tbfill'
- }, {
- glyph: 'xf00c@FontAwesome',
- reference: 'saveButton',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSaveClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/BaseEditController.js b/web/app/view/dialog/BaseEditController.js
deleted file mode 100644
index 91379e2d..00000000
--- a/web/app/view/dialog/BaseEditController.js
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.BaseEditController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.baseEdit',
-
- requires: [
- 'Traccar.view.BaseWindow',
- 'Traccar.view.edit.Attributes'
- ],
-
- onSaveClick: function (button) {
- var dialog, store, record;
- dialog = button.up('window').down('form');
- dialog.updateRecord();
- record = dialog.getRecord();
- store = record.store;
- if (store) {
- if (record.phantom) {
- store.add(record);
- }
- store.sync({
- failure: function (batch) {
- store.rejectChanges();
- Traccar.app.showError(batch.exceptions[0].getError().response);
- }
- });
- } else {
- record.save();
- }
- this.closeView();
- },
-
- showAttributesView: function (button) {
- var dialog, record;
- dialog = button.up('window').down('form');
- record = dialog.getRecord();
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedAttributes,
- items: {
- xtype: 'attributesView',
- record: record
- }
- }).show();
- }
-});
diff --git a/web/app/view/dialog/Calendar.js b/web/app/view/dialog/Calendar.js
deleted file mode 100644
index 5f00a8be..00000000
--- a/web/app/view/dialog/Calendar.js
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Calendar', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.dialog.CalendarController',
- 'Traccar.view.UnescapedTextField'
- ],
-
- controller: 'calendar',
- title: Strings.sharedCalendar,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedRequired,
- items: [{
- xtype: 'unescapedTextField',
- name: 'name',
- fieldLabel: Strings.sharedName,
- allowBlank: false
- }, {
- xtype: 'filefield',
- name: 'file',
- fieldLabel: Strings.sharedFile,
- allowBlank: false,
- buttonConfig: {
- glyph: 'xf093@FontAwesome',
- text: '',
- tooltip: Strings.sharedSelectFile,
- tooltipType: 'title',
- minWidth: 0
- },
- listeners: {
- change: 'onFileChange'
- }
- }]
- }, {
- xtype: 'hiddenfield',
- name: 'data',
- allowBlank: false,
- reference: 'dataField'
- }]
- }
-});
diff --git a/web/app/view/dialog/CalendarController.js b/web/app/view/dialog/CalendarController.js
deleted file mode 100644
index fb8cbff6..00000000
--- a/web/app/view/dialog/CalendarController.js
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.CalendarController', {
- extend: 'Traccar.view.dialog.BaseEditController',
- alias: 'controller.calendar',
-
- onFileChange: function (fileField) {
- var reader;
- if (fileField.fileInputEl.dom.files.length > 0) {
- reader = new FileReader();
- reader.onload = function (event) {
- fileField.up('window').lookupReference('dataField').setValue(
- event.target.result.substr(event.target.result.indexOf(',') + 1));
- };
- reader.onerror = function (event) {
- Traccar.app.showError(event.target.error);
- };
- reader.readAsDataURL(fileField.fileInputEl.dom.files[0]);
- }
- }
-});
diff --git a/web/app/view/dialog/ComputedAttribute.js b/web/app/view/dialog/ComputedAttribute.js
deleted file mode 100644
index adae7f7b..00000000
--- a/web/app/view/dialog/ComputedAttribute.js
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.ComputedAttribute', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.dialog.ComputedAttributeController',
- 'Traccar.view.UnescapedTextField',
- 'Traccar.view.UnescapedTextAreaField'
- ],
-
- controller: 'computedAttribute',
- title: Strings.sharedComputedAttribute,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'unescapedTextField',
- name: 'description',
- fieldLabel: Strings.sharedDescription
- }, {
- xtype: 'combobox',
- name: 'attribute',
- fieldLabel: Strings.sharedAttribute,
- store: 'PositionAttributes',
- displayField: 'name',
- valueField: 'key',
- listeners: {
- change: 'onAttributeChange'
- }
- }, {
- xtype: 'unescapedTextAreaField',
- reference: 'expressionField',
- name: 'expression',
- fieldLabel: Strings.sharedExpression,
- allowBlank: false
- }, {
- xtype: 'combobox',
- name: 'type',
- reference: 'typeComboField',
- store: 'AttributeValueTypes',
- fieldLabel: Strings.sharedType,
- displayField: 'name',
- valueField: 'id',
- editable: false
- }]
- },
-
- buttons: [{
- glyph: 'xf128@FontAwesome',
- tooltip: Strings.sharedCheckComputedAttribute,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onCheckClick'
- }, {
- glyph: 'xf00c@FontAwesome',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSaveClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/ComputedAttributeController.js b/web/app/view/dialog/ComputedAttributeController.js
deleted file mode 100644
index f680b1b5..00000000
--- a/web/app/view/dialog/ComputedAttributeController.js
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.ComputedAttributeController', {
- extend: 'Traccar.view.dialog.BaseEditController',
- alias: 'controller.computedAttribute',
-
- requires: [
- 'Traccar.view.dialog.SelectDevice'
- ],
-
- onAttributeChange: function (combobox, newValue) {
- var attribute = Ext.getStore('PositionAttributes').getById(newValue);
- if (attribute) {
- this.getView().lookupReference('typeComboField').setValue(attribute.get('valueType'));
- this.getView().lookupReference('typeComboField').setReadOnly(true);
- } else {
- this.getView().lookupReference('typeComboField').setReadOnly(false);
- }
- },
-
- onCheckClick: function (button) {
- var dialog, form;
- dialog = Ext.create('Traccar.view.dialog.SelectDevice');
- form = button.up('window').down('form');
- form.updateRecord();
- dialog.record = form.getRecord();
- dialog.show();
- }
-});
diff --git a/web/app/view/dialog/Device.js b/web/app/view/dialog/Device.js
deleted file mode 100644
index 60a8f716..00000000
--- a/web/app/view/dialog/Device.js
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Device', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.ClearableComboBox',
- 'Traccar.view.dialog.DeviceController',
- 'Traccar.view.UnescapedTextField'
- ],
-
- controller: 'device',
- title: Strings.sharedDevice,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedRequired,
- items: [{
- xtype: 'unescapedTextField',
- name: 'name',
- fieldLabel: Strings.sharedName,
- allowBlank: false
- }, {
- xtype: 'unescapedTextField',
- name: 'uniqueId',
- fieldLabel: Strings.deviceIdentifier,
- allowBlank: false
- }]
- }, {
- xtype: 'fieldset',
- title: Strings.sharedExtra,
- collapsible: true,
- collapsed: true,
- items: [{
- xtype: 'clearableComboBox',
- name: 'groupId',
- fieldLabel: Strings.groupParent,
- store: 'Groups',
- queryMode: 'local',
- displayField: 'name',
- valueField: 'id'
- }, {
- xtype: 'unescapedTextField',
- name: 'phone',
- fieldLabel: Strings.sharedPhone
- }, {
- xtype: 'unescapedTextField',
- name: 'model',
- fieldLabel: Strings.deviceModel
- }, {
- xtype: 'unescapedTextField',
- name: 'contact',
- fieldLabel: Strings.deviceContact
- }, {
- xtype: 'combobox',
- name: 'category',
- fieldLabel: Strings.deviceCategory,
- store: 'DeviceImages',
- queryMode: 'local',
- displayField: 'name',
- valueField: 'key',
- editable: false,
- listConfig: {
- getInnerTpl: function () {
- return '<table><tr valign="middle" ><td><div align="center" style="width:40px;height:40px;" >' +
- '{[new XMLSerializer().serializeToString(Traccar.DeviceImages.getImageSvg(' +
- 'Traccar.Style.mapColorOnline, false, 0, values.key))]}</div></td>' +
- '<td>{name}</td></tr></table>';
- }
- }
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'disabled',
- fieldLabel: Strings.sharedDisabled,
- hidden: true,
- reference: 'disabledField'
- }]
- }]
- }
-});
diff --git a/web/app/view/dialog/DeviceAccumulators.js b/web/app/view/dialog/DeviceAccumulators.js
deleted file mode 100644
index eaa4e9f5..00000000
--- a/web/app/view/dialog/DeviceAccumulators.js
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.DeviceAccumulators', {
- extend: 'Traccar.view.dialog.Base',
-
- requires: [
- 'Traccar.view.dialog.DeviceAccumulatorsController'
- ],
-
- controller: 'deviceAccumulators',
- title: Strings.sharedDeviceAccumulators,
-
- items: [{
- xtype: 'customNumberField',
- dataType: 'distance',
- reference: 'totalDistance',
- fieldLabel: Strings.deviceTotalDistance
- }, {
- xtype: 'customNumberField',
- dataType: 'hours',
- reference: 'hours',
- fieldLabel: Strings.positionHours
- }],
-
- buttons: [{
- reference: 'setButton',
- glyph: 'xf00c@FontAwesome',
- tooltip: Strings.sharedSet,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSetClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/DeviceAccumulatorsController.js b/web/app/view/dialog/DeviceAccumulatorsController.js
deleted file mode 100644
index 2fdae6c5..00000000
--- a/web/app/view/dialog/DeviceAccumulatorsController.js
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.DeviceAccumulatorsController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.deviceAccumulators',
-
- onSetClick: function () {
- var totalDistance, hours, data = {
- deviceId: this.getView().deviceId
- };
- totalDistance = this.lookupReference('totalDistance');
- if (!isNaN(totalDistance.getRawValue())) {
- data.totalDistance = totalDistance.getValue();
- }
- hours = this.lookupReference('hours');
- if (!isNaN(hours.getRawValue())) {
- data.hours = hours.getValue();
- }
- Ext.Ajax.request({
- scope: this,
- method: 'PUT',
- url: 'api/devices/' + data.deviceId + '/accumulators',
- jsonData: Ext.util.JSON.encode(data),
- callback: function (options, success, response) {
- if (!success) {
- Traccar.app.showError(response);
- }
- }
- });
- this.closeView();
- }
-});
diff --git a/web/app/view/dialog/DeviceController.js b/web/app/view/dialog/DeviceController.js
deleted file mode 100644
index d7a4493b..00000000
--- a/web/app/view/dialog/DeviceController.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.DeviceController', {
- extend: 'Traccar.view.dialog.BaseEditController',
- alias: 'controller.device',
-
- init: function () {
- if (Traccar.app.getUser().get('administrator')) {
- this.lookupReference('disabledField').setHidden(false);
- }
- }
-
-});
diff --git a/web/app/view/dialog/Driver.js b/web/app/view/dialog/Driver.js
deleted file mode 100644
index 9b1c17b5..00000000
--- a/web/app/view/dialog/Driver.js
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Driver', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.UnescapedTextField'
- ],
-
- title: Strings.sharedDriver,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedRequired,
- items: [{
- xtype: 'unescapedTextField',
- name: 'name',
- fieldLabel: Strings.sharedName,
- allowBlank: false
- }, {
- xtype: 'unescapedTextField',
- name: 'uniqueId',
- fieldLabel: Strings.deviceIdentifier,
- allowBlank: false
- }]
- }]
- }
-});
diff --git a/web/app/view/dialog/Geofence.js b/web/app/view/dialog/Geofence.js
deleted file mode 100644
index 1e22cd7b..00000000
--- a/web/app/view/dialog/Geofence.js
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Geofence', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.ClearableComboBox',
- 'Traccar.view.dialog.GeofenceController',
- 'Traccar.view.UnescapedTextField'
- ],
-
- controller: 'geofence',
- title: Strings.sharedGeofence,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedRequired,
- items: [{
- xtype: 'unescapedTextField',
- name: 'name',
- fieldLabel: Strings.sharedName
- }]
- }, {
- xtype: 'fieldset',
- title: Strings.sharedExtra,
- collapsible: true,
- collapsed: true,
- items: [{
- xtype: 'unescapedTextField',
- name: 'description',
- fieldLabel: Strings.sharedDescription
- }, {
- xtype: 'clearableComboBox',
- reference: 'calendarCombo',
- name: 'calendarId',
- store: 'Calendars',
- queryMode: 'local',
- displayField: 'name',
- valueField: 'id',
- fieldLabel: Strings.sharedCalendar
- }, {
- xtype: 'hiddenfield',
- name: 'area',
- allowBlank: false,
- reference: 'areaField'
- }]
- }]
- },
-
- buttons: [{
- text: Strings.sharedArea,
- glyph: 'xf21d@FontAwesome',
- handler: 'onAreaClick'
- }, {
- text: Strings.sharedAttributes,
- handler: 'showAttributesView'
- }, {
- xtype: 'tbfill'
- }, {
- glyph: 'xf00c@FontAwesome',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSaveClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/GeofenceController.js b/web/app/view/dialog/GeofenceController.js
deleted file mode 100644
index e4ac5a2e..00000000
--- a/web/app/view/dialog/GeofenceController.js
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.GeofenceController', {
- extend: 'Traccar.view.dialog.BaseEditController',
- alias: 'controller.geofence',
-
- requires: [
- 'Traccar.view.BaseWindow',
- 'Traccar.view.map.GeofenceMap'
- ],
-
- config: {
- listen: {
- controller: {
- '*': {
- savearea: 'saveArea'
- }
- }
- }
- },
-
- init: function () {
- this.lookupReference('calendarCombo').setHidden(
- Traccar.app.getBooleanAttributePreference('ui.disableCalendars'));
- },
-
- saveArea: function (value) {
- this.lookupReference('areaField').setValue(value);
- },
-
- onAreaClick: function (button) {
- var dialog, record;
- dialog = button.up('window').down('form');
- record = dialog.getRecord();
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedArea,
- items: {
- xtype: 'geofenceMapView',
- area: record.get('area')
- }
- }).show();
- }
-});
diff --git a/web/app/view/dialog/Group.js b/web/app/view/dialog/Group.js
deleted file mode 100644
index 61ca193d..00000000
--- a/web/app/view/dialog/Group.js
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Group', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.ClearableComboBox',
- 'Traccar.view.UnescapedTextField'
- ],
-
- title: Strings.groupDialog,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedRequired,
- items: [{
- xtype: 'unescapedTextField',
- name: 'name',
- fieldLabel: Strings.sharedName,
- allowBlank: false
- }]
- }, {
- xtype: 'fieldset',
- title: Strings.sharedExtra,
- collapsible: true,
- collapsed: true,
- items: [{
- xtype: 'clearableComboBox',
- name: 'groupId',
- fieldLabel: Strings.groupParent,
- store: 'Groups',
- queryMode: 'local',
- displayField: 'name',
- valueField: 'id'
- }]
- }]
- }
-});
diff --git a/web/app/view/dialog/Login.js b/web/app/view/dialog/Login.js
deleted file mode 100644
index 592efb33..00000000
--- a/web/app/view/dialog/Login.js
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * Copyright 2015 - 2023 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Login', {
- extend: 'Traccar.view.dialog.Base',
- alias: 'widget.login',
-
- requires: [
- 'Traccar.view.dialog.LoginController'
- ],
-
- controller: 'login',
-
- header: false,
- closable: false,
-
- items: {
- xtype: 'form',
- reference: 'form',
-
- autoEl: {
- tag: 'form',
- method: 'POST',
- action: 'fake-login.html',
- target: 'submitTarget'
- },
-
- items: [{
- xtype: 'image',
- src: 'logo.svg',
- alt: Strings.loginLogo,
- width: 240,
- height: 64,
- style: {
- display: 'block',
- margin: '10px auto 25px'
- }
- }, {
- xtype: 'pickerfield',
- fieldLabel: Strings.settingsServer,
- editable: false,
- value: window.location.host,
- hidden: !window.appInterface && !(window.webkit && window.webkit.messageHandlers.appInterface),
- createPicker: function () {
- var self = this, popup = Ext.create({
- xtype: 'window',
- closeAction: 'hide',
- referenceHolder: true,
- minWidth: 204,
- layout: 'form',
- header: false,
- resizable: true,
- items: [{
- xtype: 'textfield',
- anchor: '100%',
- reference: 'serverAddress',
- value: window.location.href
- }],
- fbar: [{
- text: Strings.sharedSet,
- handler: function () {
- var message = 'server|' + popup.lookupReference('serverAddress').getValue();
- if (window.webkit && window.webkit.messageHandlers.appInterface) {
- window.webkit.messageHandlers.appInterface.postMessage(message);
- }
- if (window.appInterface) {
- window.appInterface.postMessage(message);
- }
- }
- }, {
- text: Strings.sharedCancel,
- handler: function () {
- self.collapse();
- }
- }]
- });
- return popup;
- }
- }, {
- xtype: 'combobox',
- name: 'language',
- fieldLabel: Strings.loginLanguage,
- store: 'Languages',
- displayField: 'name',
- valueField: 'code',
- editable: false,
- submitValue: false,
- listeners: {
- select: 'onSelectLanguage'
- },
- reference: 'languageField'
- }, {
- xtype: 'textfield',
- name: 'email',
- reference: 'userField',
- fieldLabel: Strings.userEmail,
- allowBlank: false,
- enableKeyEvents: true,
- listeners: {
- specialKey: 'onSpecialKey',
- afterrender: 'onAfterRender'
- },
- inputAttrTpl: ['autocomplete="on" autocapitalize="none"']
- }, {
- xtype: 'textfield',
- name: 'password',
- reference: 'passwordField',
- fieldLabel: Strings.userPassword,
- inputType: 'password',
- allowBlank: false,
- enableKeyEvents: true,
- listeners: {
- specialKey: 'onSpecialKey'
- },
- inputAttrTpl: ['autocomplete="on"']
- }, {
- xtype: 'component',
- html: '<iframe id="submitTarget" name="submitTarget" style="display:none"></iframe>'
- }, {
- xtype: 'component',
- html: '<input type="submit" id="submitButton" style="display:none">'
- }]
- },
-
- buttons: [{
- text: Strings.loginReset,
- handler: 'onResetClick',
- reference: 'resetButton'
- }, {
- text: Strings.loginRegister,
- handler: 'onRegisterClick',
- reference: 'registerButton'
- }, {
- text: Strings.loginLogin,
- handler: 'onLoginClick'
- }]
-});
diff --git a/web/app/view/dialog/LoginController.js b/web/app/view/dialog/LoginController.js
deleted file mode 100644
index a21866eb..00000000
--- a/web/app/view/dialog/LoginController.js
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Copyright 2015 - 2023 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.LoginController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.login',
-
- requires: [
- 'Traccar.view.dialog.Register'
- ],
-
- init: function () {
- this.lookupReference('resetButton').setHidden(!Traccar.app.getServer().get('emailEnabled'));
- this.lookupReference('registerButton').setDisabled(!Traccar.app.getServer().get('registration'));
- this.lookupReference('languageField').setValue(Locale.language);
- },
-
- login: function () {
- var form = this.lookupReference('form');
- if (form.isValid()) {
- Ext.get('spinner').setVisible(true);
- this.getView().setVisible(false);
- Ext.Ajax.request({
- scope: this,
- method: 'POST',
- url: 'api/session',
- params: form.getValues(),
- callback: function (options, success, response) {
- Ext.get('spinner').setVisible(false);
- if (success) {
- Traccar.app.setUser(Ext.decode(response.responseText));
- this.fireViewEvent('login');
- } else {
- this.getView().setVisible(true);
- if (response.status === 401) {
- Traccar.app.showError(Strings.loginFailed);
- } else {
- Traccar.app.showError(response.responseText);
- }
- }
- }
- });
- }
- },
-
- logout: function () {
- Ext.util.Cookies.clear('user');
- Ext.util.Cookies.clear('password');
- Ext.Ajax.request({
- scope: this,
- method: 'DELETE',
- url: 'api/session',
- callback: function () {
- window.location.reload();
- }
- });
- },
-
- onSelectLanguage: function (selected) {
- var paramName, paramValue, url, prefix, suffix;
- paramName = 'locale';
- paramValue = selected.getValue();
- url = window.location.href;
- if (url.indexOf(paramName + '=') >= 0) {
- prefix = url.substring(0, url.indexOf(paramName));
- suffix = url.substring(url.indexOf(paramName));
- suffix = suffix.substring(suffix.indexOf('=') + 1);
- suffix = suffix.indexOf('&') >= 0 ? suffix.substring(suffix.indexOf('&')) : '';
- url = prefix + paramName + '=' + paramValue + suffix;
- } else if (url.indexOf('?') < 0) {
- url += '?' + paramName + '=' + paramValue;
- } else {
- url += '&' + paramName + '=' + paramValue;
- }
- window.location.href = url;
- },
-
- onAfterRender: function (field) {
- field.focus();
- },
-
- onSpecialKey: function (field, e) {
- if (e.getKey() === e.ENTER) {
- this.login();
- }
- },
-
- onLoginClick: function () {
- Ext.getElementById('submitButton').click();
- this.login();
- },
-
- onRegisterClick: function () {
- Ext.create('Traccar.view.dialog.Register').show();
- },
-
- onResetClick: function () {
- Ext.Msg.prompt(Strings.loginReset, Strings.userEmail, function (btn, text) {
- if (btn === 'ok') {
- Ext.Ajax.request({
- scope: this,
- method: 'POST',
- url: 'api/password/reset',
- params: {
- email: text
- },
- callback: function (options, success, response) {
- if (success) {
- Traccar.app.showToast(Strings.loginResetSuccess);
- } else {
- Traccar.app.showError(response.responseText);
- }
- }
- });
- }
- });
- }
-});
diff --git a/web/app/view/dialog/Maintenance.js b/web/app/view/dialog/Maintenance.js
deleted file mode 100644
index d844d259..00000000
--- a/web/app/view/dialog/Maintenance.js
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Maintenance', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.dialog.MaintenanceController',
- 'Traccar.view.CustomNumberField',
- 'Traccar.view.UnescapedTextField'
- ],
-
- controller: 'maintenance',
-
- title: Strings.sharedMaintenance,
-
- items: {
- xtype: 'form',
- listeners: {
- validitychange: 'onValidityChange'
- },
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedRequired,
- items: [{
- xtype: 'unescapedTextField',
- name: 'name',
- fieldLabel: Strings.sharedName,
- allowBlank: false
- }, {
- xtype: 'combobox',
- name: 'type',
- reference: 'typeComboField',
- fieldLabel: Strings.sharedType,
- displayField: 'name',
- valueField: 'key',
- allowBlank: false,
- queryMode: 'local',
- store: 'MaintenanceTypes',
- listeners: {
- change: 'onNameChange'
- }
- }, {
- xtype: 'customNumberField',
- name: 'start',
- reference: 'startField',
- fieldLabel: Strings.maintenanceStart
- }, {
- xtype: 'customNumberField',
- name: 'period',
- reference: 'periodField',
- allowBlank: false,
- fieldLabel: Strings.maintenancePeriod,
- validator: function (value) {
- return this.parseValue(value) !== 0 ? true : Strings.errorZero;
- }
- }]
- }]
- }
-});
diff --git a/web/app/view/dialog/MaintenanceController.js b/web/app/view/dialog/MaintenanceController.js
deleted file mode 100644
index d5a27b54..00000000
--- a/web/app/view/dialog/MaintenanceController.js
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.MaintenanceController', {
- extend: 'Traccar.view.dialog.BaseEditController',
- alias: 'controller.maintenance',
-
- init: function () {
- this.startConfig = Ext.clone(this.lookupReference('startField').initialConfig);
- this.startConfig.value = 0;
- this.periodConfig = Ext.clone(this.lookupReference('periodField').initialConfig);
- this.periodConfig.value = 0;
- this.lookupReference('saveButton').setDisabled(true);
- },
-
- onValidityChange: function (form, valid) {
- this.lookupReference('saveButton').setDisabled(!valid);
- },
-
- updateFieldConfig: function (fieldReference, initialConfig, newConfig) {
- var field = this.lookupReference(fieldReference);
- if (field.dataType !== newConfig.dataType) {
- this.getView().down('fieldset').insert(this.getView().down('fieldset').items.indexOf(field),
- Ext.merge({}, initialConfig, newConfig));
- this.getView().down('fieldset').remove(field);
- this.lookupReference(fieldReference).validate();
- } else {
- field.setConfig(newConfig);
- field.validate();
- }
- },
-
- onNameChange: function (combobox, newValue) {
- var attribute, config = {};
- attribute = combobox.getStore().getById(newValue);
- if (attribute) {
- if (attribute.get('allowDecimals') !== undefined) {
- config.allowDecimals = attribute.get('allowDecimals');
- } else {
- config.allowDecimals = true;
- }
- config.dataType = attribute.get('dataType');
- config.maxValue = attribute.get('maxValue');
- config.minValue = attribute.get('minValue');
- }
-
- this.updateFieldConfig('startField', this.startConfig, config);
- this.updateFieldConfig('periodField', this.periodConfig, config);
- }
-});
diff --git a/web/app/view/dialog/MapPickerController.js b/web/app/view/dialog/MapPickerController.js
deleted file mode 100644
index 8641e377..00000000
--- a/web/app/view/dialog/MapPickerController.js
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.MapPickerController', {
- extend: 'Traccar.view.dialog.BaseEditController',
- alias: 'controller.mapPicker',
-
- config: {
- listen: {
- controller: {
- '*': {
- mapstate: 'setMapState'
- }
- }
- }
- },
-
- getMapState: function () {
- this.fireEvent('mapstaterequest');
- },
-
- setMapState: function (lat, lon, zoom) {
- this.lookupReference('latitude').setValue(lat);
- this.lookupReference('longitude').setValue(lon);
- this.lookupReference('zoom').setValue(zoom);
- }
-});
diff --git a/web/app/view/dialog/Notification.js b/web/app/view/dialog/Notification.js
deleted file mode 100644
index 51af5b8e..00000000
--- a/web/app/view/dialog/Notification.js
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Notification', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.ClearableComboBox',
- 'Traccar.view.dialog.NotificationController'
- ],
-
- controller: 'notification',
- title: Strings.sharedNotification,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedRequired,
- items: [{
- xtype: 'combobox',
- name: 'type',
- fieldLabel: Strings.sharedType,
- store: 'AllNotificationTypes',
- queryMode: 'local',
- displayField: 'name',
- valueField: 'type',
- editable: false,
- allowBlank: false,
- listeners: {
- change: 'onTypeChange'
- }
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'always',
- fieldLabel: Strings.notificationAlways
- }, {
- xtype: 'tagfield',
- reference: 'alarmsField',
- fieldLabel: Strings.sharedAlarms,
- maxWidth: Traccar.Style.formFieldWidth,
- store: 'AlarmTypes',
- valueField: 'key',
- displayField: 'name',
- queryMode: 'local',
- hidden: true,
- listeners: {
- beforerender: 'onAlarmsLoad',
- change: 'onAlarmsChange'
- }
- }, {
- xtype: 'tagfield',
- fieldLabel: Strings.notificationNotificators,
- name: 'notificators',
- maxWidth: Traccar.Style.formFieldWidth,
- store: 'AllNotificators',
- valueField: 'type',
- displayField: 'name',
- queryMode: 'local'
- }]
- }, {
- xtype: 'fieldset',
- title: Strings.sharedExtra,
- collapsible: true,
- collapsed: true,
- items: [{
- xtype: 'clearableComboBox',
- reference: 'calendarCombo',
- name: 'calendarId',
- store: 'Calendars',
- queryMode: 'local',
- displayField: 'name',
- valueField: 'id',
- fieldLabel: Strings.sharedCalendar
- }]
- }]
- }
-});
diff --git a/web/app/view/dialog/NotificationController.js b/web/app/view/dialog/NotificationController.js
deleted file mode 100644
index 5da669a4..00000000
--- a/web/app/view/dialog/NotificationController.js
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.NotificationController', {
- extend: 'Traccar.view.dialog.BaseEditController',
- alias: 'controller.notification',
-
- init: function () {
- this.lookupReference('calendarCombo').setHidden(
- Traccar.app.getBooleanAttributePreference('ui.disableCalendars'));
- },
-
- onTypeChange: function (view, value) {
- this.lookupReference('alarmsField').setHidden(value !== 'alarm');
- },
-
- onAlarmsLoad: function (view) {
- var attributes, record = view.up('form').getRecord();
- attributes = record.get('attributes') || {};
- if (attributes['alarms']) {
- view.suspendEvents(false);
- view.setValue(attributes['alarms'].split(','));
- view.resumeEvents();
- }
- },
-
- onAlarmsChange: function (view, value) {
- var attributes, record = view.up('window').down('form').getRecord();
- attributes = record.get('attributes') || {};
-
- value = value.join();
- if (attributes['alarms'] !== value) {
- attributes['alarms'] = value;
- record.set('attributes', attributes);
- record.dirty = true;
- }
- }
-});
diff --git a/web/app/view/dialog/Register.js b/web/app/view/dialog/Register.js
deleted file mode 100644
index f9608cef..00000000
--- a/web/app/view/dialog/Register.js
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Register', {
- extend: 'Traccar.view.dialog.Base',
-
- requires: [
- 'Traccar.view.dialog.RegisterController'
- ],
-
- controller: 'register',
-
- title: Strings.loginRegister,
-
- items: {
- xtype: 'form',
- reference: 'form',
- jsonSubmit: true,
-
- items: [{
- xtype: 'textfield',
- name: 'name',
- fieldLabel: Strings.sharedName,
- allowBlank: false
- }, {
- xtype: 'textfield',
- name: 'email',
- fieldLabel: Strings.userEmail,
- validator: function (val) {
- if (/(.+)@(.+)\.(.{2,})/.test(val)) {
- return true;
- } else {
- return Ext.form.field.VTypes.emailText;
- }
- },
- allowBlank: false
- }, {
- xtype: 'textfield',
- name: 'password',
- fieldLabel: Strings.userPassword,
- inputType: 'password',
- allowBlank: false
- }]
- },
-
- buttons: [{
- text: Strings.sharedSave,
- handler: 'onCreateClick'
- }, {
- text: Strings.sharedCancel,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/RegisterController.js b/web/app/view/dialog/RegisterController.js
deleted file mode 100644
index c102581e..00000000
--- a/web/app/view/dialog/RegisterController.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.RegisterController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.register',
-
- onCreateClick: function () {
- var form = this.lookupReference('form');
- if (form.isValid()) {
- Ext.Ajax.request({
- scope: this,
- method: 'POST',
- url: 'api/users',
- jsonData: form.getValues(),
- callback: this.onCreateReturn
- });
- }
- },
-
- onCreateReturn: function (options, success, response) {
- if (success) {
- this.closeView();
- Traccar.app.showToast(Strings.loginCreated);
- } else {
- Traccar.app.showError(response);
- }
- }
-
-});
diff --git a/web/app/view/dialog/ReportConfig.js b/web/app/view/dialog/ReportConfig.js
deleted file mode 100644
index 35cc95b4..00000000
--- a/web/app/view/dialog/ReportConfig.js
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.ReportConfig', {
- extend: 'Traccar.view.dialog.Base',
-
- requires: [
- 'Traccar.view.dialog.ReportConfigController',
- 'Traccar.view.CustomTimeField'
- ],
-
- controller: 'reportConfig',
- title: Strings.reportConfigure,
-
- items: [{
- fieldLabel: Strings.reportDevice,
- xtype: 'tagfield',
- reference: 'deviceField',
- maxWidth: Traccar.Style.formFieldWidth,
- store: 'Devices',
- valueField: 'id',
- displayField: 'name',
- queryMode: 'local'
- }, {
- fieldLabel: Strings.reportGroup,
- xtype: 'tagfield',
- reference: 'groupField',
- maxWidth: Traccar.Style.formFieldWidth,
- store: 'Groups',
- valueField: 'id',
- displayField: 'name',
- queryMode: 'local'
- }, {
- fieldLabel: Strings.reportEventTypes,
- xtype: 'tagfield',
- reference: 'eventTypeField',
- maxWidth: Traccar.Style.formFieldWidth,
- store: 'ReportEventTypes',
- hidden: true,
- valueField: 'type',
- displayField: 'name',
- queryMode: 'local'
- }, {
- fieldLabel: Strings.reportChartType,
- xtype: 'combobox',
- reference: 'chartTypeField',
- store: 'ReportChartTypes',
- hidden: true,
- value: 'speed',
- valueField: 'key',
- displayField: 'name',
- queryMode: 'local'
- }, {
- fieldLabel: Strings.reportShowMarkers,
- xtype: 'checkbox',
- reference: 'showMarkersField',
- inputValue: true,
- uncheckedValue: false,
- value: false
- }, {
- fieldLabel: Strings.reportPeriod,
- reference: 'periodField',
- xtype: 'combobox',
- store: 'ReportPeriods',
- editable: false,
- valueField: 'key',
- displayField: 'name',
- queryMode: 'local',
- listeners: {
- change: 'onPeriodChange'
- }
- }, {
- xtype: 'fieldcontainer',
- layout: 'vbox',
- reference: 'fromContainer',
- hidden: true,
- fieldLabel: Strings.reportFrom,
- items: [{
- xtype: 'datefield',
- reference: 'fromDateField',
- startDay: Traccar.Style.weekStartDay,
- format: Traccar.Style.dateFormat,
- value: new Date(new Date().getTime() - 30 * 60 * 1000)
- }, {
- xtype: 'customTimeField',
- reference: 'fromTimeField',
- value: new Date(new Date().getTime() - 30 * 60 * 1000)
- }]
- }, {
- xtype: 'fieldcontainer',
- layout: 'vbox',
- reference: 'toContainer',
- hidden: true,
- fieldLabel: Strings.reportTo,
- items: [{
- xtype: 'datefield',
- reference: 'toDateField',
- startDay: Traccar.Style.weekStartDay,
- format: Traccar.Style.dateFormat,
- value: new Date()
- }, {
- xtype: 'customTimeField',
- reference: 'toTimeField',
- value: new Date()
- }]
- }],
-
- buttons: [{
- glyph: 'xf00c@FontAwesome',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSaveClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/ReportConfigController.js b/web/app/view/dialog/ReportConfigController.js
deleted file mode 100644
index 6d029428..00000000
--- a/web/app/view/dialog/ReportConfigController.js
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.ReportConfigController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.reportConfig',
-
- requires: [
- 'Traccar.store.ReportEventTypes',
- 'Traccar.store.AllNotifications'
- ],
-
- onSaveClick: function (button) {
- var eventType, callingPanel;
- callingPanel = this.getView().callingPanel;
-
- callingPanel.deviceId = this.lookupReference('deviceField').getValue();
- callingPanel.groupId = this.lookupReference('groupField').getValue();
- eventType = this.lookupReference('eventTypeField').getValue();
- if (eventType.indexOf(Traccar.store.ReportEventTypes.allEvents) > -1) {
- eventType = [Traccar.store.ReportEventTypes.allEvents];
- } else if (eventType.length === this.lookupReference('eventTypeField').getStore().getCount() - 1) {
- eventType = [Traccar.store.ReportEventTypes.allEvents];
- }
- callingPanel.eventType = eventType;
- callingPanel.chartType = this.lookupReference('chartTypeField').getValue();
- callingPanel.showMarkers = this.lookupReference('showMarkersField').getValue();
- callingPanel.fromDate = this.lookupReference('fromDateField').getValue();
- callingPanel.fromTime = this.lookupReference('fromTimeField').getValue();
- callingPanel.toDate = this.lookupReference('toDateField').getValue();
- callingPanel.toTime = this.lookupReference('toTimeField').getValue();
- callingPanel.period = this.lookupReference('periodField').getValue();
- callingPanel.updateButtons();
- button.up('window').close();
- },
-
- onPeriodChange: function (combobox, newValue) {
- var day, first, from, to, custom = newValue === 'custom';
- this.lookupReference('fromContainer').setHidden(!custom);
- this.lookupReference('toContainer').setHidden(!custom);
- if (!custom) {
- from = new Date();
- to = new Date();
- switch (newValue) {
- case 'today':
- to.setDate(to.getDate() + 1);
- break;
- case 'yesterday':
- from.setDate(to.getDate() - 1);
- break;
- case 'thisWeek':
- day = from.getDay();
- first = from.getDate() - day + (day === 0 ? -6 : 1);
- from.setDate(first);
- to.setDate(first + 7);
- break;
- case 'previousWeek':
- day = from.getDay();
- first = from.getDate() - day + (day === 0 ? -6 : 1);
- from.setDate(first - 7);
- to.setDate(first);
- break;
- case 'thisMonth':
- from.setDate(1);
- to.setDate(1);
- to.setMonth(from.getMonth() + 1);
- break;
- case 'previousMonth':
- from.setDate(1);
- from.setMonth(from.getMonth() - 1);
- to.setDate(1);
- break;
- default:
- break;
- }
- from.setHours(0, 0, 0, 0);
- to.setHours(0, 0, 0, 0);
- this.lookupReference('fromDateField').setValue(from);
- this.lookupReference('fromTimeField').setValue(from);
- this.lookupReference('toDateField').setValue(to);
- this.lookupReference('toTimeField').setValue(to);
- }
- }
-});
diff --git a/web/app/view/dialog/SavedCommand.js b/web/app/view/dialog/SavedCommand.js
deleted file mode 100644
index b1aeae73..00000000
--- a/web/app/view/dialog/SavedCommand.js
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.SavedCommand', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.dialog.SavedCommandController',
- 'Traccar.view.UnescapedTextField'
- ],
-
- controller: 'savedCommand',
- title: Strings.sharedSavedCommand,
-
- items: [{
- xtype: 'form',
- listeners: {
- validitychange: 'onValidityChange'
- },
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedRequired,
- items: [{
- xtype: 'unescapedTextField',
- name: 'description',
- fieldLabel: Strings.sharedDescription
- }, {
- xtype: 'checkboxfield',
- name: 'textChannel',
- inputValue: true,
- uncheckedValue: false,
- fieldLabel: Strings.commandSendSms
- }, {
- xtype: 'combobox',
- name: 'type',
- reference: 'commandType',
- fieldLabel: Strings.sharedType,
- store: 'AllCommandTypes',
- queryMode: 'local',
- displayField: 'name',
- valueField: 'type',
- editable: false,
- allowBlank: false,
- listeners: {
- change: 'onTypeChange'
- }
- }, {
- xtype: 'fieldcontainer',
- reference: 'parameters'
- }]
- }]
- }],
-
- buttons: [{
- glyph: 'xf00c@FontAwesome',
- reference: 'saveButton',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- disabled: true,
- handler: 'onSaveClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/SavedCommandController.js b/web/app/view/dialog/SavedCommandController.js
deleted file mode 100644
index 37c56603..00000000
--- a/web/app/view/dialog/SavedCommandController.js
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.SavedCommandController', {
- extend: 'Traccar.view.dialog.BaseEditController',
- alias: 'controller.savedCommand',
-
- defaultFieldConfig: {
- allowBlank: false
- },
-
- onTypeChange: function (combo, newValue) {
- var i, config, command, parameters, parameter, record;
- record = combo.up('window').down('form').getRecord();
- this.lookupReference('parameters').removeAll();
- command = Ext.getStore('KnownCommands').getById(newValue);
- if (command && command.get('parameters')) {
- parameters = command.get('parameters');
- for (i = 0; i < parameters.length; i++) {
- parameter = new Traccar.model.KnownAttribute(parameters[i]);
- config = Ext.clone(this.defaultFieldConfig);
- config.key = parameter.get('key');
- config.fieldLabel = parameter.get('name');
- if (record.get('attributes')) {
- config.value = record.get('attributes')[parameter.get('key')];
- }
- config.disabled = combo.isDisabled();
- switch (parameter.get('valueType')) {
- case 'number':
- config.xtype = 'customNumberField';
- if (parameter.get('allowDecimals') !== undefined) {
- config.allowDecimals = parameter.get('allowDecimals');
- } else {
- config.allowDecimals = true;
- }
- config.dataType = parameter.get('dataType');
- config.maxValue = parameter.get('maxValue');
- config.minValue = parameter.get('minValue');
- break;
- case 'boolean':
- config.xtype = 'checkboxfield';
- config.inputValue = true;
- config.uncheckedValue = false;
- break;
- default:
- if (parameter.get('dataType') === 'timezone') {
- config.xtype = 'combobox';
- config.queryMode = 'local';
- config.displayField = 'key';
- config.editable = false;
- config.store = 'AllTimezones';
- } else {
- config.xtype = 'textfield';
- }
- }
- this.lookupReference('parameters').add(config);
- }
- }
- },
-
- fillAttributes: function (button) {
- var i, form, record, parameters, attributes = {};
-
- form = button.up('window').down('form');
- form.updateRecord();
- record = form.getRecord();
- parameters = this.lookupReference('parameters').items.items;
-
- for (i = 0; i < parameters.length; i++) {
- attributes[parameters[i].key] = parameters[i].getValue();
- }
-
- record.set('attributes', attributes);
- },
-
- onSaveClick: function (button) {
- this.fillAttributes(button);
- this.callParent(arguments);
- },
-
- onValidityChange: function (form, valid) {
- this.lookupReference('saveButton').setDisabled(!valid);
- }
-
-});
diff --git a/web/app/view/dialog/SelectDevice.js b/web/app/view/dialog/SelectDevice.js
deleted file mode 100644
index 5b11c03f..00000000
--- a/web/app/view/dialog/SelectDevice.js
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.dialog.SelectDevice', {
- extend: 'Traccar.view.dialog.Base',
-
- requires: [
- 'Traccar.view.dialog.SelectDeviceController'
- ],
-
- controller: 'selectDevice',
- title: Strings.sharedDevice,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'combobox',
- reference: 'deviceField',
- store: 'Devices',
- queryMode: 'local',
- displayField: 'name',
- valueField: 'id',
- editable: false,
- listeners: {
- change: 'onDeviceChange'
- }
- }]
- },
-
- buttons: [{
- glyph: 'xf00c@FontAwesome',
- reference: 'saveButton',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSaveClick',
- disabled: true
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/SelectDeviceController.js b/web/app/view/dialog/SelectDeviceController.js
deleted file mode 100644
index 9437991c..00000000
--- a/web/app/view/dialog/SelectDeviceController.js
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.SelectDeviceController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.selectDevice',
-
- onSaveClick: function (button) {
- var deviceId, record;
- deviceId = this.lookupReference('deviceField').getValue();
- record = this.getView().record.data;
- Ext.Ajax.request({
- url: 'api/attributes/computed/test?deviceId=' + deviceId,
- method: 'POST',
- jsonData: Ext.util.JSON.encode(record),
- callback: function (options, success, response) {
- if (success) {
- Ext.Msg.alert(Strings.sharedInfoTitle, response.responseText || response.statusText);
- } else {
- Traccar.app.showError(response);
- }
- }
- });
- button.up('window').close();
- },
-
- onDeviceChange: function (combobox, newValue) {
- this.lookupReference('saveButton').setDisabled(newValue === null);
- }
-});
diff --git a/web/app/view/dialog/SendCommand.js b/web/app/view/dialog/SendCommand.js
deleted file mode 100644
index 79954739..00000000
--- a/web/app/view/dialog/SendCommand.js
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.SendCommand', {
- extend: 'Traccar.view.dialog.Base',
-
- requires: [
- 'Traccar.view.dialog.SendCommandController'
- ],
-
- controller: 'sendCommand',
- title: Strings.commandTitle,
-
- items: [{
- xtype: 'combobox',
- reference: 'commandsComboBox',
- fieldLabel: Strings.deviceCommand,
- displayField: 'description',
- valueField: 'id',
- store: 'DeviceCommands',
- queryMode: 'local',
- editable: false,
- allowBlank: false,
- listeners: {
- select: 'onCommandSelect'
- }
- }, {
- xtype: 'form',
- listeners: {
- validitychange: 'onValidityChange'
- },
- items: [{
- xtype: 'fieldset',
- reference: 'newCommandFields',
- disabled: true,
- items: [{
- xtype: 'checkboxfield',
- name: 'textChannel',
- reference: 'textChannelCheckBox',
- inputValue: true,
- uncheckedValue: false,
- fieldLabel: Strings.commandSendSms,
- listeners: {
- change: 'onTextChannelChange'
- }
- }, {
- xtype: 'combobox',
- name: 'type',
- reference: 'commandType',
- fieldLabel: Strings.sharedType,
- store: 'CommandTypes',
- displayField: 'name',
- valueField: 'type',
- editable: false,
- allowBlank: false,
- listeners: {
- change: 'onTypeChange'
- }
- }, {
- xtype: 'fieldcontainer',
- reference: 'parameters'
- }]
- }]
- }],
-
- buttons: [{
- xtype: 'tbfill'
- }, {
- glyph: 'xf093@FontAwesome',
- tooltip: Strings.sharedSend,
- tooltipType: 'title',
- minWidth: 0,
- disabled: true,
- reference: 'sendButton',
- handler: 'onSendClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/SendCommandController.js b/web/app/view/dialog/SendCommandController.js
deleted file mode 100644
index c6351587..00000000
--- a/web/app/view/dialog/SendCommandController.js
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.SendCommandController', {
- extend: 'Traccar.view.dialog.SavedCommandController',
- alias: 'controller.sendCommand',
-
- requires: [
- 'Traccar.view.permissions.SavedCommands'
- ],
-
- onSendClick: function (button) {
- var record;
- this.fillAttributes(button);
- record = button.up('window').down('form').getRecord();
-
- Ext.Ajax.request({
- scope: this,
- url: 'api/commands/send',
- jsonData: record.getData(),
- callback: this.onSendResult
- });
- },
-
- onValidityChange: function (form, valid) {
- this.lookupReference('sendButton').setDisabled(!valid ||
- this.lookupReference('commandsComboBox').getValue() === null);
- },
-
- onTextChannelChange: function (checkbox, newValue) {
- var typesStore = this.lookupReference('commandType').getStore();
- typesStore.getProxy().setExtraParam('textChannel', newValue);
- typesStore.reload();
- },
-
- onCommandSelect: function (selected) {
- var record, form, command = selected.getStore().getById(selected.getValue());
- command.set('deviceId', this.getView().deviceId);
- form = selected.up('window').down('form');
- record = form.getRecord();
- form.loadRecord(command);
- if (record && command.get('type') === record.get('type')) {
- this.onTypeChange(this.lookupReference('commandType'), command.get('type'));
- }
-
- this.lookupReference('newCommandFields').setDisabled(command.getId() !== 0);
- this.lookupReference('sendButton').setDisabled(command.getId() === 0);
- },
-
- onSendResult: function (options, success, response) {
- if (success) {
- this.closeView();
- Traccar.app.showToast(response.status === 202 ? Strings.commandQueued : Strings.commandSent);
- } else {
- Traccar.app.showError(response);
- }
- },
-
- closeView: function () {
- this.lookupReference('commandsComboBox').getStore().removeAll();
- this.callParent(arguments);
- }
-});
diff --git a/web/app/view/dialog/Server.js b/web/app/view/dialog/Server.js
deleted file mode 100644
index 6ee250b6..00000000
--- a/web/app/view/dialog/Server.js
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.Server', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.ClearableComboBox',
- 'Traccar.view.dialog.MapPickerController',
- 'Traccar.view.UnescapedTextField'
- ],
-
- controller: 'mapPicker',
- title: Strings.serverTitle,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedPreferences,
- items: [{
- xtype: 'clearableComboBox',
- name: 'map',
- fieldLabel: Strings.mapLayer,
- store: 'MapTypes',
- displayField: 'name',
- valueField: 'key'
- }, {
- xtype: 'unescapedTextField',
- name: 'bingKey',
- fieldLabel: Strings.mapBingKey
- }, {
- xtype: 'unescapedTextField',
- reference: 'mapUrlField',
- name: 'mapUrl',
- fieldLabel: Strings.mapCustomLabel
- }, {
- xtype: 'numberfield',
- reference: 'latitude',
- name: 'latitude',
- fieldLabel: Strings.positionLatitude,
- decimalPrecision: Traccar.Style.coordinatePrecision
- }, {
- xtype: 'numberfield',
- reference: 'longitude',
- name: 'longitude',
- fieldLabel: Strings.positionLongitude,
- decimalPrecision: Traccar.Style.coordinatePrecision
- }, {
- xtype: 'numberfield',
- reference: 'zoom',
- name: 'zoom',
- fieldLabel: Strings.serverZoom
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'twelveHourFormat',
- fieldLabel: Strings.settingsTwelveHourFormat
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'forceSettings',
- fieldLabel: Strings.serverForceSettings
- }, {
- xtype: 'clearableComboBox',
- name: 'coordinateFormat',
- fieldLabel: Strings.settingsCoordinateFormat,
- store: 'CoordinateFormats',
- displayField: 'name',
- valueField: 'key'
- }, {
- xtype: 'unescapedTextField',
- name: 'poiLayer',
- fieldLabel: Strings.mapPoiLayer
- }, {
- xtype: 'unescapedTextField',
- name: 'announcement',
- fieldLabel: Strings.serverAnnouncement
- }]
- }, {
- xtype: 'fieldset',
- title: Strings.sharedPermissions,
- collapsible: true,
- collapsed: true,
- items: [{
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'registration',
- fieldLabel: Strings.serverRegistration
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'readonly',
- fieldLabel: Strings.serverReadonly
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'deviceReadonly',
- fieldLabel: Strings.userDeviceReadonly
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'limitCommands',
- fieldLabel: Strings.userLimitCommands
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'disableReports',
- fieldLabel: Strings.userDisableReports
- }]
- }]
- },
-
- buttons: [{
- text: Strings.sharedAttributes,
- handler: 'showAttributesView'
- }, {
- glyph: 'xf041@FontAwesome',
- minWidth: 0,
- handler: 'getMapState',
- tooltip: Strings.sharedGetMapState,
- tooltipType: 'title'
- }, {
- xtype: 'tbfill'
- }, {
- glyph: 'xf00c@FontAwesome',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSaveClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/User.js b/web/app/view/dialog/User.js
deleted file mode 100644
index 5da56424..00000000
--- a/web/app/view/dialog/User.js
+++ /dev/null
@@ -1,211 +0,0 @@
-/*
- * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.User', {
- extend: 'Traccar.view.dialog.BaseEdit',
-
- requires: [
- 'Traccar.view.ClearableComboBox',
- 'Traccar.view.dialog.UserController',
- 'Traccar.view.UnescapedTextField'
- ],
-
- controller: 'user',
- title: Strings.settingsUser,
-
- items: {
- xtype: 'form',
- items: [{
- xtype: 'fieldset',
- title: Strings.sharedRequired,
- items: [{
- xtype: 'unescapedTextField',
- name: 'name',
- fieldLabel: Strings.sharedName
- }, {
- xtype: 'unescapedTextField',
- name: 'email',
- fieldLabel: Strings.userEmail,
- allowBlank: false
- }, {
- xtype: 'textfield',
- name: 'password',
- fieldLabel: Strings.userPassword,
- inputType: 'password',
- allowBlank: false
- }]
- }, {
- xtype: 'fieldset',
- title: Strings.sharedPreferences,
- collapsible: true,
- collapsed: true,
- items: [{
- xtype: 'unescapedTextField',
- name: 'phone',
- fieldLabel: Strings.sharedPhone
- }, {
- xtype: 'clearableComboBox',
- name: 'map',
- fieldLabel: Strings.mapLayer,
- store: 'MapTypes',
- displayField: 'name',
- valueField: 'key'
- }, {
- xtype: 'numberfield',
- reference: 'latitude',
- name: 'latitude',
- fieldLabel: Strings.positionLatitude,
- decimalPrecision: Traccar.Style.coordinatePrecision
- }, {
- xtype: 'numberfield',
- reference: 'longitude',
- name: 'longitude',
- fieldLabel: Strings.positionLongitude,
- decimalPrecision: Traccar.Style.coordinatePrecision
- }, {
- xtype: 'numberfield',
- reference: 'zoom',
- name: 'zoom',
- fieldLabel: Strings.serverZoom
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'twelveHourFormat',
- fieldLabel: Strings.settingsTwelveHourFormat
- }, {
- xtype: 'clearableComboBox',
- name: 'coordinateFormat',
- fieldLabel: Strings.settingsCoordinateFormat,
- store: 'CoordinateFormats',
- displayField: 'name',
- valueField: 'key'
- }, {
- xtype: 'unescapedTextField',
- name: 'poiLayer',
- fieldLabel: Strings.mapPoiLayer
- }]
- }, {
- xtype: 'fieldset',
- title: Strings.sharedPermissions,
- collapsible: true,
- collapsed: true,
- items: [{
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'disabled',
- fieldLabel: Strings.sharedDisabled,
- disabled: true,
- reference: 'disabledField'
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'administrator',
- fieldLabel: Strings.userAdmin,
- disabled: true,
- reference: 'adminField'
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'readonly',
- fieldLabel: Strings.serverReadonly,
- disabled: true,
- reference: 'readonlyField'
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'deviceReadonly',
- fieldLabel: Strings.userDeviceReadonly,
- disabled: true,
- reference: 'deviceReadonlyField'
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'limitCommands',
- fieldLabel: Strings.userLimitCommands,
- disabled: true,
- reference: 'limitCommandsField'
- }, {
- xtype: 'checkboxfield',
- inputValue: true,
- uncheckedValue: false,
- name: 'disableReports',
- fieldLabel: Strings.userDisableReports,
- disabled: true,
- reference: 'disableReportsField'
- }, {
- xtype: 'datefield',
- name: 'expirationTime',
- fieldLabel: Strings.userExpirationTime,
- disabled: true,
- reference: 'expirationTimeField',
- startDay: Traccar.Style.weekStartDay,
- format: Traccar.Style.dateFormat
- }, {
- xtype: 'numberfield',
- name: 'deviceLimit',
- fieldLabel: Strings.userDeviceLimit,
- disabled: true,
- reference: 'deviceLimitField'
- }, {
- xtype: 'numberfield',
- name: 'userLimit',
- fieldLabel: Strings.userUserLimit,
- disabled: true,
- reference: 'userLimitField'
- }]
- }]
- },
-
- buttons: [{
- text: Strings.sharedAttributes,
- handler: 'showAttributesView'
- }, {
- glyph: 'xf041@FontAwesome',
- minWidth: 0,
- handler: 'getMapState',
- tooltip: Strings.sharedGetMapState,
- tooltipType: 'title'
- }, {
- glyph: 'xf003@FontAwesome',
- minWidth: 0,
- handler: 'testNotification',
- hidden: true,
- reference: 'testNotificationButton',
- tooltip: Strings.sharedTestNotification,
- tooltipType: 'title'
- }, {
- xtype: 'tbfill'
- }, {
- glyph: 'xf00c@FontAwesome',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSaveClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'closeView'
- }]
-});
diff --git a/web/app/view/dialog/UserController.js b/web/app/view/dialog/UserController.js
deleted file mode 100644
index 0d620614..00000000
--- a/web/app/view/dialog/UserController.js
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.dialog.UserController', {
- extend: 'Traccar.view.dialog.MapPickerController',
- alias: 'controller.user',
-
- init: function () {
- if (Traccar.app.getUser().get('administrator')) {
- this.lookupReference('adminField').setDisabled(false);
- this.lookupReference('deviceLimitField').setDisabled(false);
- this.lookupReference('userLimitField').setDisabled(false);
- }
- if (Traccar.app.getUser().get('administrator') || !this.getView().selfEdit) {
- this.lookupReference('readonlyField').setDisabled(false);
- this.lookupReference('disabledField').setDisabled(false);
- this.lookupReference('expirationTimeField').setDisabled(false);
- this.lookupReference('deviceReadonlyField').setDisabled(false);
- this.lookupReference('limitCommandsField').setDisabled(false);
- this.lookupReference('disableReportsField').setDisabled(false);
- }
- },
-
- testNotification: function () {
- Ext.Ajax.request({
- url: 'api/notifications/test',
- method: 'POST',
- failure: function (response) {
- Traccar.app.showError(response);
- }
- });
- },
-
- onSaveClick: function (button) {
- var dialog, record, store;
- dialog = button.up('window').down('form');
- dialog.updateRecord();
- record = dialog.getRecord();
- if (record === Traccar.app.getUser()) {
- record.save();
- } else {
- store = Ext.getStore('Users');
- if (record.phantom) {
- store.add(record);
- }
- store.sync({
- failure: function (batch) {
- store.rejectChanges();
- Traccar.app.showError(batch.exceptions[0].getError().response);
- }
- });
- }
- button.up('window').close();
- }
-});
diff --git a/web/app/view/edit/Attributes.js b/web/app/view/edit/Attributes.js
deleted file mode 100644
index af4f5a90..00000000
--- a/web/app/view/edit/Attributes.js
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Attributes', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'attributesView',
-
- requires: [
- 'Traccar.view.edit.AttributesController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'attributes',
-
- tbar: {
- xtype: 'editToolbar'
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- filter: 'string',
- renderer: function (value) {
- var attribute;
- if (this.attributesStore) {
- attribute = Ext.getStore(this.attributesStore).getById(value);
- }
- return attribute && attribute.get('name') || value;
- }
- }, {
- text: Strings.stateValue,
- dataIndex: 'value',
- renderer: function (value, metaData, record) {
- var attribute;
- if (this.attributesStore) {
- attribute = Ext.getStore(this.attributesStore).getById(record.get('name'));
- }
- return Traccar.AttributeFormatter.renderAttribute(value, attribute);
- }
- }]
- }
-});
diff --git a/web/app/view/edit/AttributesController.js b/web/app/view/edit/AttributesController.js
deleted file mode 100644
index 84ff6adf..00000000
--- a/web/app/view/edit/AttributesController.js
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.AttributesController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.attributes',
-
- requires: [
- 'Traccar.view.dialog.Attribute',
- 'Traccar.store.Attributes',
- 'Traccar.model.Attribute'
- ],
-
- removeTitle: Strings.stateName,
-
- init: function () {
- var store, propertyName, i = 0, attributes;
- store = Ext.create('Traccar.store.Attributes');
- store.setProxy(Ext.create('Ext.data.proxy.Memory'));
- if (typeof this.getView().record.get('attributes') === 'undefined') {
- this.getView().record.set('attributes', {});
- }
- attributes = this.getView().record.get('attributes');
- for (propertyName in attributes) {
- if (attributes.hasOwnProperty(propertyName)) {
- store.add(Ext.create('Traccar.model.Attribute', {
- priority: i++,
- name: propertyName,
- value: attributes[propertyName]
- }));
- }
- }
- store.addListener('add', function (store, records) {
- var i, view;
- view = this.getView();
- for (i = 0; i < records.length; i++) {
- view.record.get('attributes')[records[i].get('name')] = records[i].get('value');
- }
- view.record.dirty = true;
- }, this);
- store.addListener('update', function (store, record, operation) {
- var view;
- view = this.getView();
- if (operation === Ext.data.Model.EDIT) {
- if (record.modified.name !== record.get('name')) {
- delete view.record.get('attributes')[record.modified.name];
- }
- view.record.get('attributes')[record.get('name')] = record.get('value');
- view.record.dirty = true;
- }
- }, this);
- store.addListener('remove', function (store, records) {
- var i, view;
- view = this.getView();
- for (i = 0; i < records.length; i++) {
- delete view.record.get('attributes')[records[i].get('name')];
- }
- view.record.dirty = true;
- }, this);
-
- this.getView().setStore(store);
- if (this.getView().record instanceof Traccar.model.Device) {
- this.getView().attributesStore = 'DeviceAttributes';
- } else if (this.getView().record instanceof Traccar.model.Geofence) {
- this.getView().attributesStore = 'GeofenceAttributes';
- } else if (this.getView().record instanceof Traccar.model.Group) {
- this.getView().attributesStore = 'GroupAttributes';
- } else if (this.getView().record instanceof Traccar.model.Server) {
- this.getView().attributesStore = 'ServerAttributes';
- } else if (this.getView().record instanceof Traccar.model.User) {
- this.getView().attributesStore = 'UserAttributes';
- }
- },
-
- comboConfig: {
- xtype: 'combobox',
- reference: 'nameComboField',
- name: 'name',
- fieldLabel: Strings.sharedName,
- displayField: 'name',
- valueField: 'key',
- allowBlank: false,
- queryMode: 'local',
- listeners: {
- change: 'onNameChange'
- }
- },
-
- initDialog: function (record) {
- var nameTextField, dialog = Ext.create('Traccar.view.dialog.Attribute');
- if (this.getView().attributesStore) {
- this.comboConfig.store = this.getView().attributesStore;
- nameTextField = dialog.lookupReference('nameTextField');
- dialog.down('form').insert(0, this.comboConfig);
- dialog.down('form').remove(nameTextField);
- }
- dialog.down('form').loadRecord(record);
- dialog.show();
- },
-
- onAddClick: function () {
- var objectInstance = Ext.create('Traccar.model.Attribute');
- objectInstance.store = this.getView().getStore();
- this.initDialog(objectInstance);
- },
-
- onEditClick: function () {
- this.initDialog(this.getView().getSelectionModel().getSelection()[0]);
- }
-});
diff --git a/web/app/view/edit/Calendars.js b/web/app/view/edit/Calendars.js
deleted file mode 100644
index 23f20e25..00000000
--- a/web/app/view/edit/Calendars.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Calendars', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'calendarsView',
-
- requires: [
- 'Traccar.view.edit.CalendarsController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'calendars',
- store: 'Calendars',
-
- tbar: {
- xtype: 'editToolbar'
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- filter: 'string'
- }]
- }
-});
diff --git a/web/app/view/edit/CalendarsController.js b/web/app/view/edit/CalendarsController.js
deleted file mode 100644
index d11ec379..00000000
--- a/web/app/view/edit/CalendarsController.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.CalendarsController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.calendars',
-
- requires: [
- 'Traccar.view.dialog.Calendar',
- 'Traccar.model.Calendar'
- ],
-
- objectModel: 'Traccar.model.Calendar',
- objectDialog: 'Traccar.view.dialog.Calendar',
- removeTitle: Strings.sharedCalendar
-});
diff --git a/web/app/view/edit/ComputedAttributes.js b/web/app/view/edit/ComputedAttributes.js
deleted file mode 100644
index 9f0b9396..00000000
--- a/web/app/view/edit/ComputedAttributes.js
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.ComputedAttributes', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'computedAttributesView',
-
- requires: [
- 'Traccar.view.edit.ComputedAttributesController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'computedAttributes',
- store: 'ComputedAttributes',
-
- tbar: {
- xtype: 'editToolbar'
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedDescription,
- dataIndex: 'description',
- filter: 'string'
- }, {
- text: Strings.sharedAttribute,
- dataIndex: 'attribute',
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'PositionAttributes'
- },
- renderer: function (value) {
- return Ext.getStore('PositionAttributes').getAttributeName(value);
- }
- }, {
- text: Strings.sharedExpression,
- dataIndex: 'expression'
- }, {
- text: Strings.sharedType,
- dataIndex: 'type',
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'AttributeValueTypes'
- },
- renderer: function (value) {
- var type = Ext.getStore('AttributeValueTypes').getById(value);
- if (type) {
- return type.get('name');
- } else {
- return value;
- }
- }
- }]
- }
-});
diff --git a/web/app/view/edit/ComputedAttributesController.js b/web/app/view/edit/ComputedAttributesController.js
deleted file mode 100644
index 6ae14102..00000000
--- a/web/app/view/edit/ComputedAttributesController.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.ComputedAttributesController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.computedAttributes',
-
- requires: [
- 'Traccar.view.dialog.ComputedAttribute',
- 'Traccar.model.ComputedAttribute'
- ],
-
- objectModel: 'Traccar.model.ComputedAttribute',
- objectDialog: 'Traccar.view.dialog.ComputedAttribute',
- removeTitle: Strings.sharedComputedAttribute
-});
diff --git a/web/app/view/edit/Devices.js b/web/app/view/edit/Devices.js
deleted file mode 100644
index 5f54202a..00000000
--- a/web/app/view/edit/Devices.js
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Devices', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'devicesView',
-
- requires: [
- 'Traccar.AttributeFormatter',
- 'Traccar.view.edit.DevicesController',
- 'Traccar.view.ArrayListFilter',
- 'Traccar.view.DeviceMenu'
- ],
-
- controller: 'devices',
-
- store: 'VisibleDevices',
-
- stateful: true,
- stateId: 'devices-grid',
-
- tbar: {
- componentCls: 'toolbar-header-style',
- defaults: {
- xtype: 'button',
- disabled: true,
- tooltipType: 'title'
- },
- items: [{
- xtype: 'tbtext',
- html: Strings.deviceTitle,
- baseCls: 'x-panel-header-title-default'
- }, {
- xtype: 'tbfill',
- disabled: false
- }, {
- handler: 'onAddClick',
- reference: 'toolbarAddButton',
- glyph: 'xf067@FontAwesome',
- tooltip: Strings.sharedAdd
- }, {
- handler: 'onEditClick',
- reference: 'toolbarEditButton',
- glyph: 'xf040@FontAwesome',
- tooltip: Strings.sharedEdit
- }, {
- handler: 'onRemoveClick',
- reference: 'toolbarRemoveButton',
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedRemove
- }, {
- handler: 'onCommandClick',
- reference: 'deviceCommandButton',
- glyph: 'xf093@FontAwesome',
- tooltip: Strings.deviceCommand
- }, {
- xtype: 'deviceMenu',
- reference: 'toolbarDeviceMenu',
- enableToggle: false
- }]
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- viewConfig: {
- enableTextSelection: true,
- getRowClass: function (record) {
- var result = '', status = record.get('status');
- if (record.get('disabled')) {
- result = 'view-item-disabled ';
- }
- if (status) {
- result += Ext.getStore('DeviceStatuses').getById(status).get('color');
- }
- return result;
- }
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- filter: 'string'
- }, {
- text: Strings.deviceIdentifier,
- dataIndex: 'uniqueId',
- hidden: true,
- filter: 'string'
- }, {
- text: Strings.sharedPhone,
- dataIndex: 'phone',
- hidden: true
- }, {
- text: Strings.deviceModel,
- dataIndex: 'model',
- hidden: true
- }, {
- text: Strings.deviceContact,
- dataIndex: 'contact',
- hidden: true
- }, {
- text: Strings.groupDialog,
- dataIndex: 'groupId',
- hidden: true,
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'Groups'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('groupId')
- }, {
- text: Strings.sharedDisabled,
- dataIndex: 'disabled',
- renderer: Traccar.AttributeFormatter.getFormatter('disabled'),
- hidden: true,
- filter: 'boolean'
- }, {
- text: Strings.deviceStatus,
- dataIndex: 'status',
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'DeviceStatuses'
- },
- renderer: function (value) {
- var status;
- if (value) {
- status = Ext.getStore('DeviceStatuses').getById(value);
- if (status) {
- return status.get('name');
- }
- }
- return null;
- }
- }, {
- text: Strings.deviceLastUpdate,
- dataIndex: 'lastUpdate',
- renderer: Traccar.AttributeFormatter.getFormatter('lastUpdate')
- }]
- }
-});
diff --git a/web/app/view/edit/DevicesController.js b/web/app/view/edit/DevicesController.js
deleted file mode 100644
index 16e54b21..00000000
--- a/web/app/view/edit/DevicesController.js
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.DevicesController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.devices',
-
- requires: [
- 'Traccar.view.dialog.SendCommand',
- 'Traccar.view.dialog.Device',
- 'Traccar.view.permissions.Geofences',
- 'Traccar.view.permissions.ComputedAttributes',
- 'Traccar.view.permissions.Drivers',
- 'Traccar.view.permissions.SavedCommands',
- 'Traccar.view.BaseWindow',
- 'Traccar.model.Device',
- 'Traccar.model.Command'
- ],
-
- config: {
- listen: {
- controller: {
- '*': {
- selectreport: 'deselectDevice',
- selectevent: 'deselectDevice'
- },
- 'root': {
- selectdevice: 'selectDevice'
- },
- 'map': {
- selectdevice: 'selectDevice',
- deselectfeature: 'deselectFeature'
- }
- },
- store: {
- '#Devices': {
- update: 'onUpdateDevice'
- }
- }
- }
- },
-
- objectModel: 'Traccar.model.Device',
- objectDialog: 'Traccar.view.dialog.Device',
- removeTitle: Strings.sharedDevice,
-
- init: function () {
- var self = this, readonly, deviceReadonly;
- deviceReadonly = Traccar.app.getPreference('deviceReadonly', false) && !Traccar.app.getUser().get('administrator');
- readonly = Traccar.app.getPreference('readonly', false) && !Traccar.app.getUser().get('administrator');
- this.lookupReference('toolbarAddButton').setDisabled(readonly || deviceReadonly);
- this.lookupReference('toolbarDeviceMenu').setHidden(readonly || deviceReadonly);
-
- setInterval(function () {
- self.getView().getView().refresh();
- }, Traccar.Style.refreshPeriod);
- },
-
- onCommandClick: function () {
- var device, deviceId, dialog, typesStore, commandsStore;
- device = this.getView().getSelectionModel().getSelection()[0];
- deviceId = device.get('id');
-
- dialog = Ext.create('Traccar.view.dialog.SendCommand');
- dialog.deviceId = deviceId;
-
- commandsStore = dialog.lookupReference('commandsComboBox').getStore();
- commandsStore.getProxy().setExtraParam('deviceId', deviceId);
- if (!Traccar.app.getPreference('limitCommands', false)) {
- commandsStore.add({
- id: 0,
- description: Strings.sharedNew
- });
- }
- commandsStore.load({
- addRecords: true
- });
-
- typesStore = dialog.lookupReference('commandType').getStore();
- typesStore.getProxy().setExtraParam('deviceId', deviceId);
- typesStore.load();
-
- dialog.show();
- },
-
- updateButtons: function (selected) {
- var readonly, deviceReadonly, empty, deviceMenu;
- deviceReadonly = Traccar.app.getPreference('deviceReadonly', false) && !Traccar.app.getUser().get('administrator');
- readonly = Traccar.app.getPreference('readonly', false) && !Traccar.app.getUser().get('administrator');
- empty = selected.length === 0;
- this.lookupReference('toolbarEditButton').setDisabled(empty || readonly || deviceReadonly);
- this.lookupReference('toolbarRemoveButton').setDisabled(empty || readonly || deviceReadonly);
- deviceMenu = this.lookupReference('toolbarDeviceMenu');
- deviceMenu.device = empty ? null : selected[0];
- deviceMenu.setDisabled(empty);
- this.lookupReference('deviceCommandButton').setDisabled(empty || readonly);
- },
-
- onSelectionChange: function (el, records) {
- if (records && records.length) {
- this.updateButtons(records);
- this.fireEvent('selectdevice', records[0], true);
- }
- },
-
- selectDevice: function (device) {
- this.getView().getSelectionModel().select([device], false, true);
- this.updateButtons(this.getView().getSelectionModel().getSelected().items);
- this.getView().getView().focusRow(device);
- },
-
- deselectDevice: function (object) {
- if (object) {
- this.deselectFeature();
- }
- },
-
- onUpdateDevice: function () {
- this.updateButtons(this.getView().getSelectionModel().getSelected().items);
- },
-
- deselectFeature: function () {
- this.getView().getSelectionModel().deselectAll();
- }
-});
diff --git a/web/app/view/edit/Drivers.js b/web/app/view/edit/Drivers.js
deleted file mode 100644
index 7bd10a68..00000000
--- a/web/app/view/edit/Drivers.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Drivers', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'driversView',
-
- requires: [
- 'Traccar.view.edit.DriversController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'drivers',
- store: 'Drivers',
-
- tbar: {
- xtype: 'editToolbar'
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- filter: 'string'
- }, {
- text: Strings.deviceIdentifier,
- dataIndex: 'uniqueId',
- filter: 'string'
- }]
- }
-});
diff --git a/web/app/view/edit/DriversController.js b/web/app/view/edit/DriversController.js
deleted file mode 100644
index 6c8a63cc..00000000
--- a/web/app/view/edit/DriversController.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.DriversController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.drivers',
-
- requires: [
- 'Traccar.view.dialog.Driver',
- 'Traccar.model.Driver'
- ],
-
- objectModel: 'Traccar.model.Driver',
- objectDialog: 'Traccar.view.dialog.Driver',
- removeTitle: Strings.sharedDriver
-});
diff --git a/web/app/view/edit/Geofences.js b/web/app/view/edit/Geofences.js
deleted file mode 100644
index 0e1e6773..00000000
--- a/web/app/view/edit/Geofences.js
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Geofences', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'geofencesView',
-
- requires: [
- 'Traccar.view.edit.GeofencesController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'geofences',
- store: 'Geofences',
-
- tbar: {
- xtype: 'editToolbar'
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- filter: 'string'
- }, {
- text: Strings.sharedDescription,
- dataIndex: 'description',
- filter: 'string'
- }, {
- text: Strings.sharedCalendar,
- dataIndex: 'calendarId',
- hidden: true,
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'AllCalendars'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('calendarId')
- }]
- }
-});
diff --git a/web/app/view/edit/GeofencesController.js b/web/app/view/edit/GeofencesController.js
deleted file mode 100644
index 73d367ac..00000000
--- a/web/app/view/edit/GeofencesController.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.GeofencesController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.geofences',
-
- requires: [
- 'Traccar.view.dialog.Geofence',
- 'Traccar.model.Geofence'
- ],
-
- objectModel: 'Traccar.model.Geofence',
- objectDialog: 'Traccar.view.dialog.Geofence',
- removeTitle: Strings.sharedGeofence
-});
diff --git a/web/app/view/edit/Groups.js b/web/app/view/edit/Groups.js
deleted file mode 100644
index 8b09316c..00000000
--- a/web/app/view/edit/Groups.js
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Groups', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'groupsView',
-
- requires: [
- 'Traccar.AttributeFormatter',
- 'Traccar.view.edit.GroupsController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'groups',
- store: 'Groups',
-
- tbar: {
- xtype: 'editToolbar',
- items: [{
- xtype: 'button',
- disabled: true,
- handler: 'onGeofencesClick',
- reference: 'toolbarGeofencesButton',
- glyph: 'xf21d@FontAwesome',
- tooltip: Strings.sharedGeofences,
- tooltipType: 'title'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onAttributesClick',
- reference: 'toolbarAttributesButton',
- glyph: 'xf0ae@FontAwesome',
- tooltip: Strings.sharedComputedAttributes,
- tooltipType: 'title'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onDriversClick',
- reference: 'toolbarDriversButton',
- glyph: 'xf084@FontAwesome',
- tooltip: Strings.sharedDrivers,
- tooltipType: 'title'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onCommandsClick',
- reference: 'toolbarCommandsButton',
- glyph: 'xf093@FontAwesome',
- tooltip: Strings.sharedSavedCommands,
- tooltipType: 'title'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onNotificationsClick',
- reference: 'toolbarNotificationsButton',
- glyph: 'xf003@FontAwesome',
- tooltip: Strings.sharedNotifications,
- tooltipType: 'title'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onMaintenancesClick',
- reference: 'toolbarMaintenancesButton',
- glyph: 'xf0ad@FontAwesome',
- tooltip: Strings.sharedMaintenance,
- tooltipType: 'title'
- }]
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- filter: 'string'
- }, {
- text: Strings.groupDialog,
- dataIndex: 'groupId',
- hidden: true,
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'AllGroups'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('groupId')
- }]
- }
-});
diff --git a/web/app/view/edit/GroupsController.js b/web/app/view/edit/GroupsController.js
deleted file mode 100644
index ae96a248..00000000
--- a/web/app/view/edit/GroupsController.js
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.GroupsController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.groups',
-
- requires: [
- 'Traccar.view.dialog.Group',
- 'Traccar.view.permissions.Geofences',
- 'Traccar.view.permissions.ComputedAttributes',
- 'Traccar.view.permissions.Drivers',
- 'Traccar.view.permissions.SavedCommands',
- 'Traccar.view.permissions.Maintenances',
- 'Traccar.view.BaseWindow',
- 'Traccar.model.Group'
- ],
-
- objectModel: 'Traccar.model.Group',
- objectDialog: 'Traccar.view.dialog.Group',
- removeTitle: Strings.groupDialog,
-
- init: function () {
- this.lookupReference('toolbarDriversButton').setHidden(
- Traccar.app.getVehicleFeaturesDisabled() || Traccar.app.getBooleanAttributePreference('ui.disableDrivers'));
- this.lookupReference('toolbarAttributesButton').setHidden(
- Traccar.app.getBooleanAttributePreference('ui.disableComputedAttributes'));
- this.lookupReference('toolbarCommandsButton').setHidden(Traccar.app.getPreference('limitCommands', false));
- this.lookupReference('toolbarMaintenancesButton').setHidden(
- Traccar.app.getVehicleFeaturesDisabled() || Traccar.app.getBooleanAttributePreference('ui.disableMaintenance'));
- },
-
- onGeofencesClick: function () {
- var group = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedGeofences,
- items: {
- xtype: 'linkGeofencesView',
- baseObjectName: 'groupId',
- linkObjectName: 'geofenceId',
- storeName: 'Geofences',
- baseObject: group.getId()
- }
- }).show();
- },
-
- onAttributesClick: function () {
- var group = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedComputedAttributes,
- items: {
- xtype: 'linkComputedAttributesView',
- baseObjectName: 'groupId',
- linkObjectName: 'attributeId',
- storeName: 'ComputedAttributes',
- baseObject: group.getId()
- }
- }).show();
- },
-
- onDriversClick: function () {
- var group = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedDrivers,
- items: {
- xtype: 'linkDriversView',
- baseObjectName: 'groupId',
- linkObjectName: 'driverId',
- storeName: 'Drivers',
- baseObject: group.getId()
- }
- }).show();
- },
-
- onCommandsClick: function () {
- var group = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedSavedCommands,
- items: {
- xtype: 'linkSavedCommandsView',
- baseObjectName: 'groupId',
- linkObjectName: 'commandId',
- storeName: 'Commands',
- baseObject: group.getId()
- }
- }).show();
- },
-
- onNotificationsClick: function () {
- var group = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedNotifications,
- items: {
- xtype: 'linkNotificationsView',
- baseObjectName: 'groupId',
- linkObjectName: 'notificationId',
- storeName: 'Notifications',
- baseObject: group.getId()
- }
- }).show();
- },
-
- onMaintenancesClick: function () {
- var group = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedMaintenance,
- items: {
- xtype: 'linkMaintenancesView',
- baseObjectName: 'groupId',
- linkObjectName: 'maintenanceId',
- storeName: 'Maintenances',
- baseObject: group.getId()
- }
- }).show();
- },
-
- onSelectionChange: function (selection, selected) {
- var disabled = selected.length === 0;
- this.lookupReference('toolbarGeofencesButton').setDisabled(disabled);
- this.lookupReference('toolbarAttributesButton').setDisabled(disabled);
- this.lookupReference('toolbarDriversButton').setDisabled(disabled);
- this.lookupReference('toolbarCommandsButton').setDisabled(disabled);
- this.lookupReference('toolbarNotificationsButton').setDisabled(disabled);
- this.lookupReference('toolbarMaintenancesButton').setDisabled(disabled);
- this.callParent(arguments);
- }
-});
diff --git a/web/app/view/edit/Maintenances.js b/web/app/view/edit/Maintenances.js
deleted file mode 100644
index da129154..00000000
--- a/web/app/view/edit/Maintenances.js
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Maintenances', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'maintenancesView',
-
- requires: [
- 'Traccar.view.edit.MaintenancesController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'maintenances',
- store: 'Maintenances',
-
- tbar: {
- xtype: 'editToolbar'
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- filter: 'string'
- }, {
- text: Strings.sharedType,
- dataIndex: 'type',
- filter: {
- type: 'list',
- idField: 'key',
- labelField: 'name',
- store: 'MaintenanceTypes'
- },
- renderer: function (value) {
- var attribute = Ext.getStore('MaintenanceTypes').getById(value);
- return attribute && attribute.get('name') || value;
- }
- }, {
- text: Strings.maintenanceStart,
- dataIndex: 'start',
- renderer: function (value, metaData, record) {
- return Traccar.AttributeFormatter.renderAttribute(
- value, Ext.getStore('MaintenanceTypes').getById(record.get('type')));
- }
- }, {
- text: Strings.maintenancePeriod,
- dataIndex: 'period',
- renderer: function (value, metaData, record) {
- return Traccar.AttributeFormatter.renderAttribute(
- value, Ext.getStore('MaintenanceTypes').getById(record.get('type')));
- }
- }]
- }
-});
diff --git a/web/app/view/edit/MaintenancesController.js b/web/app/view/edit/MaintenancesController.js
deleted file mode 100644
index 19762e61..00000000
--- a/web/app/view/edit/MaintenancesController.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.MaintenancesController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.maintenances',
-
- requires: [
- 'Traccar.view.dialog.Maintenance',
- 'Traccar.model.Maintenance'
- ],
-
- objectModel: 'Traccar.model.Maintenance',
- objectDialog: 'Traccar.view.dialog.Maintenance',
- removeTitle: Strings.sharedMaintenance
-});
diff --git a/web/app/view/edit/Notifications.js b/web/app/view/edit/Notifications.js
deleted file mode 100644
index 9cf97b19..00000000
--- a/web/app/view/edit/Notifications.js
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Notifications', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'notificationsView',
-
- requires: [
- 'Traccar.view.edit.NotificationsController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'notifications',
- store: 'Notifications',
-
- tbar: {
- xtype: 'editToolbar'
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.notificationType,
- dataIndex: 'type',
- flex: 2,
- renderer: function (value) {
- return Traccar.app.getEventString(value);
- },
- filter: {
- type: 'list',
- idField: 'type',
- labelField: 'name',
- store: 'AllNotificationTypes'
- }
- }, {
- text: Strings.notificationAlways,
- dataIndex: 'always',
- renderer: Traccar.AttributeFormatter.getFormatter('always'),
- filter: 'boolean'
- }, {
- text: Strings.sharedAlarms,
- dataIndex: 'attributes',
- renderer: function (value) {
- var i, key, result = '', alarms = value && value['alarms'];
- if (alarms) {
- alarms = alarms.split(',');
- for (i = 0; i < alarms.length; i++) {
- key = 'alarm' + alarms[i].charAt(0).toUpperCase() + alarms[i].slice(1);
- if (result) {
- result += ', ';
- }
- result += Strings[key] || key;
- }
- }
- return result;
- }
- }, {
- text: Strings.notificationNotificators,
- dataIndex: 'notificators',
- flex: 2,
- filter: {
- type: 'arraylist',
- idField: 'type',
- labelField: 'name',
- store: 'AllNotificators'
- },
- renderer: function (value) {
- var result = '', i, notificators;
- if (value) {
- notificators = value.split(/[ ,]+/).filter(Boolean);
- for (i = 0; i < notificators.length; i++) {
- result += Traccar.app.getNotificatorString(notificators[i]) + (i < notificators.length - 1 ? ', ' : '');
- }
- }
- return result;
- }
- }, {
- text: Strings.sharedCalendar,
- dataIndex: 'calendarId',
- hidden: true,
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'AllCalendars'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('calendarId')
- }]
- }
-});
diff --git a/web/app/view/edit/NotificationsController.js b/web/app/view/edit/NotificationsController.js
deleted file mode 100644
index ad22a686..00000000
--- a/web/app/view/edit/NotificationsController.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.NotificationsController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.notifications',
-
- requires: [
- 'Traccar.view.dialog.Notification',
- 'Traccar.model.Notification'
- ],
-
- objectModel: 'Traccar.model.Notification',
- objectDialog: 'Traccar.view.dialog.Notification',
- removeTitle: Strings.sharedNotification
-});
diff --git a/web/app/view/edit/SavedCommands.js b/web/app/view/edit/SavedCommands.js
deleted file mode 100644
index 9e5f4869..00000000
--- a/web/app/view/edit/SavedCommands.js
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.SavedCommands', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'savedCommandsView',
-
- requires: [
- 'Traccar.view.edit.SavedCommandsController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'savedCommands',
- store: 'Commands',
-
- tbar: {
- xtype: 'editToolbar'
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedDescription,
- dataIndex: 'description',
- filter: 'string'
- }, {
- text: Strings.sharedType,
- dataIndex: 'type',
- filter: {
- type: 'list',
- idField: 'type',
- labelField: 'name',
- store: 'AllCommandTypes'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('commandType')
- }, {
- text: Strings.commandSendSms,
- dataIndex: 'textChannel',
- renderer: Traccar.AttributeFormatter.getFormatter('textChannel'),
- filter: 'boolean'
- }]
- }
-});
diff --git a/web/app/view/edit/SavedCommandsController.js b/web/app/view/edit/SavedCommandsController.js
deleted file mode 100644
index 1511661e..00000000
--- a/web/app/view/edit/SavedCommandsController.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.SavedCommandsController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.savedCommands',
-
- requires: [
- 'Traccar.view.dialog.SavedCommand',
- 'Traccar.model.Command'
- ],
-
- objectModel: 'Traccar.model.Command',
- objectDialog: 'Traccar.view.dialog.SavedCommand',
- removeTitle: Strings.sharedSavedCommand
-});
diff --git a/web/app/view/edit/Toolbar.js b/web/app/view/edit/Toolbar.js
deleted file mode 100644
index 6999030b..00000000
--- a/web/app/view/edit/Toolbar.js
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Toolbar', {
- extend: 'Ext.toolbar.Toolbar',
- xtype: 'editToolbar',
-
- initComponent: function () {
- this.callParent(arguments);
- this.add(0, [{
- xtype: 'button',
- handler: 'onAddClick',
- reference: 'toolbarAddButton',
- glyph: 'xf067@FontAwesome',
- tooltip: Strings.sharedAdd,
- tooltipType: 'title'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onEditClick',
- reference: 'toolbarEditButton',
- glyph: 'xf040@FontAwesome',
- tooltip: Strings.sharedEdit,
- tooltipType: 'title'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onRemoveClick',
- reference: 'toolbarRemoveButton',
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedRemove,
- tooltipType: 'title'
- }]);
- }
-});
diff --git a/web/app/view/edit/ToolbarController.js b/web/app/view/edit/ToolbarController.js
deleted file mode 100644
index d3ca9de6..00000000
--- a/web/app/view/edit/ToolbarController.js
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.edit.ToolbarController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.toolbarController',
-
- onAddClick: function () {
- var dialog, objectInstance = Ext.create(this.objectModel);
- objectInstance.store = this.getView().getStore();
- if (objectInstance.store instanceof Ext.data.ChainedStore) {
- objectInstance.store = objectInstance.store.getSource();
- }
- dialog = Ext.create(this.objectDialog);
- dialog.down('form').loadRecord(objectInstance);
- dialog.show();
- },
-
- onEditClick: function () {
- var dialog, objectInstance = this.getView().getSelectionModel().getSelection()[0];
- dialog = Ext.create(this.objectDialog);
- dialog.down('form').loadRecord(objectInstance);
- dialog.show();
- },
-
- onRemoveClick: function () {
- var objectInstance = this.getView().getSelectionModel().getSelection()[0];
- Ext.Msg.show({
- title: this.removeTitle,
- message: Strings.sharedRemoveConfirm,
- buttons: Ext.Msg.YESNO,
- buttonText: {
- yes: Strings.sharedRemove,
- no: Strings.sharedCancel
- },
- fn: function (btn) {
- var store = objectInstance.store;
- if (btn === 'yes') {
- store.remove(objectInstance);
- store.sync({
- failure: function (batch) {
- store.rejectChanges();
- Traccar.app.showError(batch.exceptions[0].getError().response);
- }
- });
- }
- }
- });
- },
-
- onSelectionChange: function (selection, selected) {
- var disabled = selected.length === 0;
- this.lookupReference('toolbarEditButton').setDisabled(disabled);
- this.lookupReference('toolbarRemoveButton').setDisabled(disabled);
- }
-});
diff --git a/web/app/view/edit/Users.js b/web/app/view/edit/Users.js
deleted file mode 100644
index 5d9a14f0..00000000
--- a/web/app/view/edit/Users.js
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.Users', {
- extend: 'Traccar.view.GridPanel',
- xtype: 'usersView',
-
- requires: [
- 'Traccar.view.edit.UsersController',
- 'Traccar.view.edit.Toolbar'
- ],
-
- controller: 'users',
- store: 'Users',
-
- tbar: {
- xtype: 'editToolbar',
- scrollable: true,
- items: [{
- disabled: true,
- handler: 'onGeofencesClick',
- reference: 'userGeofencesButton',
- glyph: 'xf21d@FontAwesome',
- tooltip: Strings.sharedGeofences,
- tooltipType: 'title'
- }, {
- disabled: true,
- handler: 'onDevicesClick',
- reference: 'userDevicesButton',
- glyph: 'xf248@FontAwesome',
- tooltip: Strings.deviceTitle,
- tooltipType: 'title'
- }, {
- disabled: true,
- handler: 'onGroupsClick',
- reference: 'userGroupsButton',
- glyph: 'xf247@FontAwesome',
- tooltip: Strings.settingsGroups,
- tooltipType: 'title'
- }, {
- disabled: true,
- handler: 'onUsersClick',
- reference: 'userUsersButton',
- glyph: 'xf0c0@FontAwesome',
- tooltip: Strings.settingsUsers,
- tooltipType: 'title'
- }, {
- disabled: true,
- handler: 'onNotificationsClick',
- reference: 'userNotificationsButton',
- glyph: 'xf003@FontAwesome',
- tooltip: Strings.sharedNotifications,
- tooltipType: 'title'
- }, {
- disabled: true,
- handler: 'onCalendarsClick',
- reference: 'userCalendarsButton',
- glyph: 'xf073@FontAwesome',
- tooltip: Strings.sharedCalendars,
- tooltipType: 'title'
- }, {
- disabled: true,
- handler: 'onAttributesClick',
- reference: 'userAttributesButton',
- glyph: 'xf0ae@FontAwesome',
- tooltip: Strings.sharedComputedAttributes,
- tooltipType: 'title'
- }, {
- disabled: true,
- handler: 'onDriversClick',
- reference: 'userDriversButton',
- glyph: 'xf084@FontAwesome',
- tooltip: Strings.sharedDrivers,
- tooltipType: 'title'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onCommandsClick',
- reference: 'userCommandsButton',
- glyph: 'xf093@FontAwesome',
- tooltip: Strings.sharedSavedCommands,
- tooltipType: 'title'
- }, {
- xtype: 'button',
- disabled: true,
- handler: 'onMaintenancesClick',
- reference: 'userMaintenancesButton',
- glyph: 'xf0ad@FontAwesome',
- tooltip: Strings.sharedMaintenance,
- tooltipType: 'title'
- }]
- },
-
- listeners: {
- selectionchange: 'onSelectionChange'
- },
-
- columns: {
- defaults: {
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal
- },
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- filter: 'string'
- }, {
- text: Strings.userEmail,
- dataIndex: 'email',
- filter: 'string'
- }, {
- text: Strings.userAdmin,
- dataIndex: 'administrator',
- renderer: Traccar.AttributeFormatter.getFormatter('administrator'),
- filter: 'boolean'
- }, {
- text: Strings.serverReadonly,
- dataIndex: 'readonly',
- hidden: true,
- renderer: Traccar.AttributeFormatter.getFormatter('readonly'),
- filter: 'boolean'
- }, {
- text: Strings.userDeviceReadonly,
- dataIndex: 'deviceReadonly',
- renderer: Traccar.AttributeFormatter.getFormatter('deviceReadonly'),
- hidden: true,
- filter: 'boolean'
- }, {
- text: Strings.sharedDisabled,
- dataIndex: 'disabled',
- renderer: Traccar.AttributeFormatter.getFormatter('disabled'),
- filter: 'boolean'
- }, {
- text: Strings.userExpirationTime,
- dataIndex: 'expirationTime',
- hidden: true,
- renderer: Traccar.AttributeFormatter.getFormatter('expirationTime'),
- filter: 'date'
- }]
- }
-});
diff --git a/web/app/view/edit/UsersController.js b/web/app/view/edit/UsersController.js
deleted file mode 100644
index 9e810435..00000000
--- a/web/app/view/edit/UsersController.js
+++ /dev/null
@@ -1,244 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.edit.UsersController', {
- extend: 'Traccar.view.edit.ToolbarController',
- alias: 'controller.users',
-
- requires: [
- 'Traccar.view.dialog.User',
- 'Traccar.view.permissions.Devices',
- 'Traccar.view.permissions.Groups',
- 'Traccar.view.permissions.Geofences',
- 'Traccar.view.permissions.Calendars',
- 'Traccar.view.permissions.Users',
- 'Traccar.view.permissions.ComputedAttributes',
- 'Traccar.view.permissions.Drivers',
- 'Traccar.view.permissions.SavedCommands',
- 'Traccar.view.permissions.Notifications',
- 'Traccar.view.permissions.Maintenances',
- 'Traccar.view.BaseWindow',
- 'Traccar.model.User'
- ],
-
- objectModel: 'Traccar.model.User',
- objectDialog: 'Traccar.view.dialog.User',
- removeTitle: Strings.settingsUser,
-
- init: function () {
- Ext.getStore('Users').load();
- this.lookupReference('userUsersButton').setHidden(!Traccar.app.getUser().get('administrator'));
- this.lookupReference('userDriversButton').setHidden(
- Traccar.app.getVehicleFeaturesDisabled() || Traccar.app.getBooleanAttributePreference('ui.disableDrivers'));
- this.lookupReference('userAttributesButton').setHidden(
- Traccar.app.getBooleanAttributePreference('ui.disableComputedAttributes'));
- this.lookupReference('userCalendarsButton').setHidden(
- Traccar.app.getBooleanAttributePreference('ui.disableCalendars'));
- this.lookupReference('userCommandsButton').setHidden(Traccar.app.getPreference('limitCommands', false));
- this.lookupReference('userMaintenancesButton').setHidden(
- Traccar.app.getVehicleFeaturesDisabled() || Traccar.app.getBooleanAttributePreference('ui.disableMaintenance'));
- },
-
- onEditClick: function () {
- var dialog, user = this.getView().getSelectionModel().getSelection()[0];
- dialog = Ext.create('Traccar.view.dialog.User', {
- selfEdit: user.get('id') === Traccar.app.getUser().get('id')
- });
- dialog.down('form').loadRecord(user);
- dialog.show();
- },
-
- onAddClick: function () {
- var user, dialog;
- user = Ext.create('Traccar.model.User');
- if (Traccar.app.getUser().get('administrator')) {
- user.set('deviceLimit', -1);
- }
- if (Traccar.app.getUser().get('expirationTime')) {
- user.set('expirationTime', Traccar.app.getUser().get('expirationTime'));
- }
- dialog = Ext.create('Traccar.view.dialog.User');
- dialog.down('form').loadRecord(user);
- dialog.show();
- },
-
- onDevicesClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.getStore('AllGroups').load();
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.deviceTitle,
- items: {
- xtype: 'linkDevicesView',
- baseObjectName: 'userId',
- linkObjectName: 'deviceId',
- storeName: 'AllDevices',
- linkStoreName: 'Devices',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onGroupsClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.settingsGroups,
- items: {
- xtype: 'linkGroupsView',
- baseObjectName: 'userId',
- linkObjectName: 'groupId',
- storeName: 'AllGroups',
- linkStoreName: 'Groups',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onGeofencesClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedGeofences,
- items: {
- xtype: 'linkGeofencesView',
- baseObjectName: 'userId',
- linkObjectName: 'geofenceId',
- storeName: 'AllGeofences',
- linkStoreName: 'Geofences',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onNotificationsClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedNotifications,
- items: {
- xtype: 'linkNotificationsView',
- baseObjectName: 'userId',
- linkObjectName: 'notificationId',
- storeName: 'AllNotifications',
- linkStoreName: 'Notifications',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onCalendarsClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedCalendars,
- items: {
- xtype: 'linkCalendarsView',
- baseObjectName: 'userId',
- linkObjectName: 'calendarId',
- storeName: 'AllCalendars',
- linkStoreName: 'Calendars',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onUsersClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.settingsUsers,
- items: {
- xtype: 'linkUsersView',
- baseObjectName: 'userId',
- linkObjectName: 'managedUserId',
- storeName: 'Users',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onAttributesClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedComputedAttributes,
- items: {
- xtype: 'linkComputedAttributesView',
- baseObjectName: 'userId',
- linkObjectName: 'attributeId',
- storeName: 'AllComputedAttributes',
- linkStoreName: 'ComputedAttributes',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onDriversClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedDrivers,
- items: {
- xtype: 'linkDriversView',
- baseObjectName: 'userId',
- linkObjectName: 'driverId',
- storeName: 'AllDrivers',
- linkStoreName: 'Drivers',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onCommandsClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedSavedCommands,
- items: {
- xtype: 'linkSavedCommandsView',
- baseObjectName: 'userId',
- linkObjectName: 'commandId',
- storeName: 'AllCommands',
- linkStoreName: 'Commands',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onMaintenancesClick: function () {
- var user = this.getView().getSelectionModel().getSelection()[0];
- Ext.create('Traccar.view.BaseWindow', {
- title: Strings.sharedMaintenance,
- items: {
- xtype: 'linkMaintenancesView',
- baseObjectName: 'userId',
- linkObjectName: 'maintenanceId',
- storeName: 'AllMaintenances',
- linkStoreName: 'Maintenances',
- baseObject: user.getId()
- }
- }).show();
- },
-
- onSelectionChange: function (selection, selected) {
- var disabled = selected.length === 0;
- this.lookupReference('userDevicesButton').setDisabled(disabled);
- this.lookupReference('userGroupsButton').setDisabled(disabled);
- this.lookupReference('userGeofencesButton').setDisabled(disabled);
- this.lookupReference('userNotificationsButton').setDisabled(disabled);
- this.lookupReference('userCalendarsButton').setDisabled(disabled);
- this.lookupReference('userAttributesButton').setDisabled(disabled);
- this.lookupReference('userDriversButton').setDisabled(disabled);
- this.lookupReference('userCommandsButton').setDisabled(disabled);
- this.lookupReference('userMaintenancesButton').setDisabled(disabled);
- this.lookupReference('userUsersButton').setDisabled(disabled || selected[0].get('userLimit') === 0);
- this.callParent(arguments);
- }
-});
diff --git a/web/app/view/map/BaseMap.js b/web/app/view/map/BaseMap.js
deleted file mode 100644
index 9192a53b..00000000
--- a/web/app/view/map/BaseMap.js
+++ /dev/null
@@ -1,243 +0,0 @@
-/*
- * Copyright 2016 - 2021 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.map.BaseMap', {
- extend: 'Ext.panel.Panel',
- xtype: 'baseMapView',
-
- layout: 'fit',
-
- getMap: function () {
- return this.map;
- },
-
- getMapView: function () {
- return this.mapView;
- },
-
- initMap: function () {
- var server, layer, type, bingKey, locationIqKey, lat, lon, zoom, maxZoom, target, poiLayer, self = this;
-
- server = Traccar.app.getServer();
-
- type = Traccar.app.getPreference('map', null);
- bingKey = server.get('bingKey');
- locationIqKey = Traccar.app.getAttributePreference('locationIqKey', 'pk.0f147952a41c555a5b70614039fd148b');
-
- layer = new ol.layer.Group({
- title: Strings.mapLayer,
- layers: [
- new ol.layer.Tile({
- title: Strings.mapCustom,
- type: 'base',
- visible: type === 'custom',
- source: new ol.source.XYZ({
- url: Ext.String.htmlDecode(server.get('mapUrl')),
- attributions: ''
- })
- }),
- new ol.layer.Tile({
- title: Strings.mapCustomArcgis,
- type: 'base',
- visible: type === 'customArcgis',
- source: new ol.source.TileArcGISRest({
- url: Ext.String.htmlDecode(server.get('mapUrl'))
- })
- }),
- new ol.layer.Tile({
- title: Strings.mapBingRoad,
- type: 'base',
- visible: type === 'bingRoad',
- source: new ol.source.BingMaps({
- key: bingKey,
- imagerySet: 'Road'
- })
- }),
- new ol.layer.Tile({
- title: Strings.mapBingAerial,
- type: 'base',
- visible: type === 'bingAerial',
- source: new ol.source.BingMaps({
- key: bingKey,
- imagerySet: 'Aerial'
- })
- }),
- new ol.layer.Tile({
- title: Strings.mapBingHybrid,
- type: 'base',
- visible: type === 'bingHybrid',
- source: new ol.source.BingMaps({
- key: bingKey,
- imagerySet: 'AerialWithLabels'
- })
- }),
- new ol.layer.Tile({
- title: Strings.mapCarto,
- type: 'base',
- visible: type === 'carto',
- source: new ol.source.XYZ({
- url: 'https://cartodb-basemaps-{a-d}.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png',
- attributions: '&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> ' +
- 'contributors, &copy; <a href="https://carto.com/attributions">CARTO</a>'
- })
- }),
- new ol.layer.Tile({
- title: Strings.mapAutoNavi,
- type: 'base',
- visible: type === 'autoNavi' || type === 'baidu',
- source: new ol.source.OSM({
- url: 'https://webrd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}'
- })
- }),
- new ol.layer.Tile({
- title: Strings.mapYandexMap,
- type: 'base',
- visible: type === 'yandexMap',
- source: new ol.source.XYZ({
- url: 'https://core-renderer-tiles.maps.yandex.net/tiles?l=map&x={x}&y={y}&z={z}',
- projection: 'EPSG:3395',
- attributions: '&copy; <a href="https://yandex.com/maps/">Yandex</a>'
- })
- }),
- new ol.layer.Tile({
- title: Strings.mapYandexSat,
- type: 'base',
- visible: type === 'yandexSat',
- source: new ol.source.XYZ({
- url: 'https://core-sat.maps.yandex.net/tiles?l=sat&x={x}&y={y}&z={z}',
- projection: 'EPSG:3395',
- attributions: '&copy; <a href="https://yandex.com/maps/">Yandex</a>'
- })
- }),
- new ol.layer.Tile({
- title: Strings.mapOsm,
- type: 'base',
- visible: type === 'osm',
- source: new ol.source.OSM({})
- }),
- new ol.layer.Tile({
- title: Strings.mapLocationIqStreets,
- type: 'base',
- visible: type === 'locationIqStreets' || type === 'wikimedia' || !type,
- source: new ol.source.XYZ({
- url: 'https://{a-c}-tiles.locationiq.com/v3/streets/r/{z}/{x}/{y}.png?key=' + locationIqKey,
- attributions: '&copy; <a href="https://locationiq.com/">LocationIQ</a>'
- })
- })
- ]
- });
-
- lat = Traccar.app.getPreference('latitude', Traccar.Style.mapDefaultLat);
- lon = Traccar.app.getPreference('longitude', Traccar.Style.mapDefaultLon);
- zoom = Traccar.app.getPreference('zoom', Traccar.Style.mapDefaultZoom);
- maxZoom = Traccar.app.getAttributePreference('web.maxZoom', Traccar.Style.mapMaxZoom);
-
- this.mapView = new ol.View({
- center: ol.proj.fromLonLat([lon, lat]),
- zoom: zoom,
- maxZoom: maxZoom
- });
-
- this.map = new ol.Map({
- target: this.body.dom.id,
- layers: [layer],
- view: this.mapView
- });
-
- poiLayer = Traccar.app.getPreference('poiLayer', null);
-
- if (poiLayer) {
- this.map.addLayer(new ol.layer.Vector({
- source: new ol.source.Vector({
- url: poiLayer,
- format: new ol.format.KML()
- })
- }));
- }
-
- switch (Traccar.app.getAttributePreference('distanceUnit', 'km')) {
- case 'mi':
- this.map.addControl(new ol.control.ScaleLine({
- units: 'us'
- }));
- break;
- case 'nmi':
- this.map.addControl(new ol.control.ScaleLine({
- units: 'nautical'
- }));
- break;
- default:
- this.map.addControl(new ol.control.ScaleLine());
- break;
- }
-
- this.map.addControl(new ol.control.LayerSwitcher());
-
- target = this.map.getTarget();
- if (typeof target === 'string') {
- target = Ext.get(target).dom;
- }
-
- this.map.on('pointermove', function (e) {
- var hit = this.forEachFeatureAtPixel(e.pixel, function () {
- return true;
- });
- if (hit) {
- target.style.cursor = 'pointer';
- } else {
- target.style.cursor = '';
- }
- });
-
- this.map.on('click', function (e) {
- var i, features = self.map.getFeaturesAtPixel(e.pixel, {
- layerFilter: function (layer) {
- return !layer.get('name');
- }
- });
- if (features) {
- for (i = 0; i < features.length; i++) {
- self.fireEvent('selectfeature', features[i]);
- }
- } else {
- self.fireEvent('deselectfeature');
- }
- });
-
- this.map.once('postrender', function () {
- self.fireEvent('mapready');
- });
- },
-
- listeners: {
- afterrender: function () {
- this.initMap();
- },
-
- resize: function () {
- this.map.updateSize();
- }
- }
-}, function () {
- var projection;
- proj4.defs('EPSG:3395', '+proj=merc +lon_0=0 +k=1 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs');
- ol.proj.proj4.register(proj4);
- projection = ol.proj.get('EPSG:3395');
- if (projection) {
- projection.setExtent([-20037508.342789244, -20037508.342789244, 20037508.342789244, 20037508.342789244]);
- }
-});
diff --git a/web/app/view/map/GeofenceMap.js b/web/app/view/map/GeofenceMap.js
deleted file mode 100644
index cc1b7efe..00000000
--- a/web/app/view/map/GeofenceMap.js
+++ /dev/null
@@ -1,150 +0,0 @@
-/*
- * Copyright 2016 - 2021 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.map.GeofenceMap', {
- extend: 'Traccar.view.map.BaseMap',
- xtype: 'geofenceMapView',
-
- requires: [
- 'Traccar.view.map.GeofenceMapController',
- 'Traccar.GeofenceConverter'
- ],
-
- controller: 'geofenceMap',
- bodyBorder: true,
-
- tbar: {
- items: [{
- xtype: 'combobox',
- store: 'GeofenceTypes',
- valueField: 'key',
- displayField: 'name',
- editable: false,
- listeners: {
- select: 'onTypeSelect'
- }
- }, '-', {
- xtype: 'tbtext',
- html: Strings.sharedImport
- }, {
- xtype: 'filefield',
- name: 'file',
- buttonConfig: {
- glyph: 'xf093@FontAwesome',
- text: '',
- tooltip: Strings.sharedSelectFile,
- tooltipType: 'title'
- },
- listeners: {
- change: 'onFileChange',
- afterrender: function (fileField) {
- fileField.fileInputEl.set({
- accept: '.gpx'
- });
- }
- }
- }, {
- xtype: 'tbfill'
- }, {
- glyph: 'xf00c@FontAwesome',
- tooltip: Strings.sharedSave,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onSaveClick'
- }, {
- glyph: 'xf00d@FontAwesome',
- tooltip: Strings.sharedCancel,
- tooltipType: 'title',
- minWidth: 0,
- handler: 'onCancelClick'
- }]
- },
-
- getFeatures: function () {
- return this.features;
- },
-
- initMap: function () {
- var map, mapView, featureOverlay, geometry, fillColor;
- this.callParent();
-
- map = this.map;
- mapView = this.mapView;
-
- this.features = new ol.Collection();
- if (this.area) {
- geometry = Traccar.GeofenceConverter.wktToGeometry(mapView, this.area);
- this.features.push(new ol.Feature(geometry));
- this.map.once('postrender', function () {
- mapView.fit(geometry, {
- padding: [20, 20, 20, 20]
- });
- });
- } else {
- this.controller.fireEvent('mapstaterequest');
- }
- fillColor = ol.color.asArray(Traccar.Style.mapGeofenceColor);
- fillColor[3] = Traccar.Style.mapGeofenceOverlayOpacity;
- featureOverlay = new ol.layer.Vector({
- source: new ol.source.Vector({
- features: this.features
- }),
- style: new ol.style.Style({
- fill: new ol.style.Fill({
- color: fillColor
- }),
- stroke: new ol.style.Stroke({
- color: Traccar.Style.mapGeofenceColor,
- width: Traccar.Style.mapGeofenceWidth
- }),
- image: new ol.style.Circle({
- radius: Traccar.Style.mapGeofenceRadius,
- fill: new ol.style.Fill({
- color: Traccar.Style.mapGeofenceColor
- })
- })
- })
- });
- featureOverlay.setMap(map);
-
- map.addInteraction(new ol.interaction.Modify({
- features: this.features,
- deleteCondition: function (event) {
- return ol.events.condition.shiftKeyOnly(event) && ol.events.condition.singleClick(event);
- }
- }));
- },
-
- addInteraction: function (type) {
- var self = this;
- this.draw = new ol.interaction.Draw({
- features: this.features,
- type: type
- });
- this.draw.on('drawstart', function () {
- self.features.clear();
- });
- this.map.addInteraction(this.draw);
- },
-
- removeInteraction: function () {
- if (this.draw) {
- this.map.removeInteraction(this.draw);
- this.draw = null;
- }
- }
-});
diff --git a/web/app/view/map/GeofenceMapController.js b/web/app/view/map/GeofenceMapController.js
deleted file mode 100644
index 31ab586c..00000000
--- a/web/app/view/map/GeofenceMapController.js
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.map.GeofenceMapController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.geofenceMap',
-
- requires: [
- 'Traccar.GeofenceConverter'
- ],
-
- config: {
- listen: {
- controller: {
- '*': {
- mapstate: 'setMapState'
- }
- }
- }
- },
-
- onFileChange: function (fileField) {
- var reader, view = this.getView();
- if (fileField.fileInputEl.dom.files.length > 0) {
- reader = new FileReader();
- reader.onload = function () {
- var parser, xml, segment, projection, points = [];
- parser = new DOMParser();
- xml = parser.parseFromString(reader.result, 'text/xml');
- segment = xml.getElementsByTagName('trkseg')[0];
- projection = view.mapView.getProjection();
- Array.from(segment.getElementsByTagName('trkpt')).forEach(function (point) {
- var lat, lon;
- lat = Number(point.getAttribute('lat'));
- lon = Number(point.getAttribute('lon'));
- points.push(ol.proj.transform([lon, lat], 'EPSG:4326', projection));
- });
- view.getFeatures().clear();
- view.getFeatures().push(new ol.Feature(new ol.geom.LineString(points)));
- };
- reader.onerror = function (event) {
- Traccar.app.showError(event.target.error);
- };
- reader.readAsText(fileField.fileInputEl.dom.files[0]);
- }
- },
-
- onSaveClick: function (button) {
- var geometry, projection;
- if (this.getView().getFeatures().getLength() > 0) {
- geometry = this.getView().getFeatures().pop().getGeometry();
- projection = this.getView().getMapView().getProjection();
- this.fireEvent('savearea', Traccar.GeofenceConverter.geometryToWkt(projection, geometry));
- button.up('window').close();
- }
- },
-
- onCancelClick: function (button) {
- button.up('window').close();
- },
-
- onTypeSelect: function (combo) {
- this.getView().removeInteraction();
- this.getView().addInteraction(combo.getValue());
- },
-
- setMapState: function (lat, lon, zoom) {
- this.getView().getMapView().setCenter(ol.proj.fromLonLat([lon, lat]));
- this.getView().getMapView().setZoom(zoom);
- }
-});
diff --git a/web/app/view/map/Map.js b/web/app/view/map/Map.js
deleted file mode 100644
index 36e81de7..00000000
--- a/web/app/view/map/Map.js
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.map.Map', {
- extend: 'Traccar.view.map.BaseMap',
- xtype: 'mapView',
-
- requires: [
- 'Traccar.view.map.MapController',
- 'Traccar.view.SettingsMenu'
- ],
-
- controller: 'map',
-
- title: Strings.mapTitle,
- tbar: {
- componentCls: 'toolbar-header-style',
- defaults: {
- xtype: 'button',
- tooltipType: 'title',
- stateEvents: ['toggle'],
- enableToggle: true,
- stateful: {
- pressed: true
- }
- },
- items: [{
- xtype: 'tbtext',
- html: Strings.mapTitle,
- baseCls: 'x-panel-header-title-default'
- }, {
- xtype: 'tbfill'
- }, {
- handler: 'showReports',
- reference: 'showReportsButton',
- glyph: 'xf0f6@FontAwesome',
- stateful: false,
- enableToggle: false,
- tooltip: Strings.reportTitle
- }, {
- handler: 'showEvents',
- reference: 'showEventsButton',
- glyph: 'xf27b@FontAwesome',
- stateful: false,
- enableToggle: false,
- tooltip: Strings.reportEvents
- }, {
- handler: 'updateGeofences',
- reference: 'showGeofencesButton',
- glyph: 'xf21d@FontAwesome',
- pressed: true,
- stateId: 'show-geofences-button',
- tooltip: Strings.sharedGeofences
- }, {
- handler: 'showAccuracy',
- reference: 'showAccuracyButton',
- glyph: 'xf140@FontAwesome',
- pressed: true,
- stateId: 'show-accuracy-button',
- tooltip: Strings.positionAccuracy
- }, {
- handler: 'showCurrentLocation',
- glyph: 'xf124@FontAwesome',
- tooltip: Strings.mapCurrentLocation
- }, {
- handler: 'showLiveRoutes',
- reference: 'showLiveRoutes',
- glyph: 'xf1b0@FontAwesome',
- stateId: 'show-live-routes-button',
- tooltip: Strings.mapLiveRoutes
- }, {
- reference: 'deviceFollowButton',
- glyph: 'xf05b@FontAwesome',
- tooltip: Strings.deviceFollow,
- stateId: 'device-follow-button',
- toggleHandler: 'onFollowClick'
- }, {
- xtype: 'settingsMenu',
- enableToggle: false
- }]
- },
-
- getMarkersSource: function () {
- return this.markersSource;
- },
-
- getAccuracySource: function () {
- return this.accuracySource;
- },
-
- getAccuracyLayer: function () {
- return this.accuracyLayer;
- },
-
- getRouteSource: function () {
- return this.routeSource;
- },
-
- getGeofencesSource: function () {
- return this.geofencesSource;
- },
-
- getLiveRouteSource: function () {
- return this.liveRouteSource;
- },
-
- getLiveRouteLayer: function () {
- return this.liveRouteLayer;
- },
-
- initMap: function () {
- this.callParent();
-
- this.geofencesSource = new ol.source.Vector({});
- this.map.addLayer(new ol.layer.Vector({
- name: 'geofencesLayer',
- source: this.geofencesSource
- }));
-
- this.liveRouteSource = new ol.source.Vector({});
- this.liveRouteLayer = new ol.layer.Vector({
- source: this.liveRouteSource,
- visible: this.lookupReference('showLiveRoutes').pressed
- });
- this.map.addLayer(this.liveRouteLayer);
-
- this.routeSource = new ol.source.Vector({});
- this.map.addLayer(new ol.layer.Vector({
- source: this.routeSource
- }));
-
- this.accuracySource = new ol.source.Vector({});
- this.accuracyLayer = new ol.layer.Vector({
- name: 'accuracyLayer',
- source: this.accuracySource
- });
- this.map.addLayer(this.accuracyLayer);
-
- this.markersSource = new ol.source.Vector({});
- this.map.addLayer(new ol.layer.Vector({
- source: this.markersSource
- }));
- }
-});
diff --git a/web/app/view/map/MapController.js b/web/app/view/map/MapController.js
deleted file mode 100644
index f6d88eed..00000000
--- a/web/app/view/map/MapController.js
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright 2015 - 2022 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.map.MapController', {
- extend: 'Traccar.view.map.MapMarkerController',
- alias: 'controller.map',
-
- requires: [
- 'Traccar.GeofenceConverter'
- ],
-
- config: {
- listen: {
- controller: {
- '*': {
- mapstaterequest: 'getMapState',
- zoomtoalldevices: 'zoomToAllDevices'
- }
- },
- store: {
- '#Geofences': {
- load: 'updateGeofences',
- add: 'updateGeofences',
- update: 'updateGeofences',
- remove: 'updateGeofences'
- }
- }
- }
- },
-
- init: function () {
- this.callParent();
- this.lookupReference('showReportsButton').setVisible(
- Traccar.app.isMobile() && !Traccar.app.getPreference('disableReports', false));
- this.lookupReference('showEventsButton').setVisible(
- Traccar.app.isMobile() && !Traccar.app.getBooleanAttributePreference('ui.disableEvents'));
- },
-
- showReports: function () {
- Traccar.app.showReports(true);
- },
-
- showEvents: function () {
- Traccar.app.showEvents(true);
- },
-
- onFollowClick: function (button, pressed) {
- if (pressed && this.selectedMarker) {
- this.getView().getMapView().setCenter(this.selectedMarker.getGeometry().getCoordinates());
- }
- },
-
- showLiveRoutes: function (button) {
- this.getView().getLiveRouteLayer().setVisible(button.pressed);
- },
-
- showAccuracy: function (button) {
- this.getView().getAccuracyLayer().setVisible(button.pressed);
- },
-
- getMapState: function () {
- var zoom, center, projection;
- projection = this.getView().getMapView().getProjection();
- center = ol.proj.transform(this.getView().getMapView().getCenter(), projection, 'EPSG:4326');
- zoom = this.getView().getMapView().getZoom();
- this.fireEvent('mapstate', center[1], center[0], zoom);
- },
-
- updateGeofences: function () {
- this.getView().getGeofencesSource().clear();
- if (this.lookupReference('showGeofencesButton').pressed) {
- Ext.getStore('Geofences').each(function (geofence) {
- var feature = new ol.Feature(
- Traccar.GeofenceConverter.wktToGeometry(this.getView().getMapView(), geofence.get('area')));
- feature.setStyle(this.getAreaStyle(
- Ext.String.htmlDecode(geofence.get('name')),
- geofence.get('attributes') ? geofence.get('attributes').color : null));
- this.getView().getGeofencesSource().addFeature(feature);
- return true;
- }, this);
- }
- },
-
- zoomToAllDevices: function () {
- this.zoomToAllPositions(Ext.getStore('LatestPositions').getData().items);
- }
-});
diff --git a/web/app/view/map/MapMarkerController.js b/web/app/view/map/MapMarkerController.js
deleted file mode 100644
index 2fef4870..00000000
--- a/web/app/view/map/MapMarkerController.js
+++ /dev/null
@@ -1,687 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.map.MapMarkerController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.mapMarker',
-
- requires: [
- 'Traccar.model.Position',
- 'Traccar.model.Device',
- 'Traccar.DeviceImages'
- ],
-
- config: {
- listen: {
- controller: {
- '*': {
- selectdevice: 'selectDevice',
- selectreport: 'selectReport',
- selectevent: 'selectEvent'
- },
- 'devices': {
- deselectfeature: 'deselectDevice'
- }
- },
- store: {
- '#Devices': {
- add: 'updateDevice',
- update: 'updateDevice',
- remove: 'removeDevice'
- },
- '#VisibleDevices': {
- add: 'updateVisibleDevices',
- update: 'updateVisibleDevices',
- remove: 'updateVisibleDevices',
- refresh: 'filterDevices'
- },
- '#LatestPositions': {
- add: 'updateLatest',
- update: 'updateLatest'
- },
- '#ReportRoute': {
- add: 'addReportMarkers',
- load: 'loadReport',
- clear: 'clearReport'
- },
- '#Events': {
- remove: 'clearEvent',
- clear: 'clearEvent'
- }
- },
- component: {
- '#': {
- mapready: 'initGeolocation',
- selectfeature: 'selectFeature',
- deselectfeature: 'deselectFeature'
- }
- }
- }
- },
-
- init: function () {
- this.latestMarkers = {};
- this.reportMarkers = {};
- this.accuracyCircles = {};
- this.liveRoutes = {};
- this.liveRouteLength = Traccar.app.getAttributePreference('web.liveRouteLength', 10);
- this.selectZoom = Traccar.app.getAttributePreference('web.selectZoom', 0);
- },
-
- initGeolocation: function () {
- var geolocation, accuracyFeature, positionFeature;
-
- geolocation = new ol.Geolocation({
- trackingOptions: {
- enableHighAccuracy: true
- },
- projection: this.getView().getMapView().getProjection()
- });
-
- geolocation.on('error', function (error) {
- Traccar.app.showError(error.message);
- });
-
- accuracyFeature = new ol.Feature();
- geolocation.on('change:accuracyGeometry', function () {
- accuracyFeature.setGeometry(geolocation.getAccuracyGeometry());
- });
-
- positionFeature = new ol.Feature();
- positionFeature.setStyle(new ol.style.Style({
- image: new ol.style.Circle({
- radius: 6,
- fill: new ol.style.Fill({
- color: '#3399CC'
- }),
- stroke: new ol.style.Stroke({
- color: '#fff',
- width: 2
- })
- })
- }));
-
- geolocation.on('change:position', function () {
- var coordinates = geolocation.getPosition();
- positionFeature.setGeometry(coordinates ? new ol.geom.Point(coordinates) : null);
- });
-
- this.getView().getAccuracySource().addFeature(accuracyFeature);
- this.getView().getMarkersSource().addFeature(positionFeature);
-
- this.geolocation = geolocation;
- },
-
- showCurrentLocation: function (view) {
- this.geolocation.setTracking(view.pressed);
- },
-
- getAreaStyle: function (label, color) {
- var fillColor, strokeColor, styleConfig;
- if (color) {
- fillColor = ol.color.asArray(color);
- strokeColor = color;
- } else {
- fillColor = ol.color.asArray(Traccar.Style.mapGeofenceColor);
- strokeColor = Traccar.Style.mapGeofenceColor;
- }
- fillColor[3] = Traccar.Style.mapGeofenceOverlayOpacity;
- styleConfig = {
- fill: new ol.style.Fill({
- color: fillColor
- }),
- stroke: new ol.style.Stroke({
- color: strokeColor,
- width: Traccar.Style.mapGeofenceWidth
- })
- };
- if (label) {
- styleConfig.text = new ol.style.Text({
- text: label,
- overflow: true,
- fill: new ol.style.Fill({
- color: Traccar.Style.mapGeofenceTextColor
- }),
- stroke: new ol.style.Stroke({
- color: Traccar.Style.mapTextStrokeColor,
- width: Traccar.Style.mapTextStrokeWidth
- }),
- font: Traccar.Style.mapTextFont
- });
- }
- return new ol.style.Style(styleConfig);
- },
-
- getDeviceColor: function (device) {
- switch (device.get('status')) {
- case 'online':
- return Traccar.Style.mapColorOnline;
- case 'offline':
- return Traccar.Style.mapColorOffline;
- default:
- return Traccar.Style.mapColorUnknown;
- }
- },
-
- updateDevice: function (store, data) {
- var i, device, deviceId, deviceName, marker, style;
-
- if (!Ext.isArray(data)) {
- data = [data];
- }
-
- for (i = 0; i < data.length; i++) {
- device = data[i];
- deviceId = device.get('id');
-
- if (deviceId in this.latestMarkers) {
- marker = this.latestMarkers[deviceId];
- style = marker.getStyle();
- if (style.getImage().fill !== this.getDeviceColor(device) ||
- style.getImage().category !== device.get('category')) {
- this.updateDeviceMarker(style, this.getDeviceColor(device), device.get('category'));
- marker.changed();
- }
- deviceName = Ext.String.htmlDecode(device.get('name'));
- if (style.getText().getText() !== deviceName) {
- style.getText().setText(deviceName);
- marker.changed();
- }
- }
- }
- },
-
- removeDevice: function (store, data) {
- var i, deviceId, markersSource;
- if (!Ext.isArray(data)) {
- data = [data];
- }
-
- markersSource = this.getView().getMarkersSource();
-
- for (i = 0; i < data.length; i++) {
- deviceId = data[i].get('id');
- if (this.latestMarkers[deviceId]) {
- if (markersSource.getFeatureById(this.latestMarkers[deviceId].getId())) {
- markersSource.removeFeature(this.latestMarkers[deviceId]);
- }
- delete this.latestMarkers[deviceId];
- }
- if (this.accuracyCircles[deviceId]) {
- if (markersSource.getFeatureById(this.accuracyCircles[deviceId].getId())) {
- markersSource.removeFeature(this.accuracyCircles[deviceId]);
- }
- delete this.accuracyCircles[deviceId];
- }
- if (this.liveRoutes[deviceId]) {
- if (markersSource.getFeatureById(this.liveRoutes[deviceId].getId())) {
- markersSource.removeFeature(this.liveRoutes[deviceId]);
- }
- delete this.liveRoutes[deviceId];
- }
- }
- },
-
- animateMarker: function (marker, geometry, course) {
- var start, end, duration, timeout, line, updatePosition, self, follow;
-
- start = marker.getGeometry().getCoordinates();
- end = geometry.getCoordinates();
- line = new ol.geom.LineString([start, end]);
- duration = Traccar.Style.mapAnimateMarkerDuration;
- timeout = Traccar.Style.mapAnimateMarkerTimeout;
- self = this;
- follow = this.lookupReference('deviceFollowButton').pressed;
-
- updatePosition = function (position, marker) {
- var coordinate, style;
- coordinate = marker.get('line').getCoordinateAt(position / (duration / timeout));
- style = marker.getStyle();
- marker.setGeometry(new ol.geom.Point(coordinate));
- if (marker === self.selectedMarker && follow) {
- self.getView().getMapView().setCenter(marker.getGeometry().getCoordinates());
- }
- if (position < duration / timeout) {
- setTimeout(updatePosition, timeout, position + 1, marker);
- } else {
- if (style.getImage().angle !== marker.get('nextCourse')) {
- self.rotateMarker(style, marker.get('nextCourse'));
- }
- marker.set('animating', false);
- }
- };
-
- marker.set('line', line);
- marker.set('nextCourse', course);
- if (!marker.get('animating')) {
- marker.set('animating', true);
- updatePosition(1, marker);
- }
- },
-
- updateLatest: function (store, data) {
- var i, position, device, deviceStore;
-
- if (!Ext.isArray(data)) {
- data = [data];
- }
-
- deviceStore = Ext.getStore('Devices');
-
- for (i = 0; i < data.length; i++) {
- position = data[i];
- device = deviceStore.getById(position.get('deviceId'));
-
- if (device) {
- this.updateAccuracy(position, device);
- this.updateLatestMarker(position, device);
- this.updateLiveRoute(position, device);
- }
- }
- },
-
- updateAccuracy: function (position, device) {
- var center, radius, feature;
- feature = this.accuracyCircles[position.get('deviceId')];
-
- if (position.get('accuracy')) {
- center = ol.proj.fromLonLat([position.get('longitude'), position.get('latitude')]);
- radius = Ext.getStore('DistanceUnits').convertValue(
- position.get('accuracy'), Traccar.app.getAttributePreference('distanceUnit'), true);
-
- if (feature) {
- feature.getGeometry().setCenter(center);
- feature.getGeometry().setRadius(radius);
- } else {
- feature = new ol.Feature(new ol.geom.Circle(center, radius));
- feature.setStyle(this.getAreaStyle(null, Traccar.Style.mapAccuracyColor));
- feature.setId(position.get('deviceId'));
- this.accuracyCircles[position.get('deviceId')] = feature;
- if (this.isDeviceVisible(device)) {
- this.getView().getAccuracySource().addFeature(feature);
- }
- }
- } else {
- if (feature && this.getView().getAccuracySource().getFeatureById(feature.getId())) {
- this.getView().getAccuracySource().removeFeature(feature);
- }
- delete this.accuracyCircles[position.get('deviceId')];
- }
- },
-
- updateLatestMarker: function (position, device) {
- var geometry, deviceId, marker, style;
- geometry = new ol.geom.Point(ol.proj.fromLonLat([
- position.get('longitude'),
- position.get('latitude')
- ]));
- deviceId = position.get('deviceId');
- if (deviceId in this.latestMarkers) {
- marker = this.latestMarkers[deviceId];
- this.animateMarker(marker, geometry, position.get('course'));
- } else {
- marker = new ol.Feature(geometry);
- marker.set('record', device);
-
- style = this.getLatestMarker(this.getDeviceColor(device),
- position.get('course'),
- device.get('category'));
- style.getText().setText(Ext.String.htmlDecode(device.get('name')));
- marker.setStyle(style);
- marker.setId(device.get('id'));
- this.latestMarkers[deviceId] = marker;
- if (this.isDeviceVisible(device)) {
- this.getView().getMarkersSource().addFeature(marker);
- }
- if (marker === this.selectedMarker && this.lookupReference('deviceFollowButton').pressed) {
- this.getView().getMapView().setCenter(marker.getGeometry().getCoordinates());
- }
- }
- },
-
- updateLiveRoute: function (position, device) {
- var deviceId, liveLine, liveCoordinates, lastLiveCoordinates, newCoordinates;
- deviceId = position.get('deviceId');
- if (deviceId in this.liveRoutes) {
- liveCoordinates = this.liveRoutes[deviceId].getGeometry().getCoordinates();
- lastLiveCoordinates = liveCoordinates[liveCoordinates.length - 1];
- newCoordinates = ol.proj.fromLonLat([position.get('longitude'), position.get('latitude')]);
- if (lastLiveCoordinates[0] === newCoordinates[0] &&
- lastLiveCoordinates[1] === newCoordinates[1]) {
- return;
- }
- if (liveCoordinates.length >= this.liveRouteLength) {
- liveCoordinates.shift();
- }
- liveCoordinates.push(newCoordinates);
- this.liveRoutes[deviceId].getGeometry().setCoordinates(liveCoordinates);
- } else {
- liveLine = new ol.Feature({
- geometry: new ol.geom.LineString([
- ol.proj.fromLonLat([
- position.get('longitude'),
- position.get('latitude')
- ])
- ])
- });
- liveLine.setStyle(this.getRouteStyle(deviceId));
- liveLine.setId(deviceId);
- this.liveRoutes[deviceId] = liveLine;
- if (this.isDeviceVisible(device)) {
- this.getView().getMarkersSource().addFeature(liveLine);
- }
- }
- },
-
- loadReport: function (store, data) {
- var i, position, point, routeSource;
- if (data) {
- this.addReportMarkers(store, data);
- routeSource = this.getView().getRouteSource();
-
- this.reportRoute = [];
- for (i = 0; i < data.length; i++) {
- position = data[i];
- point = ol.proj.fromLonLat([
- position.get('longitude'),
- position.get('latitude')
- ]);
- if (i === 0 || data[i].get('deviceId') !== data[i - 1].get('deviceId')) {
- this.reportRoute.push(new ol.Feature({
- geometry: new ol.geom.LineString([])
- }));
- this.reportRoute[this.reportRoute.length - 1].setStyle(this.getRouteStyle(data[i].get('deviceId')));
- routeSource.addFeature(this.reportRoute[this.reportRoute.length - 1]);
- }
- this.reportRoute[this.reportRoute.length - 1].getGeometry().appendCoordinate(point);
- }
- }
- },
-
- addReportMarker: function (position) {
- var geometry, marker, style, point = ol.proj.fromLonLat([
- position.get('longitude'),
- position.get('latitude')
- ]);
- geometry = new ol.geom.Point(point);
- marker = new ol.Feature(geometry);
- marker.set('record', position);
- style = this.getReportMarker(position.get('deviceId'), position.get('course'));
- marker.setStyle(style);
- this.getView().getMarkersSource().addFeature(marker);
- return marker;
- },
-
- addReportMarkers: function (store, data) {
- var i;
- this.clearReport();
- for (i = 0; i < data.length; i++) {
- if (store.showMarkers) {
- this.reportMarkers[data[i].get('id')] = this.addReportMarker(data[i]);
- }
- }
- this.zoomToAllPositions(data);
- },
-
- clearReport: function () {
- var key, i, reportSource, markersSource;
-
- reportSource = this.getView().getRouteSource();
-
- if (this.reportRoute) {
- for (i = 0; i < this.reportRoute.length; i++) {
- reportSource.removeFeature(this.reportRoute[i]);
- }
- this.reportRoute = null;
- }
-
- if (this.reportMarkers) {
- markersSource = this.getView().getMarkersSource();
- for (key in this.reportMarkers) {
- if (this.reportMarkers.hasOwnProperty(key)) {
- markersSource.removeFeature(this.reportMarkers[key]);
- }
- }
- this.reportMarkers = {};
- }
-
- if (this.selectedMarker && !this.selectedMarker.get('event') &&
- this.selectedMarker.get('record') instanceof Traccar.model.Position) {
- this.selectedMarker = null;
- }
- },
-
- clearEvent: function () {
- if (this.selectedMarker && this.selectedMarker.get('event')) {
- this.selectMarker(null, false);
- }
- },
-
- getRouteStyle: function (deviceId) {
- return new ol.style.Style({
- stroke: new ol.style.Stroke({
- color: Traccar.app.getReportColor(deviceId),
- width: Traccar.Style.mapRouteWidth
- })
- });
- },
-
- getMarkerStyle: function (zoom, color, angle, category) {
- var image = Traccar.DeviceImages.getImageIcon(color, zoom, angle, category);
- return new ol.style.Style({
- image: image,
- text: new ol.style.Text({
- textBaseline: 'bottom',
- fill: new ol.style.Fill({
- color: Traccar.Style.mapTextColor
- }),
- stroke: new ol.style.Stroke({
- color: Traccar.Style.mapTextStrokeColor,
- width: Traccar.Style.mapTextStrokeWidth
- }),
- offsetY: -image.getSize()[1] / 2 - Traccar.Style.mapTextOffset,
- font: Traccar.Style.mapTextFont
- })
- });
- },
-
- getLatestMarker: function (color, angle, category) {
- return this.getMarkerStyle(false, color, angle, category);
- },
-
- getReportMarker: function (deviceId, angle) {
- return this.getMarkerStyle(false, Traccar.app.getReportColor(deviceId), angle, 'arrow');
- },
-
- resizeMarker: function (style, zoom) {
- var image, text;
- image = Traccar.DeviceImages.getImageIcon(
- style.getImage().fill, zoom, style.getImage().angle, style.getImage().category);
- text = style.getText();
- text.setOffsetY(-image.getSize()[1] / 2 - Traccar.Style.mapTextOffset);
- style.setText(text);
- style.setImage(image);
- },
-
- rotateMarker: function (style, angle) {
- style.setImage(Traccar.DeviceImages.getImageIcon(
- style.getImage().fill, style.getImage().zoom, angle, style.getImage().category));
- },
-
- updateDeviceMarker: function (style, color, category) {
- var image, text;
- image = Traccar.DeviceImages.getImageIcon(
- color, style.getImage().zoom, style.getImage().angle, category);
- text = style.getText();
- text.setOffsetY(-image.getSize()[1] / 2 - Traccar.Style.mapTextOffset);
- style.setText(text);
- style.setImage(image);
- },
-
- selectMarker: function (marker, center) {
- if (this.selectedMarker) {
- if (this.selectedMarker.get('event')) {
- this.getView().getMarkersSource().removeFeature(this.selectedMarker);
- } else if (!Ext.getStore('ReportRoute').showMarkers &&
- this.selectedMarker.get('record') instanceof Traccar.model.Position) {
- this.getView().getMarkersSource().removeFeature(this.selectedMarker);
- delete this.reportMarkers[this.selectedMarker.get('record').get('id')];
- } else {
- this.resizeMarker(this.selectedMarker.getStyle(), false);
- this.selectedMarker.getStyle().setZIndex(0);
- this.selectedMarker.changed();
- }
- }
-
- if (marker) {
- this.resizeMarker(marker.getStyle(), true);
- marker.getStyle().setZIndex(1);
- marker.changed();
- if (center) {
- this.getView().getMapView().setCenter(marker.getGeometry().getCoordinates());
- if (this.selectZoom !== 0 && this.selectZoom > this.getView().getMapView().getZoom()) {
- this.getView().getMapView().setZoom(this.selectZoom);
- }
- }
- }
-
- this.selectedMarker = marker;
- },
-
- selectDevice: function (device, center) {
- this.selectMarker(this.latestMarkers[device.get('id')], center);
- },
-
- selectReport: function (position, center) {
- if (position instanceof Traccar.model.Position) {
- if (!Ext.getStore('ReportRoute').showMarkers) {
- this.reportMarkers[position.get('id')] = this.addReportMarker(position);
- }
- this.selectMarker(this.reportMarkers[position.get('id')], center);
- } else if (this.selectedMarker) {
- this.selectMarker(null, false);
- }
- },
-
- selectEvent: function (position) {
- var marker;
- if (position) {
- marker = this.addReportMarker(position);
- marker.set('event', true);
- this.selectMarker(marker, true);
- } else if (this.selectedMarker && this.selectedMarker.get('event')) {
- this.selectMarker(null, false);
- }
- },
-
- selectFeature: function (feature) {
- var record = feature.get('record');
- if (record) {
- if (record instanceof Traccar.model.Device) {
- this.fireEvent('selectdevice', record, false);
- } else {
- this.fireEvent('selectreport', record, false);
- }
- }
- },
-
- deselectFeature: function () {
- this.deselectDevice();
- this.fireEvent('deselectfeature');
- },
-
- deselectDevice: function () {
- this.selectMarker(null, false);
- },
-
- zoomToAllPositions: function (data) {
- var i, point, minx, miny, maxx, maxy;
- for (i = 0; i < data.length; i++) {
- point = ol.proj.fromLonLat([
- data[i].get('longitude'),
- data[i].get('latitude')
- ]);
- if (i === 0) {
- minx = maxx = point[0];
- miny = maxy = point[1];
- } else {
- minx = Math.min(point[0], minx);
- miny = Math.min(point[1], miny);
- maxx = Math.max(point[0], maxx);
- maxy = Math.max(point[1], maxy);
- }
- }
- if (minx !== maxx || miny !== maxy) {
- this.getView().getMapView().fit([minx, miny, maxx, maxy]);
- } else if (point) {
- this.getView().getMapView().fit(new ol.geom.Point(point));
- }
- },
-
- updateVisibleDevices: function (store, data) {
- var i, device;
-
- if (!Ext.isArray(data)) {
- data = [data];
- }
-
- for (i = 0; i < data.length; i++) {
- device = data[i];
- if (device.get('id') in this.latestMarkers) {
- this.updateDeviceVisibility(device);
- }
- }
- },
-
- isDeviceVisible: function (device) {
- return Ext.getStore('VisibleDevices').contains(device);
- },
-
- updateDeviceVisibility: function (device) {
- var deviceId, accuracy, liveLine, marker;
- deviceId = device.get('id');
- marker = this.latestMarkers[deviceId];
- accuracy = this.accuracyCircles[deviceId];
- liveLine = this.liveRoutes[deviceId];
- if (this.isDeviceVisible(device)) {
- if (marker && !this.getView().getMarkersSource().getFeatureById(marker.getId())) {
- this.getView().getMarkersSource().addFeature(marker);
- }
- if (accuracy && !this.getView().getAccuracySource().getFeatureById(accuracy.getId())) {
- this.getView().getAccuracySource().addFeature(accuracy);
- }
- if (liveLine && !this.getView().getLiveRouteSource().getFeatureById(liveLine.getId())) {
- this.getView().getLiveRouteSource().addFeature(liveLine);
- }
- } else {
- if (marker && this.getView().getMarkersSource().getFeatureById(marker.getId())) {
- this.getView().getMarkersSource().removeFeature(marker);
- }
- if (accuracy && this.getView().getAccuracySource().getFeatureById(accuracy.getId())) {
- this.getView().getAccuracySource().removeFeature(accuracy);
- }
- if (liveLine && this.getView().getLiveRouteSource().getFeatureById(liveLine.getId())) {
- this.getView().getLiveRouteSource().removeFeature(liveLine);
- }
- }
- },
-
- filterDevices: function () {
- Ext.getStore('Devices').each(this.updateDeviceVisibility, this, false);
- }
-});
diff --git a/web/app/view/permissions/Base.js b/web/app/view/permissions/Base.js
deleted file mode 100644
index 57017531..00000000
--- a/web/app/view/permissions/Base.js
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-Ext.define('Traccar.view.permissions.Base', {
- extend: 'Traccar.view.GridPanel',
-
- requires: [
- 'Traccar.view.permissions.BaseController'
- ],
-
- controller: 'base',
-
- selModel: {
- selType: 'checkboxmodel',
- checkOnly: true,
- showHeaderCheckbox: false
- },
-
- listeners: {
- beforedeselect: 'onBeforeDeselect',
- beforeselect: 'onBeforeSelect'
- }
-});
diff --git a/web/app/view/permissions/BaseController.js b/web/app/view/permissions/BaseController.js
deleted file mode 100644
index 5cb9c302..00000000
--- a/web/app/view/permissions/BaseController.js
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.BaseController', {
- extend: 'Ext.app.ViewController',
- alias: 'controller.base',
-
- init: function () {
- var params = {}, linkStoreName, storeName;
- params[this.getView().baseObjectName] = this.getView().baseObject;
- linkStoreName = this.getView().linkStoreName;
- storeName = this.getView().storeName;
- linkStoreName = typeof linkStoreName === 'undefined' ? storeName : linkStoreName;
- this.getView().setStore(Ext.getStore(storeName));
- this.getView().getStore().load({
- scope: this,
- callback: function () {
- var linkStore = Ext.create('Traccar.store.' + linkStoreName);
- linkStore.load({
- params: params,
- scope: this,
- callback: function (records, operation, success) {
- var i, index;
- if (success) {
- for (i = 0; i < records.length; i++) {
- index = this.getView().getStore().getById(records[i].getId());
- this.getView().getSelectionModel().select(index, true, true);
- }
- }
- }
- });
- }
- });
- },
-
- onBeforeSelect: function (selection, record) {
- var data = {};
- data[this.getView().baseObjectName] = this.getView().baseObject;
- data[this.getView().linkObjectName] = record.getId();
- Ext.Ajax.request({
- scope: this,
- url: 'api/permissions',
- jsonData: Ext.util.JSON.encode(data),
- callback: function (options, success, response) {
- if (!success) {
- selection.deselect(record, true);
- Traccar.app.showError(response);
- }
- }
- });
- },
-
- onBeforeDeselect: function (selection, record) {
- var data = {};
- data[this.getView().baseObjectName] = this.getView().baseObject;
- data[this.getView().linkObjectName] = record.getId();
- Ext.Ajax.request({
- scope: this,
- method: 'DELETE',
- url: 'api/permissions',
- jsonData: Ext.util.JSON.encode(data),
- callback: function (options, success, response) {
- if (!success) {
- selection.select(record, true, true);
- Traccar.app.showError(response);
- }
- }
- });
- }
-});
diff --git a/web/app/view/permissions/Calendars.js b/web/app/view/permissions/Calendars.js
deleted file mode 100644
index 3d08efca..00000000
--- a/web/app/view/permissions/Calendars.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2016 - 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.Calendars', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkCalendarsView',
-
- columns: {
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }]
- }
-});
diff --git a/web/app/view/permissions/ComputedAttributes.js b/web/app/view/permissions/ComputedAttributes.js
deleted file mode 100644
index 19af72ad..00000000
--- a/web/app/view/permissions/ComputedAttributes.js
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.ComputedAttributes', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkComputedAttributesView',
-
- columns: {
- items: [{
- text: Strings.sharedDescription,
- dataIndex: 'description',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }, {
- text: Strings.sharedAttribute,
- dataIndex: 'attribute',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'PositionAttributes'
- },
- renderer: function (value) {
- return Ext.getStore('PositionAttributes').getAttributeName(value);
- }
- }]
- }
-});
diff --git a/web/app/view/permissions/Devices.js b/web/app/view/permissions/Devices.js
deleted file mode 100644
index 3180b107..00000000
--- a/web/app/view/permissions/Devices.js
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.Devices', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkDevicesView',
-
- requires: [
- 'Traccar.AttributeFormatter'
- ],
-
- columns: {
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }, {
- text: Strings.deviceIdentifier,
- dataIndex: 'uniqueId',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }, {
- text: Strings.sharedPhone,
- dataIndex: 'phone',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- hidden: true,
- filter: 'string'
- }, {
- text: Strings.deviceModel,
- dataIndex: 'model',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- hidden: true,
- filter: 'string'
- }, {
- text: Strings.deviceContact,
- dataIndex: 'contact',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- hidden: true,
- filter: 'string'
- }, {
- text: Strings.sharedDisabled,
- dataIndex: 'disabled',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- renderer: Traccar.AttributeFormatter.getFormatter('disabled'),
- hidden: true,
- filter: 'boolean'
- }, {
- text: Strings.groupDialog,
- dataIndex: 'groupId',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- hidden: true,
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'AllGroups'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('groupId')
- }]
- }
-});
diff --git a/web/app/view/permissions/Drivers.js b/web/app/view/permissions/Drivers.js
deleted file mode 100644
index 33cf2f76..00000000
--- a/web/app/view/permissions/Drivers.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.Drivers', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkDriversView',
-
- columns: {
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }, {
- text: Strings.deviceIdentifier,
- dataIndex: 'uniqueId',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }]
- }
-});
diff --git a/web/app/view/permissions/Geofences.js b/web/app/view/permissions/Geofences.js
deleted file mode 100644
index e2e85a36..00000000
--- a/web/app/view/permissions/Geofences.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright 2016 - 2018 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.Geofences', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkGeofencesView',
-
- columns: {
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }, {
- text: Strings.sharedCalendar,
- dataIndex: 'calendarId',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- hidden: true,
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'AllCalendars'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('calendarId')
- }]
- }
-});
diff --git a/web/app/view/permissions/Groups.js b/web/app/view/permissions/Groups.js
deleted file mode 100644
index 91a639c0..00000000
--- a/web/app/view/permissions/Groups.js
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright 2016 - 2017 Anton Tananaev (anton@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.Groups', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkGroupsView',
-
- requires: [
- 'Traccar.AttributeFormatter'
- ],
-
- columns: {
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }, {
- text: Strings.groupDialog,
- dataIndex: 'groupId',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- hidden: true,
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'AllGroups'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('groupId')
- }]
- }
-});
diff --git a/web/app/view/permissions/Maintenances.js b/web/app/view/permissions/Maintenances.js
deleted file mode 100644
index c5255769..00000000
--- a/web/app/view/permissions/Maintenances.js
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.Maintenances', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkMaintenancesView',
-
- columns: {
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }, {
- text: Strings.sharedType,
- dataIndex: 'type',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: {
- type: 'list',
- idField: 'key',
- labelField: 'name',
- store: 'MaintenanceTypes'
- },
- renderer: function (value) {
- var attribute = Ext.getStore('MaintenanceTypes').getById(value);
- return attribute && attribute.get('name') || value;
- }
- }, {
- text: Strings.maintenanceStart,
- dataIndex: 'start',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- renderer: function (value, metaData, record) {
- return Traccar.AttributeFormatter.renderAttribute(
- value, Ext.getStore('MaintenanceTypes').getById(record.get('type')));
- }
- }, {
- text: Strings.maintenancePeriod,
- dataIndex: 'period',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- renderer: function (value, metaData, record) {
- return Traccar.AttributeFormatter.renderAttribute(
- value, Ext.getStore('MaintenanceTypes').getById(record.get('type')));
- }
- }]
- }
-});
diff --git a/web/app/view/permissions/Notifications.js b/web/app/view/permissions/Notifications.js
deleted file mode 100644
index a8570fea..00000000
--- a/web/app/view/permissions/Notifications.js
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 - 2018 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.Notifications', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkNotificationsView',
-
- columns: {
- items: [{
- text: Strings.notificationType,
- dataIndex: 'type',
- flex: 2,
- renderer: function (value) {
- return Traccar.app.getEventString(value);
- },
- filter: {
- type: 'list',
- idField: 'type',
- labelField: 'name',
- store: 'AllNotificationTypes'
- }
- }, {
- text: Strings.notificationAlways,
- dataIndex: 'always',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- renderer: Traccar.AttributeFormatter.getFormatter('always'),
- filter: 'boolean'
- }, {
- text: Strings.notificationNotificators,
- dataIndex: 'notificators',
- flex: 2,
- filter: {
- type: 'arraylist',
- idField: 'type',
- labelField: 'name',
- store: 'AllNotificators'
- },
- renderer: function (value) {
- var result = '', i, notificators;
- if (value) {
- notificators = value.split(/[ ,]+/).filter(Boolean);
- for (i = 0; i < notificators.length; i++) {
- result += Traccar.app.getNotificatorString(notificators[i]) + (i < notificators.length - 1 ? ', ' : '');
- }
- }
- return result;
- }
- }, {
- text: Strings.sharedCalendar,
- dataIndex: 'calendarId',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- hidden: true,
- filter: {
- type: 'list',
- labelField: 'name',
- store: 'AllCalendars'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('calendarId')
- }]
- }
-});
diff --git a/web/app/view/permissions/SavedCommands.js b/web/app/view/permissions/SavedCommands.js
deleted file mode 100644
index b57c07a0..00000000
--- a/web/app/view/permissions/SavedCommands.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.SavedCommands', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkSavedCommandsView',
-
- columns: {
- items: [{
- text: Strings.sharedDescription,
- dataIndex: 'description',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }, {
- text: Strings.sharedType,
- dataIndex: 'type',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: {
- type: 'list',
- idField: 'type',
- labelField: 'name',
- store: 'AllCommandTypes'
- },
- renderer: Traccar.AttributeFormatter.getFormatter('commandType')
- }, {
- text: Strings.commandSendSms,
- dataIndex: 'textChannel',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'boolean'
- }]
- }
-});
diff --git a/web/app/view/permissions/Users.js b/web/app/view/permissions/Users.js
deleted file mode 100644
index 66cf5d62..00000000
--- a/web/app/view/permissions/Users.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-Ext.define('Traccar.view.permissions.Users', {
- extend: 'Traccar.view.permissions.Base',
- xtype: 'linkUsersView',
-
- columns: {
- items: [{
- text: Strings.sharedName,
- dataIndex: 'name',
- flex: 1,
- minWidth: Traccar.Style.columnWidthNormal,
- filter: 'string'
- }]
- }
-});
diff --git a/web/apple-touch-icon.png b/web/apple-touch-icon.png
deleted file mode 100644
index 880c4493..00000000
--- a/web/apple-touch-icon.png
+++ /dev/null
Binary files differ
diff --git a/web/beep.wav b/web/beep.wav
deleted file mode 100644
index c2364f11..00000000
--- a/web/beep.wav
+++ /dev/null
Binary files differ
diff --git a/web/debug.html b/web/debug.html
deleted file mode 100644
index 08b6e07d..00000000
--- a/web/debug.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="UTF-8">
-<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
-<title>${title}</title>
-<link rel="icon" sizes="192x192" href="/icon.png">
-<link rel="apple-touch-icon" href="/apple-touch-icon.png">
-<link rel="stylesheet" href="app.css">
-</head>
-<body>
-<div id="spinner"></div>
-<div id="attribution">Powered by <a href="https://www.traccar.org/" target="_blank">Traccar GPS Tracking System</a></div>
-<script id="loadScript" mode="debug" src="load.js"></script>
-</body>
-</html>
diff --git a/web/favicon.ico b/web/favicon.ico
deleted file mode 100644
index 6be99dda..00000000
--- a/web/favicon.ico
+++ /dev/null
Binary files differ
diff --git a/web/icon.png b/web/icon.png
deleted file mode 100644
index afa15c7b..00000000
--- a/web/icon.png
+++ /dev/null
Binary files differ
diff --git a/web/images/animal.svg b/web/images/animal.svg
deleted file mode 100644
index a077029b..00000000
--- a/web/images/animal.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m19.525 15.802q0 0.5865-0.17372 1.1144-0.17372 0.51808-0.57602 0.8993t-0.96004 0.38122q-0.69489 0-1.2618-0.55718-0.56688-0.56695-0.84118-1.3294t-0.2743-1.476q0-0.5865 0.17372-1.1046 0.17372-0.52785 0.57602-0.90908 0.4023-0.38122 0.96004-0.38122 0.70403 0 1.2618 0.56695 0.56688 0.55718 0.84118 1.3196 0.2743 0.75268 0.2743 1.476zm-3.127 4.7213q0 0.782-0.38402 1.3587-0.38402 0.57672-1.088 0.57672-0.69489 0-1.2983-0.53763-0.59431-0.5474-0.91432-1.3099-0.32001-0.76245-0.32001-1.4858 0-0.782 0.38402-1.3587 0.38402-0.5865 1.088-0.5865 0.69488 0 1.2892 0.5474 0.60345 0.53763 0.92347 1.3099 0.32001 0.76245 0.32001 1.4858zm3.602-0.264q1.0789 0 2.3315 0.95795 1.2526 0.94818 2.0938 2.3167 0.84118 1.3587 0.84118 2.4829 0 0.44965-0.15544 0.7429-0.15544 0.30302-0.44802 0.43988-0.28344 0.14662-0.58517 0.1955-0.30173 0.05865-0.69489 0.05865-0.62174 0-1.7189-0.43988-1.088-0.44-1.664-0.44-0.60345 0-1.7646 0.4301-1.152 0.43988-1.8286 0.43988-1.6732 0-1.6732-1.4272 0-0.84065 0.51202-1.867 0.51202-1.0362 1.2709-1.8866 0.76803-0.85043 1.7189-1.4272 0.951-0.577 1.765-0.577zm2.1852-2.0625q-0.55774 0-0.96004-0.38122t-0.57602-0.8993q-0.17372-0.52785-0.17372-1.1144 0-0.72335 0.2743-1.476 0.2743-0.76245 0.83204-1.3196 0.56688-0.56695 1.2709-0.56695 0.55774 0 0.96004 0.38122t0.57602 0.90908q0.17372 0.51808 0.17372 1.1046 0 0.71358-0.2743 1.476-0.2743 0.76245-0.84118 1.3294-0.56688 0.55718-1.2618 0.55718zm3.9499-1.0166q0.70403 0 1.088 0.5865 0.38402 0.57673 0.38402 1.3587 0 0.72335-0.32001 1.4858t-0.92347 1.3099q-0.59431 0.53763-1.2892 0.53763-0.70403 0-1.088-0.57672-0.38402-0.57673-0.38402-1.3587 0-0.72335 0.32001-1.4858 0.32001-0.77222 0.91432-1.3099 0.60345-0.5474 1.2983-0.5474z"/>
- </g>
-</svg>
diff --git a/web/images/arrow.svg b/web/images/arrow.svg
deleted file mode 100644
index 1aed6e03..00000000
--- a/web/images/arrow.svg
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg3369" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="26" viewBox="0 0 26 26" width="26" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
- <polygon id="arrow" stroke="#000" points="19 22 13 19 7 22 13 4" stroke-width="1px" fill="#008000"/>
-</svg>
diff --git a/web/images/bicycle.svg b/web/images/bicycle.svg
deleted file mode 100644
index 4eb82eaa..00000000
--- a/web/images/bicycle.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m16.793 22.105h-2.5821q-0.32893 0-0.47695-0.28781-0.1398-0.28782 0.05757-0.55096l1.546-2.064q-0.53451-0.25492-1.1266-0.25492-1.0855 0-1.8585 0.77299-0.77299 0.77299-0.77299 1.8585t0.77299 1.8585q0.77299 0.77299 1.8585 0.77299 0.94568 0 1.6693-0.59208 0.72365-0.6003 0.91278-1.5131zm-1.5295-1.0526h1.5295q-0.14802-0.69898-0.61674-1.217l-0.91278 1.217zm3.9472 0 2.3683-3.1577h-3.9472l-0.8141 1.0855q0.86344 0.847 1.0361 2.0723h1.3568zm8.4371 2.3848q0.77299-0.77299 0.77299-1.8585t-0.77299-1.8585q-0.77299-0.77299-1.8585-0.77299-0.4934 0-0.99502 0.19736l1.4308 2.1381q0.12335 0.18914 0.08224 0.40294-0.04112 0.2138-0.22203 0.32893-0.12335 0.09046-0.29604 0.09046-0.28781 0-0.43583-0.23847l-1.4308-2.1381q-0.76476 0.78121-0.76476 1.8502 0 1.0855 0.77299 1.8585 0.77299 0.77299 1.8585 0.77299t1.8585-0.77299zm0.74009-4.457q1.0855 1.0772 1.0855 2.5986 0 1.5213-1.0855 2.6068-1.0772 1.0772-2.5986 1.0772-1.5213 0-2.6068-1.0772-1.0772-1.0855-1.0772-2.6068 0-0.79766 0.32071-1.5049 0.32893-0.71542 0.90456-1.2335l-0.53451-0.80588-2.9028 3.8567q-0.14802 0.2138-0.41939 0.2138h-1.62q-0.18914 1.3486-1.2253 2.2532-1.0361 0.90456-2.4176 0.90456-1.5213 0-2.6068-1.0772-1.0772-1.0855-1.0772-2.6068t1.0772-2.5986q1.0855-1.0855 2.6068-1.0855 0.93745 0 1.768 0.45228l1.1266-1.5049h-1.842q-0.21381 0-0.37005-0.15624t-0.15624-0.37005q0-0.2138 0.15624-0.37005 0.15624-0.15624 0.37005-0.15624h3.1577v1.0526h3.5771l-0.69898-1.0526h-1.8256q-0.21381 0-0.37005-0.15624t-0.15624-0.37005 0.15624-0.37005 0.37005-0.15624h2.1052q0.27137 0 0.43583 0.23025l2.1956 3.2893q0.74832-0.36182 1.5789-0.36182 1.5213 0 2.5986 1.0855z"/>
- </g>
-</svg>
diff --git a/web/images/boat.svg b/web/images/boat.svg
deleted file mode 100644
index f1620ca6..00000000
--- a/web/images/boat.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816-1.1309 3.3906a12.374 12.374 0 0 1 1.1309 -0.0625 12.374 12.374 0 0 1 1.1289 0.056641l-1.129-3.3847zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" stroke-width=".78953" d="m20 11.146c-2.1317 5.5267-6.3162 6.785-6.3162 6.785l6.316 1.9v-8.685zm0 8.6848h-6.711v0.64149c0 0.93043 0.77808 1.7633 1.8011 2.3686-0.36215 0.12387-0.72989 0.14804-1.0116 0.14804-0.55267 0-1.4212-0.15791-1.9738-0.78953v1.5791c0.55267 0.63162 1.4212 0.78953 1.9738 0.78953 0.55267 0 1.4212-0.15791 1.9738-0.78953 0.55267 0.63162 1.4212 0.78953 1.9738 0.78953 0.55267 0 1.4212-0.15791 1.9738-0.78953 0.55267 0.63162 1.4212 0.78953 1.9738 0.78953 0.55267 0 1.4212-0.15791 1.9738-0.78953 0.55267 0.63162 1.4212 0.78953 1.9738 0.78953 0.55267 0 1.4212-0.15791 1.9738-0.78953v-1.5791c-0.55267 0.63162-1.4212 0.78953-1.9738 0.78953-0.39586 0-0.94322-0.09201-1.431-0.37009 1.0794-0.59227 2.1544-1.4653 2.9361-2.788h-2.6893-4.7372zm4.7372 0s0.0099-4.0167-3.3062-7.2538c0.63162 4.3424-0.64149 5.9215-0.64149 5.9215l3.9476 1.3323zm-12.632 4.7372v1.5791c0.55267 0.63162 1.4212 0.78953 1.9738 0.78953 0.55267 0 1.4212-0.1579 1.9738-0.78953 0.55267 0.63162 1.4212 0.78953 1.9738 0.78953 0.55267 0 1.4212-0.1579 1.9738-0.78953 0.55267 0.63162 1.4212 0.78953 1.9738 0.78953 0.55267 0 1.4212-0.1579 1.9738-0.78953 0.55267 0.63162 1.4212 0.78953 1.9738 0.78953 0.55267 0 1.4212-0.1579 1.9738-0.78953v-1.5791c-0.55267 0.63162-1.4212 0.78953-1.9738 0.78953-0.55267 0-1.4212-0.1579-1.9738-0.78953-0.55267 0.63162-1.4212 0.78953-1.9738 0.78953-0.55267 0-1.4212-0.1579-1.9738-0.78953-0.55267 0.63162-1.4212 0.78953-1.9738 0.78953-0.55267 0-1.4212-0.1579-1.9738-0.78953-0.55267 0.63162-1.4212 0.78953-1.9738 0.78953-0.55267 0-1.4212-0.1579-1.9738-0.78953z"/>
- </g>
-</svg>
diff --git a/web/images/bus.svg b/web/images/bus.svg
deleted file mode 100644
index 2f3b9234..00000000
--- a/web/images/bus.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m16.144 23.756q0.34724-0.34724 0.34724-0.83154t-0.34724-0.8224q-0.3381-0.34724-0.8224-0.34724-0.48431 0-0.83154 0.34724-0.3381 0.3381-0.3381 0.8224 0 0.48431 0.3381 0.83154 0.34724 0.3381 0.83154 0.3381t0.8224-0.3381zm9.3571 0q0.34724-0.34724 0.34724-0.83154t-0.34724-0.8224q-0.3381-0.34724-0.8224-0.34724-0.48431 0-0.83154 0.34724-0.3381 0.3381-0.3381 0.8224 0 0.48431 0.3381 0.83154 0.34724 0.3381 0.83154 0.3381t0.8224-0.3381zm-0.0731-4.4501-0.65793-3.5089q-0.04569-0.21017-0.21017-0.3381-0.15534-0.13707-0.36551-0.13707h-8.3885q-0.21017 0-0.37465 0.13707-0.15534 0.12793-0.20103 0.3381l-0.65792 3.5089q-0.046 0.274 0.128 0.484t0.448 0.21h9.7044q0.27414 0 0.44775-0.21017 0.17362-0.21017 0.12794-0.48431zm-2.193-5.282q0.12794-0.12794 0.12794-0.31069 0-0.18276-0.12794-0.31069-0.12793-0.12794-0.31069-0.12794h-5.8482q-0.18276 0-0.31069 0.12794-0.12793 0.12793-0.12793 0.31069t0.12793 0.31069q0.12794 0.12794 0.31069 0.12794h5.8482q0.18276 0 0.31069-0.12794zm3.7831 6.3142v5.5101h-1.1696v1.1696q0 0.48431-0.34724 0.8224-0.3381 0.34724-0.8224 0.34724-0.48431 0-0.83154-0.34724-0.3381-0.3381-0.3381-0.8224v-1.1696h-7.0179v1.1696q0 0.48431-0.34724 0.8224-0.3381 0.34724-0.8224 0.34724-0.48431 0-0.83154-0.34724-0.3381-0.3381-0.3381-0.8224v-1.1696h-1.1696v-5.5101q0-1.0234 0.22844-2.0377l0.9412-4.1486q0.08224-0.71275 0.88637-1.2519 0.81327-0.53913 2.1017-0.81327 1.2976-0.27414 2.8601-0.27414 1.5626 0 2.851 0.27414 1.2976 0.27413 2.1017 0.81327 0.81327 0.53913 0.89551 1.2519l0.95948 4.1486q0.21017 0.93206 0.21017 2.0377z"/>
- </g>
-</svg>
diff --git a/web/images/car.svg b/web/images/car.svg
deleted file mode 100644
index da5b5553..00000000
--- a/web/images/car.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1" stroke="#333">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m15.029 22.296q0.39535-0.39535 0.39535-0.95053t-0.39535-0.95053q-0.396-0.395-0.951-0.395-0.55518 0-0.95053 0.39535t-0.39535 0.95053 0.39535 0.95053 0.95053 0.39535 0.95053-0.39535zm0.69818-3.6423h8.5463l-0.74865-3.003q-0.01682-0.06729-0.11777-0.143-0.10094-0.08412-0.17665-0.08412h-6.4602q-0.07572 0-0.17665 0.08412-0.10095 0.07571-0.11777 0.143l-0.74865 3.003zm11.146 3.6423q0.39535-0.39535 0.39535-0.95053t-0.39535-0.95053q-0.396-0.395-0.951-0.395-0.55518 0-0.95053 0.39535t-0.39535 0.95053 0.39535 0.95053 0.95053 0.39535 0.95053-0.39535zm1.7412-1.7581v3.2301q0 0.11777-0.07571 0.19347-0.07572 0.07571-0.19347 0.07571h-0.80753v1.0767q0 0.67294-0.47106 1.144t-1.144 0.47106-1.144-0.47106-0.47106-1.144v-1.0767h-8.6136v1.0767q0 0.67294-0.47106 1.144t-1.144 0.47106-1.144-0.47106-0.47106-1.144v-1.0767h-0.80753q-0.11777 0-0.19347-0.07571-0.07571-0.07572-0.07571-0.19347v-3.2301q0-0.78229 0.54676-1.3291 0.55518-0.55518 1.3375-0.55518h0.23553l0.88324-3.5245q0.19347-0.7907 0.87482-1.3206 0.68135-0.53835 1.5057-0.53835h6.4602q0.82435 0 1.5057 0.53835 0.68135 0.52994 0.87482 1.3206l0.88323 3.5245h0.23553q0.78229 0 1.3291 0.55518 0.55518 0.54676 0.55518 1.3291z" stroke-width=".1"/>
- </g>
-</svg>
diff --git a/web/images/crane.svg b/web/images/crane.svg
deleted file mode 100644
index 6b66b779..00000000
--- a/web/images/crane.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816-1.1309 3.3906a12.374 12.374 0 0 1 1.1309 -0.0625 12.374 12.374 0 0 1 1.1289 0.056641l-1.129-3.3847zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" stroke-width=".75357" d="m24.334 12.464-4.2153 3.0143c0.10399 0.11605 0.20347 0.23888 0.28259 0.37679l0.51808 0.91842 2.0252-1.4601-1.5778 2.2372 0.49453 0.87132c0.14017 0.18613 0.25282 0.39374 0.32969 0.61228l4.5921-6.5702h-2.4491zm2.4491 1.3188-1.5071 2.143v4.074c0 0.41597 0.3376 0.75357 0.75358 0.75357 0.41522 0 0.75357 0.33836 0.75357 0.75358s-0.33836 0.75357-0.75357 0.75357c-0.41522 0-0.75358-0.33835-0.75358-0.75357h-1.5071c0 1.3858 1.2521 2.4766 2.6846 2.2136 0.88771-0.16277 1.6164-0.87999 1.7897-1.7662 0.22909-1.1718-0.45328-2.2074-1.4601-2.5669v-5.6047zm-12.057 1.6955c-0.8327 0-1.5071 0.67445-1.5071 1.5071v3.7679c0 0.41597 0.3376 0.75358 0.75358 0.75358h0.75357v0.75357h5.275v-0.75357h0.75358c0.41597 0 0.75358-0.3376 0.75358-0.75358v-1.5071l-1.8368-3.0143c-0.269-0.468-0.756-0.753-1.296-0.753h-3.6501zm1.5071 1.5071h2.143l1.2952 2.2607h-3.4382v-2.2607zm-2.2607 6.0286c-1.2487 0-2.2607 1.0121-2.2607 2.2607 0 1.2487 1.012 2.2607 2.2607 2.2607h6.7822c1.2487 0 2.2607-1.0121 2.2607-2.2607 0-1.2487-1.0121-2.2607-2.2607-2.2607h-6.7822zm0 1.5071c0.41597 0 0.75357 0.3376 0.75357 0.75357s-0.3376 0.75358-0.75357 0.75358-0.75358-0.3376-0.75358-0.75358c0-0.41597 0.3376-0.75357 0.75358-0.75357zm2.2607 0c0.41597 0 0.75358 0.3376 0.75358 0.75357s-0.3376 0.75358-0.75358 0.75358c-0.41597 0-0.75357-0.3376-0.75357-0.75358 0-0.41597 0.3376-0.75357 0.75357-0.75357zm2.2607 0c0.41597 0 0.75358 0.3376 0.75358 0.75357s-0.3376 0.75358-0.75358 0.75358c-0.41597 0-0.75357-0.3376-0.75357-0.75358 0-0.41597 0.3376-0.75357 0.75357-0.75357zm2.2607 0c0.41597 0 0.75358 0.3376 0.75358 0.75357s-0.3376 0.75358-0.75358 0.75358c-0.41597 0-0.75358-0.3376-0.75358-0.75358 0-0.41597 0.3376-0.75357 0.75358-0.75357z"/>
- </g>
-</svg>
diff --git a/web/images/default.svg b/web/images/default.svg
deleted file mode 100644
index f2e9790b..00000000
--- a/web/images/default.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <circle id="icon" cx="20" cy="20" r="5.8251"/>
- </g>
-</svg>
diff --git a/web/images/helicopter.svg b/web/images/helicopter.svg
deleted file mode 100644
index f9c82419..00000000
--- a/web/images/helicopter.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816-1.1309 3.3906a12.374 12.374 0 0 1 1.1309 -0.0625 12.374 12.374 0 0 1 1.1289 0.056641l-1.129-3.3847zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" stroke-width=".88712" d="m14.606 13.91v1.7742h6.2098v0.88712c-2.6614 0-3.5165 1.7281-3.5485 1.7742h-3.5485v0.88712 0.88712l3.5485 0.88712c0 1.3236 1.3378 2.6614 2.6614 2.6614h2.6614c2.6614 0 4.4356-0.76026 4.4356-2.6614 0-1.6225-2.2284-3.988-5.3227-4.3802v-0.94256h6.2098v-1.7742l-6.2098 0.88712v-0.44356c0-0.24485-0.19872-0.44356-0.44356-0.44356s-0.44356 0.19871-0.44356 0.44356v0.44356l-6.2098-0.88712zm-0.88712 5.3227c0-0.97989-0.79436-1.7742-1.7742-1.7742-0.97988 0-1.7742 0.79435-1.7742 1.7742 0 0.97988 0.79436 1.7742 1.7742 1.7742 0.97989 0 1.7742-0.79436 1.7742-1.7742zm7.9841-0.88712c0.2821-0.03992 2.8831 0.79042 3.5485 2.6614h-3.5485v-2.6614zm4.4356 5.3227v0.88712h-8.8712v1.7742h8.8712c0.98027 0 1.7742-0.79397 1.7742-1.7742v-0.88712h-1.7742z"/>
- </g>
-</svg>
diff --git a/web/images/motorcycle.svg b/web/images/motorcycle.svg
deleted file mode 100644
index d8d18f1d..00000000
--- a/web/images/motorcycle.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m29.386 21.143q0.09803 0.8414-0.17972 1.6256-0.27774 0.77605-0.80873 1.3315-0.53098 0.55549-1.2989 0.86591-0.75971 0.31042-1.6011 0.25324-1.3152-0.08986-2.2873-1.0211-0.96394-0.93126-1.0946-2.2383-0.09803-0.90675 0.22056-1.7155 0.32676-0.8169 0.9721-1.3969l-0.58-0.87408q-0.78422 0.65352-1.2335 1.5848-0.44929 0.93126-0.44929 1.9932 0 0.22056-0.15521 0.38394-0.14704 0.15521-0.3676 0.15521h-2.0913-0.56366q-0.18789 1.3397-1.2172 2.2383-1.0293 0.89858-2.4017 0.89858-1.5113 0-2.5896-1.0701-1.0701-1.0783-1.0701-2.5896t1.0701-2.5814q1.0783-1.0783 2.5896-1.0783 0.62084 0 1.2417 0.22056l0.19606-0.3676q-1.0048-0.89858-2.4834-0.89858h-0.52281q-0.21239 0-0.3676-0.15521t-0.15521-0.3676 0.15521-0.3676 0.3676-0.15521h1.0456q0.63718 0 1.1845 0.11437 0.54732 0.1062 0.9476 0.31042 0.40845 0.20422 0.58816 0.32676 0.17972 0.11437 0.41662 0.29408h4.1825 0.93943l-0.69436-1.0456h-1.8135q-0.24507 0-0.40028-0.17972-0.15521-0.18789-0.11437-0.43296 0.03267-0.18789 0.18788-0.31042t0.35126-0.12253h2.0667q0.26958 0 0.43296 0.22873l0.57183 0.85774 0.93126-0.93126q0.15521-0.15521 0.37577-0.15521h0.82506q0.21239 0 0.3676 0.15521t0.15521 0.3676v1.0456q0 0.21239-0.15521 0.3676t-0.3676 0.15521h-1.4622l0.93943 1.4051q1.0701-0.51465 2.2465-0.29408 1.1682 0.21239 1.9932 1.1028 0.82506 0.88225 0.96394 2.0667zm-15.137 3.039q0.93943 0 1.6583-0.58816 0.71887-0.59634 0.90675-1.5031h-2.5651q-0.28591 0-0.44929-0.25324-0.14704-0.26141-0.0082-0.51464l1.2008-2.2628q-0.38394-0.1062-0.74338-0.1062-1.0783 0-1.8462 0.76788-0.76788 0.76788-0.76788 1.8462t0.76788 1.8462q0.76788 0.76788 1.8462 0.76788zm9.6557-0.76788q0.76788 0.76788 1.8462 0.76788t1.8462-0.76788q0.76788-0.76788 0.76788-1.8462t-0.76788-1.8462q-0.76788-0.76788-1.8462-0.76788-0.49014 0-0.98844 0.19606l1.4214 2.1239q0.12254 0.18789 0.0817 0.40028-0.04085 0.21239-0.22056 0.32676-0.12253 0.08986-0.29408 0.08986-0.28591 0-0.43296-0.2369l-1.4214-2.1239q-0.75971 0.77605-0.75971 1.838 0 1.0783 0.76788 1.8462z"/>
- </g>
-</svg>
diff --git a/web/images/offroad.svg b/web/images/offroad.svg
deleted file mode 100644
index 51c9c812..00000000
--- a/web/images/offroad.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816-1.1309 3.3906a12.374 12.374 0 0 1 1.1309 -0.0625 12.374 12.374 0 0 1 1.1289 0.056641l-1.129-3.3847zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" style="block-progression:tb;text-transform:none;text-indent:0" stroke-width=".80151" overflow="visible" d="m12.987 13.989c-0.51858 0-0.78749 0.10941-1.052 0.55104-0.2645 0.44164-1.5529 4.3925-1.5529 5.0345v2.7803c0 0.65003 0.60274 1.2524 1.2023 1.2524h0.40076c0 1.3281 1.0764 2.4045 2.4045 2.4045s2.4045-1.0764 2.4045-2.4045h7.2136c0 1.3281 1.0764 2.4045 2.4045 2.4045s2.4045-1.0764 2.4045-2.4045c0-0.07005-0.01918-0.13186-0.02505-0.20038 0.37553-0.28539 0.82656-0.80321 0.82656-1.052v-2.2292c0-0.86884-1.5457-1.1858-4.258-1.8535 0 0-2.4963-2.9345-3.156-3.732-0.42881-0.51858-0.98827-0.55104-1.4026-0.55104h-7.8148zm2.655 1.2774h1.9537v3.5317h-2.8303c-0.36549 0-0.64622-0.1066-0.52599-0.70132 0.12504-0.62037 0.51638-2.1555 0.62618-2.4296 0.12504-0.31099 0.38132-0.40076 0.77647-0.40076zm3.5567 0h1.7283c0.30858 0 0.65684 0.09879 0.85161 0.32562l2.2793 2.7051c0.25408 0.33664 0.14287 0.50095-0.17533 0.50095h-4.6838v-3.5317zm-4.8091 7.1385c0.66285 0 1.2023 0.53942 1.2023 1.2023 0 0.66285-0.53942 1.2023-1.2023 1.2023-0.66285 0-1.2023-0.53942-1.2023-1.2023 0-0.66285 0.53942-1.2023 1.2023-1.2023zm12.023 0c0.66285 0 1.2023 0.53942 1.2023 1.2023 0 0.66285-0.53942 1.2023-1.2023 1.2023-0.66285 0-1.2023-0.53942-1.2023-1.2023 0-0.66285 0.53942-1.2023 1.2023-1.2023z"/>
- </g>
-</svg>
diff --git a/web/images/person.svg b/web/images/person.svg
deleted file mode 100644
index 124bbaf7..00000000
--- a/web/images/person.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m26.287 24.941q0 1.0708-0.6189 1.837-0.60907 0.76625-1.4736 0.76625h-8.3895q-0.86449 0-1.4834-0.76625-0.60907-0.76625-0.60907-1.837 0-0.83502 0.07859-1.5718 0.08841-0.7466 0.31436-1.4932 0.22595-0.75643 0.56978-1.2869 0.35366-0.54031 0.92343-0.87432 0.5796-0.34383 1.3262-0.34383 1.2869 1.2574 3.0748 1.2574t3.0748-1.2574q0.7466 0 1.3164 0.34383 0.5796 0.33401 0.92343 0.87432 0.35366 0.53048 0.5796 1.2869 0.22595 0.7466 0.30454 1.4932 0.08842 0.73678 0.08842 1.5718zm-3.625-11.376q1.1101 1.1003 1.1101 2.6622 0 1.562-1.1101 2.6721-1.1 1.101-2.662 1.101t-2.6721-1.1003q-1.1003-1.1101-1.1003-2.6721t1.1003-2.6622q1.11-1.11 2.672-1.11t2.6622 1.1101z"/>
- </g>
-</svg>
diff --git a/web/images/pickup.svg b/web/images/pickup.svg
deleted file mode 100644
index 50bf57be..00000000
--- a/web/images/pickup.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816-1.1309 3.3906a12.374 12.374 0 0 1 1.1309 -0.0625 12.374 12.374 0 0 1 1.1289 0.056641l-1.129-3.3847zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" stroke-width=".88152" d="m17.19 14.711a0.8816 0.8816 0 0 0 -0.68868 0.66114l-0.71623 2.8649h-3.2781c-0.96967 0-1.763 0.79336-1.763 1.763v2.1211c0 0.35261 0.17079 0.62257 0.5234 0.79887l1.2672 0.4683c0.14704 1.0824 1.0477 1.9008 2.1762 1.9008 1.0799 0 1.9462-0.75066 2.1487-1.763h7.1623c0.20247 1.0124 1.0688 1.763 2.1487 1.763 1.157 0 2.0652-0.85999 2.1762-1.9834l0.4683-0.30302c0.26446-0.1763 0.44076-0.52891 0.44076-0.88152v-1.5151c0-0.35261-0.25344-0.68318-0.60604-0.77133l-3.9668-1.3498-2.1762-2.7272-0.0551-0.08264-0.02755 0.02755c-0.44623-0.66103-1.2059-0.99171-1.9008-0.99171h-3.1679a0.8816 0.8816 0 0 0 -0.08265 0 0.8816 0.8816 0 0 0 -0.08264 0zm0.85397 1.763h2.4793c0.33302 0 0.40036 0.03368 0.49585 0.19283a0.8816 0.8816 0 0 0 0.0551 0.08264l1.1845 1.4876h-4.6555l0.44076-1.763zm-3.3332 5.8125c0.44076 0 0.79887 0.35812 0.79887 0.79887 0 0.44076-0.35812 0.79887-0.79887 0.79887-0.44076 0-0.79887-0.35812-0.79887-0.79887 0-0.44076 0.35812-0.79887 0.79887-0.79887zm11.46 0c0.44076 0 0.79887 0.35812 0.79887 0.79887 0 0.44076-0.35812 0.79887-0.79887 0.79887-0.44076 0-0.79887-0.35812-0.79887-0.79887 0-0.44076 0.35812-0.79887 0.79887-0.79887z"/>
- </g>
-</svg>
diff --git a/web/images/plane.svg b/web/images/plane.svg
deleted file mode 100644
index a46eb748..00000000
--- a/web/images/plane.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m26.238 13.763q0.4325 0.51114 0.11796 1.4548-0.31455 0.94364-1.0616 1.6907l-1.5826 1.5826 1.5727 6.8414q0.04915 0.18676-0.11796 0.32438l-1.2582 0.94364q-0.06881 0.05897-0.18676 0.05897-0.03931 0-0.06881-0.0099-0.14744-0.0295-0.20642-0.15727l-2.7425-4.9934-2.5459 2.5459 0.52097 1.9069q0.04915 0.1671-0.07864 0.30472l-0.94364 0.94364q-0.08847 0.08847-0.22608 0.08847h-0.01966q-0.14744-0.01966-0.23591-0.12778l-1.8578-2.477-2.4771-1.8578q-0.10813-0.06881-0.12778-0.22608-0.0099-0.12778 0.08847-0.24574l0.94364-0.95343q0.08847-0.08847 0.22608-0.08847 0.05898 0 0.07864 0.0099l1.9069 0.52097 2.5459-2.5459-4.9934-2.7425q-0.13762-0.07863-0.1671-0.23591-0.01966-0.15728 0.08847-0.2654l1.2582-1.2582q0.13762-0.12778 0.29489-0.07864l6.5367 1.5629 1.5727-1.5727q0.74705-0.74705 1.6907-1.0616 0.94364-0.31455 1.4548 0.11796z"/>
- </g>
-</svg>
diff --git a/web/images/scooter.svg b/web/images/scooter.svg
deleted file mode 100644
index c7b531cb..00000000
--- a/web/images/scooter.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" style="text-decoration-color:#000000;block-progression:tb;isolation:auto;mix-blend-mode:normal;text-indent:0;text-decoration-line:none;white-space:normal;text-transform:none;text-decoration-style:solid" stroke-width=".60887" d="m20.609 12.298a0.60893 0.60893 0 1 0 0 1.2177h1.3795l2.0228 6.443-2.5163 3.9077h-5.871c-0.25412-0.70466-0.92507-1.2177-1.7124-1.2177-1.0016 0-1.8266 0.82501-1.8266 1.8266s0.82501 1.8266 1.8266 1.8266c0.78736 0 1.4583-0.51307 1.7124-1.2177h6.2028a0.60893 0.60893 0 0 0 0.51135 -0.27946l2.1477-3.3345 0.49232 1.5697c-0.43114 0.33547-0.71589 0.85238-0.71589 1.4354 0 1.0016 0.82501 1.8266 1.8266 1.8266s1.8266-0.82501 1.8266-1.8266c0-0.98654-0.80143-1.7976-1.7826-1.8218l-3.1157-9.9286a0.60893 0.60893 0 0 0 -0.58151 -0.42692h-1.8266zm-6.6975 11.568c0.33112 0 0.58355 0.24891 0.60173 0.57438a0.60893 0.60893 0 0 0 0 0.07017c-0.01874 0.32487-0.27102 0.57319-0.60173 0.57319-0.34348 0-0.60887-0.26539-0.60887-0.60887s0.26539-0.60887 0.60887-0.60887zm12.177 0c0.34348 0 0.60887 0.26539 0.60887 0.60886 0 0.34348-0.26539 0.60887-0.60887 0.60887s-0.60886-0.26539-0.60886-0.60887 0.26539-0.60886 0.60886-0.60886z" white-space="normal" overflow="visible" font-weight="400"/>
- </g>
-</svg>
diff --git a/web/images/ship.svg b/web/images/ship.svg
deleted file mode 100644
index f94a6bbe..00000000
--- a/web/images/ship.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m26.094 25.102q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.99107 0.99107-0.69685 0.69685-0.64265-0.64265-0.64265 0.64265q-0.13937 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.99107-0.99107 0.69685-0.69685 0.64265 0.64265 0.64265-0.64265q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.64265 0.64265 0.64265-0.64265q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.64265 0.64265 0.64265-0.64265q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.64265 0.64265 0.64265-0.64265q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.64265 0.64265 0.64265-0.64265q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.64265 0.64265 0.64265-0.64265q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.64265 0.64265 0.64265-0.64265zm-12.188-0.294q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.99107-0.99107 0.69685-0.69685 0.64265 0.6349 0.64265-0.6349q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.64265 0.6349 0.49554-0.49554v-2.2686l-1.626-2.4312q-0.13163-0.20131-0.0542-0.43359 0.07743-0.24003 0.30971-0.31745l1.3705-0.44908v-2.3151h0.99107v-0.99107h1.9821v-0.99107h1.9821v0.99107h1.9821v0.99107h0.99107v2.3151l1.3705 0.44908q0.23228 0.07742 0.30971 0.31745 0.07743 0.23228-0.0542 0.43359l-1.626 2.4312v2.2686l0.14711-0.13937q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.64265 0.6349 0.64265-0.6349q0.14711-0.14711 0.34842-0.14711t0.34842 0.14711l0.99107 0.99107-0.69685 0.69685-0.64265-0.64265-0.64265 0.64265q-0.13937 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64264-0.64265-0.64265 0.64265q-0.14711 0.14711-0.34842 0.14711t-0.34842-0.14711l-0.64265-0.64265-0.64265 0.64265zm3.1203-8.7725v0.99107l2.974-0.991 2.9732 0.99107v-0.99107h-0.99107v-0.99107h-3.9643v0.99107h-0.99107z"/>
- </g>
-</svg>
diff --git a/web/images/tractor.svg b/web/images/tractor.svg
deleted file mode 100644
index 96643ef9..00000000
--- a/web/images/tractor.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816-1.1309 3.3906a12.374 12.374 0 0 1 1.1309 -0.0625 12.374 12.374 0 0 1 1.1289 0.056641l-1.129-3.3847zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" stroke-width=".84153" d="m13.105 12.427a0.84162 0.84162 0 0 0 -0.68375 0.84153v5.0492a0.84162 0.84162 0 0 0 0 0.07889v1.8672c0.84153-0.67323 1.8514-1.1045 2.9454-1.1045 2.5246 0 4.6284 2.1038 4.6284 4.6284v0.42077h3.7869c-0.25895 0.34961-0.42077 0.78515-0.42077 1.2623 0 1.1781 0.92569 2.1038 2.1038 2.1038s2.1038-0.92569 2.1038-2.1038c0-0.55373-0.21318-1.0478-0.55226-1.4201 0.49718-0.2262 0.85521-0.67323 0.97302-1.2623l0.42077-2.7087c0.08415-0.42077-0.33661-0.92043-0.84153-0.92043l-7.1267-0.78894-1.3149-5.3122a0.84162 0.84162 0 0 0 -0.81524 -0.63115h-5.0492a0.84162 0.84162 0 0 0 -0.07889 0 0.84162 0.84162 0 0 0 -0.07889 0zm0.99932 1.6831h3.5502l1.0256 4.0499-4.5758-0.49966v-3.5502zm10.098 0v3.6291l1.6831 0.23668v-3.8658h-1.6831zm-8.8361 5.8907c-2.1038 0-3.7869 1.6831-3.7869 3.7869s1.6831 3.7869 3.7869 3.7869 3.7869-1.6831 3.7869-3.7869-1.6831-3.7869-3.7869-3.7869zm0 1.2623c1.4306 0 2.5246 1.094 2.5246 2.5246s-1.094 2.5246-2.5246 2.5246-2.5246-1.094-2.5246-2.5246 1.094-2.5246 2.5246-2.5246zm10.098 3.3661c0.50492 0 0.84154 0.33661 0.84154 0.84154 0 0.50492-0.33661 0.84153-0.84154 0.84153-0.50492 0-0.84153-0.33661-0.84153-0.84153s0.33661-0.84154 0.84153-0.84154z"/>
- </g>
-</svg>
diff --git a/web/images/train.svg b/web/images/train.svg
deleted file mode 100644
index e4b10ace..00000000
--- a/web/images/train.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m18.127 11.484c-0.59864 0-1.0869 0.44565-1.1707 1.0217h-0.362c-1.3143 0-2.3839 1.027-2.3839 2.2881v9.7272c0 0.878 0.51749 1.6389 1.2771 2.0221l-1.6389 1.3622c-0.14633 0.12106-0.16895 0.3379-0.04789 0.48423s0.3379 0.16895 0.48423 0.04789l1.9688-1.6496c0.11175 0.01596 0.22482 0.02128 0.34056 0.02128h6.8111c0.11574 0 0.22881-0.0054 0.34056-0.02128l1.9688 1.6496c0.14633 0.12106 0.36317 0.09844 0.48423-0.04789s0.09844-0.36317-0.04789-0.48423l-1.6389-1.3622c0.7596-0.38313 1.2771-1.1441 1.2771-2.0221v-9.727c0-1.2611-1.0696-2.2881-2.3839-2.2881h-0.36183c-0.08381-0.57602-0.57203-1.0217-1.1707-1.0217-0.59864 0-1.0869 0.44565-1.1707 1.0217h-1.4048c-0.08381-0.57602-0.57203-1.0217-1.1707-1.0217zm0 0.68111c0.28202 0 0.51084 0.22881 0.51084 0.51084 0 0.28202-0.22881 0.51084-0.51084 0.51084-0.28202 0-0.51084-0.22881-0.51084-0.51084 0-0.28202 0.22881-0.51084 0.51084-0.51084zm3.7461 0c0.28202 0 0.51084 0.22881 0.51084 0.51084 0 0.28202-0.22881 0.51084-0.51084 0.51084-0.28202 0-0.51084-0.22881-0.51084-0.51084 0-0.28202 0.22881-0.51084 0.51084-0.51084zm-3.9164 2.7245h4.0867c0.1889 0 0.34056 0.15298 0.34056 0.34056v0.68111h-4.7678v-0.68111c0-0.18757 0.15298-0.34056 0.34056-0.34056zm-1.3622 1.7028h6.8111c0.37648 0 0.68111 0.28336 0.68111 0.6279v2.4903c0 0.34455-0.30464 0.6279-0.68111 0.6279h-6.8111c-0.37648 0-0.68111-0.28335-0.68111-0.6279v-2.4903c0-0.34455 0.30464-0.6279 0.68111-0.6279zm0.34056 6.13c0.56405 0 1.0217 0.45762 1.0217 1.0217 0 0.56405-0.45762 1.0217-1.0217 1.0217-0.56405 0-1.0217-0.45762-1.0217-1.0217 0-0.56405 0.45762-1.0217 1.0217-1.0217zm6.13 0c0.56405 0 1.0217 0.45762 1.0217 1.0217 0 0.56405-0.45762 1.0217-1.0217 1.0217-0.56405 0-1.0217-0.45762-1.0217-1.0217 0-0.56405 0.45762-1.0217 1.0217-1.0217z"/>
- </g>
-</svg>
diff --git a/web/images/tram.svg b/web/images/tram.svg
deleted file mode 100644
index 70a03078..00000000
--- a/web/images/tram.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m20 11.299c-2.5762 0-3.8283 0.45542-3.8283 1.3921 0 0.19168 0.15634 0.34802 0.34802 0.34802s0.34802-0.15634 0.34802-0.34802c0-0.17129 0.34666-0.45134 1.4247-0.59817l0.294 1.719c-2.8141 0.3154-4.5026 1.5512-4.5026 2.7081v8.1024c0 1.0726 0.7545 1.978 1.7836 2.2513l-1.4574 1.2181c-0.14546 0.12235-0.16586 0.33307-0.0435 0.47853 0.06797 0.08157 0.16314 0.13051 0.26102 0.13051 0.07749 0 0.16314-0.03264 0.22839-0.087l1.9794-1.6531h6.3297l1.9794 1.6531c0.06525 0.05438 0.1509 0.087 0.22839 0.087 0.09788 0 0.19304-0.04894 0.26102-0.13051 0.12235-0.14546 0.10196-0.35618-0.0435-0.47853l-1.4574-1.2181c1.0291-0.27325 1.7836-1.1787 1.7836-2.2513v-8.1024c0-1.1569-1.6885-2.3927-4.5026-2.7081l0.29364-1.7184c1.0781 0.14682 1.4247 0.42687 1.4247 0.59817 0 0.19168 0.15498 0.34802 0.34802 0.34802s0.34802-0.15634 0.34802-0.34802c0-0.93667-1.2521-1.3921-3.8283-1.3921zm0 0.69605c0.37793 0 0.70285 0.01359 1.0006 0.03264l-0.29365 1.7292c-0.23111-0.01223-0.46358-0.02175-0.70692-0.02175-0.24335 0-0.47581 0.0095-0.70692 0.02175l-0.294-1.729c0.29772-0.01903 0.62264-0.03264 1.0006-0.03264zm-2.0881 3.8283h4.1763c0.19304 0 0.34802 0.15634 0.34802 0.34802v0.69605h-4.8723v-0.69605c0-0.19168 0.15634-0.34802 0.34803-0.34802zm-1.3921 1.7401h6.9605c0.38473 0 0.69605 0.28957 0.69605 0.64167v2.5449c0 0.3521-0.31132 0.64167-0.69605 0.64167h-6.9605c-0.38473 0-0.69605-0.28957-0.69605-0.64167v-2.5449c0-0.3521 0.31132-0.64167 0.69605-0.64167zm0.34802 5.5684c0.57641 0 1.0441 0.46766 1.0441 1.0441 0 0.57642-0.46766 1.0441-1.0441 1.0441-0.57642 0-1.0441-0.46766-1.0441-1.0441 0-0.57642 0.46766-1.0441 1.0441-1.0441zm6.2644 0c0.57641 0 1.0441 0.46766 1.0441 1.0441 0 0.57642-0.46766 1.0441-1.0441 1.0441-0.57642 0-1.0441-0.46766-1.0441-1.0441 0-0.57642 0.46766-1.0441 1.0441-1.0441z"/>
- </g>
-</svg>
diff --git a/web/images/trolleybus.svg b/web/images/trolleybus.svg
deleted file mode 100644
index 344ae8db..00000000
--- a/web/images/trolleybus.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m16.909 11.561c-0.10947 0.01846-0.20311 0.091-0.24927 0.19256-0.04615 0.10024-0.03956 0.21894 0.01715 0.31389l0.70692 1.1817h-1.7726c-1.3031 0-2.3634 1.0604-2.3634 2.3634v10.467c0 0.29807 0.13189 0.56316 0.33763 0.74912v0.60141c0 0.55788 0.45501 1.0129 1.0129 1.0129h1.3505c0.55789 0 1.0129-0.45502 1.0129-1.0129v-0.33763h6.0774v0.33763c0 0.55788 0.45501 1.0129 1.0129 1.0129h1.3505c0.55789 0 1.0129-0.45502 1.0129-1.0129v-0.601c0.204-0.186 0.336-0.451 0.336-0.749v-10.467c0-1.3031-1.0604-2.3634-2.3634-2.3634h-1.7726l0.70692-1.1817c0.06594-0.1121 0.062-0.25191-0.0092-0.35874-0.07254-0.10815-0.20047-0.16618-0.3284-0.14771-0.09892 0.01846-0.18332 0.08045-0.23212 0.16882l-0.90739 1.5193h-3.693l-0.908-1.518c-0.06726-0.12002-0.20179-0.18596-0.33763-0.16882zm-0.96014 3.3763h8.1032c0.57371 0 1.0129 0.43919 1.0129 1.0129v4.7269c0 0.57371-0.43919 1.0129-1.0129 1.0129h-8.1032c-0.57371 0-1.0129-0.43919-1.0129-1.0129v-4.7269c0-0.57371 0.43919-1.0129 1.0129-1.0129zm-3.0387 2.0258c-0.39171 0-0.67527 0.28356-0.67527 0.67526v2.0258c0 0.39171 0.28356 0.67527 0.67527 0.67527zm14.181 0v3.3763c0.39171 0 0.67527-0.28356 0.67527-0.67527v-2.0258c0-0.39171-0.28356-0.67526-0.67527-0.67526zm-11.142 6.415c0.5592 0 1.0129 0.4537 1.0129 1.0129s-0.4537 1.0129-1.0129 1.0129c-0.55921 0-1.0129-0.45369-1.0129-1.0129 0-0.5592 0.45369-1.0129 1.0129-1.0129zm8.1032 0c0.5592 0 1.0129 0.4537 1.0129 1.0129s-0.4537 1.0129-1.0129 1.0129c-0.55921 0-1.0129-0.45369-1.0129-1.0129 0-0.5592 0.45369-1.0129 1.0129-1.0129z"/>
- </g>
-</svg>
diff --git a/web/images/truck.svg b/web/images/truck.svg
deleted file mode 100644
index 708744d2..00000000
--- a/web/images/truck.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816l-1.131 3.3907a12.374 12.374 0 0 1 1.131 -0.0625 12.374 12.374 0 0 1 1.129 0.0566l-1.129-3.3848zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" d="m17.031 24.899q0.34603-0.34603 0.34603-0.81955t-0.34603-0.81955-0.81955-0.34603-0.81955 0.34603-0.34603 0.81955 0.34603 0.81955 0.81955 0.34603 0.81955-0.34603zm-3.1507-5.4819h3.4968v-2.3312h-1.4388q-0.11838 0-0.20034 0.08196l-1.7757 1.7757q-0.08196 0.08196-0.08196 0.20033v0.27318zm11.31 5.4819q0.34603-0.34603 0.34603-0.81955t-0.34603-0.81955-0.81955-0.34603-0.81955 0.34603-0.34603 0.81955 0.34603 0.81955 0.81955 0.34603 0.81955-0.34603zm2.6772-10.727v9.3247q0 0.13659-0.03642 0.24587-0.03642 0.10017-0.12749 0.16391-0.08196 0.06375-0.1457 0.10927-0.06374 0.03642-0.21855 0.05463-0.1457 0.0091-0.20034 0.01821-0.05463 0-0.23676 0-0.17302-0.0091-0.20034-0.0091 0 0.96525-0.68296 1.6482-0.68296 0.68296-1.6482 0.68296-0.96525 0-1.6482-0.68296-0.68296-0.68292-0.68296-1.6482h-3.4968q0 0.96525-0.68296 1.6482-0.68296 0.68296-1.6482 0.68296-0.96525 0-1.6482-0.68296-0.68296-0.68296-0.68296-1.6482h-0.58279q-0.02732 0-0.20944 0.0091-0.17302 0-0.22765 0-0.05463-0.0091-0.20944-0.01821-0.1457-0.01821-0.20944-0.05463-0.06375-0.04553-0.1548-0.10927-0.08196-0.06375-0.11838-0.16391-0.03642-0.10927-0.03642-0.24586 0-0.23676 0.17302-0.40978t0.40978-0.17302v-2.914q0-0.07285-0.0091-0.31871 0-0.24587 0-0.34603 0.0091-0.10017 0.02732-0.30961 0.01821-0.21855 0.05463-0.33693 0.04554-0.12749 0.12749-0.28229 0.09106-0.1548 0.20944-0.27318l1.803-1.803q0.17302-0.17302 0.45531-0.2914 0.2914-0.11838 0.53726-0.11838h1.457v-1.7484q0-0.23676 0.17302-0.40978t0.40978-0.17302h9.3247q0.23676 0 0.40978 0.17302t0.17302 0.40978z"/>
- </g>
-</svg>
diff --git a/web/images/van.svg b/web/images/van.svg
deleted file mode 100644
index 3394b88f..00000000
--- a/web/images/van.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg4145" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="40" width="40" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 40 40">
- <g id="layer1">
- <path id="background" d="m20.002 3.6816-1.1309 3.3906a12.374 12.374 0 0 1 1.1309 -0.0625 12.374 12.374 0 0 1 1.1289 0.056641l-1.129-3.3847zm-0.002 3.9434a12.374 12.374 0 0 0 -12.375 12.375 12.374 12.374 0 0 0 12.375 12.375 12.374 12.374 0 0 0 12.375 -12.375 12.374 12.374 0 0 0 -12.375 -12.375z" stroke="#333" stroke-width="1.9" fill="#008000"/>
- <path id="icon" stroke-width="0.87" d="m12.17 13.91c-0.48024 0-0.87 0.38976-0.87 0.87v3.48 4.35c0 0.96135 0.77865 1.74 1.74 1.74h0.05438c0.20276 0.99123 1.0693 1.74 2.1206 1.74s1.9179-0.74877 2.1206-1.74h5.3287c0.20277 0.99123 1.0693 1.74 2.1206 1.74s1.9179-0.74877 2.1206-1.74h0.05438c0.96135 0 1.74-0.77865 1.74-1.74v-3.2081-0.27188s-1.1719-3.5328-3.2625-5.0841c-0.13137-0.09831-0.29863-0.13594-0.46219-0.13594h-12.805zm10.44 1.74h2.0119c0.74211 0.65859 1.3787 1.7078 1.8216 2.61h-3.8334v-2.61zm-7.395 7.395c0.47937 0 0.87 0.39063 0.87 0.87s-0.39063 0.87-0.87 0.87-0.87-0.39063-0.87-0.87 0.39063-0.87 0.87-0.87zm9.57 0c0.47937 0 0.87 0.39063 0.87 0.87s-0.39063 0.87-0.87 0.87-0.87-0.39063-0.87-0.87 0.39063-0.87 0.87-0.87z"/>
- </g>
-</svg>
diff --git a/web/l10n/af.json b/web/l10n/af.json
deleted file mode 100644
index 5ecd845e..00000000
--- a/web/l10n/af.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Laai tans...",
- "sharedHide": "Verberg",
- "sharedSave": "Stoor",
- "sharedUpload": "Upload",
- "sharedSet": "Stel",
- "sharedCancel": "Kanselleer",
- "sharedCopy": "Copy",
- "sharedAdd": "Sit by",
- "sharedEdit": "Redigeer",
- "sharedRemove": "Verwyder",
- "sharedRemoveConfirm": "Verwyder item",
- "sharedNoData": "Geen data",
- "sharedSubject": "Subject",
- "sharedYes": "Ja",
- "sharedNo": "Nee",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Uur",
- "sharedMinute": "Minuut",
- "sharedSecond": "Sekonde",
- "sharedDays": "dae",
- "sharedHours": "ure",
- "sharedMinutes": "minute",
- "sharedDecimalDegrees": "Desimale grade",
- "sharedDegreesDecimalMinutes": "Grade Desimale minute",
- "sharedDegreesMinutesSeconds": "Grade minute sekondes",
- "sharedName": "Naam",
- "sharedDescription": "Beskrywing",
- "sharedSearch": "Soek",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geografiese omheining",
- "sharedGeofences": "Geografiese omheinings",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Kennisgewings",
- "sharedNotification": "Kennisgewing",
- "sharedAttributes": "Attribute",
- "sharedAttribute": "Attribuut",
- "sharedDrivers": "Bestuurders",
- "sharedDriver": "Bestuurder",
- "sharedArea": "Gebied",
- "sharedSound": "Kennisgewing klank",
- "sharedType": "Tiepe",
- "sharedDistance": "Afstand",
- "sharedHourAbbreviation": "u",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "I",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "V.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Kry Kaartstaat",
- "sharedComputedAttribute": "Berekende attribuut",
- "sharedComputedAttributes": "Berekende attribute",
- "sharedCheckComputedAttribute": "Kontroleer Berekende attribuut",
- "sharedExpression": "Uitdrukking",
- "sharedDevice": "Toestel",
- "sharedTest": "Test",
- "sharedTestNotification": "Stuur Toets Kennisgewing",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Kalender",
- "sharedCalendars": "Kalenders",
- "sharedFile": "Lêer",
- "sharedSearchDevices": "Soek Toestelle",
- "sharedSortBy": "Sorteer Volgens",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Selekteer Lêer",
- "sharedPhone": "Foon",
- "sharedRequired": "Word Vereis",
- "sharedPreferences": "Voorkeure",
- "sharedPermissions": "Toelaatbaarhede",
- "sharedConnections": "Verbindings",
- "sharedExtra": "Ekstra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Nommer",
- "sharedTypeBoolean": "Boole",
- "sharedTimezone": "Tydsone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Gestoorde Bevel",
- "sharedSavedCommands": "Gestoorde Bevele",
- "sharedNew": "Nuut...",
- "sharedShowAddress": "Wys Adres",
- "sharedShowDetails": "Addisionele besonderhede",
- "sharedDisabled": "Buite aksie gestel",
- "sharedMaintenance": "Onderhoud",
- "sharedDeviceAccumulators": "Akkumulators ",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Kolomme",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Spoedgrens",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polielynafstand",
- "attributeReportIgnoreOdometer": "Verslag: Ignoreer Odometer",
- "attributeWebReportColor": "Web: Rapporteer kleur",
- "attributeDevicePassword": "Toestelwagwoord",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Verwerking: Kopieër attribute",
- "attributeColor": "Kleur",
- "attributeWebLiveRouteLength": "Web: Regstreekse Roete Lengte",
- "attributeWebSelectZoom": "Web: Zoom op Kies",
- "attributeWebMaxZoom": "Web: Maksimum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Pos: SMTP-gasheer",
- "attributeMailSmtpPort": "Pos: SMTP-poort",
- "attributeMailSmtpStarttlsEnable": "Pos: SMTP STARTTLS Aktiveer",
- "attributeMailSmtpStarttlsRequired": "Pos: SMTP STARTTLS word vereis",
- "attributeMailSmtpSslEnable": "Pos: SMTP SSL Aktiveer",
- "attributeMailSmtpSslTrust": "Pos: SMTP SSL Vertrou",
- "attributeMailSmtpSslProtocols": "Pos: SMTP SSL-protokolle",
- "attributeMailSmtpFrom": "Pos: SMTP vanaf",
- "attributeMailSmtpAuth": "Pos: SMTP Auth Aktiveer",
- "attributeMailSmtpUsername": "Pos: SMTP-gebruikersnaam",
- "attributeMailSmtpPassword": "Pos: SMTP wagwoord",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: deaktiveer gebeure",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: deaktiveer bestuurders",
- "attributeUiDisableComputedAttributes": "UI: deaktiveer berekende attribute",
- "attributeUiDisableCalendars": "UI: deaktiveer kalenders",
- "attributeUiDisableMaintenance": "UI: deaktiveer onderhoud",
- "attributeUiHidePositionAttributes": "UI: Verberg posisie attribute",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Fout",
- "errorGeneral": "Ongeldige parameters of beperking oortreding",
- "errorConnection": "Verbindings fout",
- "errorSocket": "Web aansluiting verbinding fout",
- "errorZero": "Kan nie nul wees nie",
- "userEmail": "E-pos",
- "userPassword": "Wagwoord",
- "userAdmin": "Admin",
- "userRemember": "Onthou",
- "userExpirationTime": "Verval",
- "userDeviceLimit": "Toestel Limiet",
- "userUserLimit": "Gebruiker Limiet",
- "userDeviceReadonly": "Toestel Leesalleen",
- "userLimitCommands": "Beperk Bevele",
- "userDisableReports": "Deaktiveer Verslae",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Teken aan",
- "loginLanguage": "Taal",
- "loginReset": "Herstel Wagwoord",
- "loginRegister": "Registreer",
- "loginLogin": "Teken aan",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Verkeerde e-posadres of wagwoord",
- "loginCreated": "Nuwe gebruiker is geregistreer",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "Nuwe wagwoord is ingestel",
- "loginLogout": "Teken uit",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Toestelle en staat",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Toestelle",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifiseerder",
- "deviceModel": "Model",
- "deviceContact": "Kontak",
- "deviceCategory": "Kategorie",
- "deviceLastUpdate": "Laaste Opdatering",
- "deviceCommand": "Bevel",
- "deviceFollow": "Volg",
- "deviceTotalDistance": "Totale Afstand",
- "deviceStatus": "Toestand",
- "deviceStatusOnline": "Aanlyn",
- "deviceStatusOffline": "Van lyn af",
- "deviceStatusUnknown": "Onbekend",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Groep",
- "groupParent": "Groep",
- "groupNoGroup": "Geen Groep",
- "settingsTitle": "Instellings",
- "settingsUser": "Rekening",
- "settingsGroups": "Groepe",
- "settingsServer": "Bediener",
- "settingsUsers": "Gebruikers",
- "settingsDistanceUnit": "Afstand Eenheid",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Spoed Eenheid",
- "settingsVolumeUnit": "Volume Eenheid",
- "settingsTwelveHourFormat": "12-uur Formaat",
- "settingsCoordinateFormat": "Koördinate Formaat",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Verslae",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Toestel",
- "reportGroup": "Groep",
- "reportFrom": "Van",
- "reportTo": "Na",
- "reportShow": "Wys",
- "reportClear": "Maak skoon",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Toestel Tyd",
- "positionServerTime": "Server Time",
- "positionValid": "Geldig",
- "positionAccuracy": "Akkuraatheid",
- "positionLatitude": "Breedtegraad",
- "positionLongitude": "Lengtegraad",
- "positionAltitude": "Hoogte",
- "positionSpeed": "Spoed",
- "positionCourse": "Koers",
- "positionAddress": "Adres",
- "positionProtocol": "Protokol",
- "positionDistance": "Afstand",
- "positionRpm": "RPM",
- "positionFuel": "Brandstof",
- "positionPower": "Krag",
- "positionBattery": "Battery",
- "positionRaw": "Rou",
- "positionIndex": "Indeks",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelliete",
- "positionSatVisible": "Sigbare Satelliete",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Wandel",
- "positionEvent": "Gebeurtenis",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Diens Odometer",
- "positionTripOdometer": "Reis Odometer",
- "positionHours": "Ure",
- "positionSteps": "Stappe",
- "positionInput": "Inset",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Uitset",
- "positionBatteryLevel": "Batteryvlak",
- "positionFuelConsumption": "Brandstofverbruik",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware-weergawe",
- "positionVersionHw": "Hardeware weergawe",
- "positionIgnition": "Ontsteking",
- "positionFlags": "Vlae",
- "positionCharge": "Herlaai",
- "positionIp": "IP",
- "positionArchive": "Argiveer",
- "positionVin": "VIN",
- "positionApproximate": "Benader",
- "positionThrottle": "Versneller",
- "positionMotion": "Beweging ",
- "positionArmed": "Gereed",
- "positionAcceleration": "Versnelling",
- "positionTemp": "Temperatuur",
- "positionDeviceTemp": "Toestel Temperatuur",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operateur",
- "positionCommand": "Bevel",
- "positionBlocked": "Geblokkeer",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Spoed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Bestuurder unieke identiteit",
- "positionCard": "Card",
- "positionImage": "Beeld",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Bedienerinstellings",
- "serverZoom": "Zoom",
- "serverRegistration": "Registrasie",
- "serverReadonly": "Leesalleen",
- "serverForceSettings": "Dwing instellings",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Kaart",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Sleutel",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Kaartlaag",
- "mapCustom": "Pasgemaak (XYZ)",
- "mapCustomArcgis": "Pasgemaak (ArcGIS)",
- "mapCustomLabel": "Pasgemaakte kaart",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Kaart Sleutel",
- "mapBingRoad": "Bing Kaart Pad",
- "mapBingAerial": "Bing Kaart Lug",
- "mapBingHybrid": "Bing Kaart Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Kaart",
- "mapYandexSat": "Yandex Satelliet",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Toegang Sleutel",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Sleutel",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Toegang Sleutel",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Sleutel",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Sleutel",
- "mapShapePolygon": "Veelhoek",
- "mapShapeCircle": "Sirkel",
- "mapShapePolyline": "Veelhoeklyn",
- "mapLiveRoutes": "Lewendige Routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Vlak",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Toestand",
- "stateName": "Attribuut",
- "stateValue": "Waarde",
- "commandTitle": "Bevel",
- "commandSend": "Stuur",
- "commandSent": "Bevel gestuur",
- "commandQueued": "Bevel in ry",
- "commandUnit": "Eenheid",
- "commandCustom": "Pasgemaakte bevel",
- "commandDeviceIdentification": "Toestel Identifisering",
- "commandPositionSingle": "Enkel Verslag",
- "commandPositionPeriodic": "Periodiese Verslag",
- "commandPositionStop": "Halt Verslag",
- "commandEngineStop": "Engin Stop",
- "commandEngineResume": "Engin Herbegin",
- "commandAlarmArm": "Aktivering Alarm",
- "commandAlarmDisarm": "Onaktivering Alarm",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Stel Tydsone",
- "commandRequestPhoto": "Versoek Foto",
- "commandPowerOff": "Skakel Toestel Af",
- "commandRebootDevice": "Herbegin Toestel",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Stuur SMS",
- "commandSendUssd": "Stuur USSD",
- "commandSosNumber": "Stel SOS Nommer",
- "commandSilenceTime": "Stel Stil Tyd",
- "commandSetPhonebook": "Stel Telefoon boek",
- "commandVoiceMessage": "Stemboodskap",
- "commandOutputControl": "Uitsetbeheer",
- "commandVoiceMonitoring": "Stemmonitering",
- "commandSetAgps": "Stel AGPS",
- "commandSetIndicator": "Stel aanwyser",
- "commandConfiguration": "Konfigureer",
- "commandGetVersion": "Kry weergawe",
- "commandFirmwareUpdate": "Opdateer firmware",
- "commandSetConnection": "Stel Verbinding",
- "commandSetOdometer": "Stel Odometer",
- "commandGetModemStatus": "Kry Modemstatus",
- "commandGetDeviceStatus": "Kry Toestel Gestel",
- "commandSetSpeedLimit": "Stel spoedbeperking",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Stel Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Stel Spoed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekwensie",
- "commandTimezone": "Tydsone Verreken",
- "commandMessage": "Boodskap",
- "commandRadius": "Radius",
- "commandEnable": "In Staat Stel",
- "commandData": "Data",
- "commandIndex": "Indeks",
- "commandPhone": "Telefoon nommer",
- "commandServer": "Bediener",
- "commandPort": "Poort",
- "eventAll": "Alle gebeure",
- "eventDeviceOnline": "Status aanlyn",
- "eventDeviceUnknown": "Status onbekend",
- "eventDeviceOffline": "Status vanlyn",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Toestel in beweging",
- "eventDeviceStopped": "Toestel tot stilstand gekom",
- "eventDeviceOverspeed": "Spoedgrens oortree",
- "eventDeviceFuelDrop": "Brandstofval",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Bevel resultaat",
- "eventGeofenceEnter": "Geografiese omheining binnegegaan",
- "eventGeofenceExit": "Geografiese omheining verlaat",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ontsteking aan",
- "eventIgnitionOff": "Ontsteking af",
- "eventMaintenance": "Onderhoud vereis",
- "eventTextMessage": "Teks boodskap ontvang",
- "eventDriverChanged": "Bestuurder geruil",
- "eventMedia": "Media",
- "eventsScrollToLast": "Blaai na laaste",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Algemeen",
- "alarmSos": "SOS",
- "alarmVibration": "Vibrasie",
- "alarmMovement": "Beweging",
- "alarmLowspeed": "Lae Spoed",
- "alarmOverspeed": "Spoed oortreding",
- "alarmFallDown": "Val af",
- "alarmLowPower": "Lae krag",
- "alarmLowBattery": "Batteryvlak laag",
- "alarmFault": "Fout",
- "alarmPowerOff": "Krag af",
- "alarmPowerOn": "Krag aan",
- "alarmDoor": "Deur",
- "alarmLock": "Sluit",
- "alarmUnlock": "Oopsluit",
- "alarmGeofence": "Geografiese omheining",
- "alarmGeofenceEnter": "Geografiese omheining binnegegaan",
- "alarmGeofenceExit": "Geografiese omheining verlaat",
- "alarmGpsAntennaCut": "GPS Antenna gesny",
- "alarmAccident": "Ongeluk",
- "alarmTow": "Sleep",
- "alarmIdle": "Luier",
- "alarmHighRpm": "Hoë RPM",
- "alarmHardAcceleration": "Harde Versnelling",
- "alarmHardBraking": "Harde Remming",
- "alarmHardCornering": "Harde Draai",
- "alarmLaneChange": "Baanverandering",
- "alarmFatigueDriving": "Moeg Bestuur",
- "alarmPowerCut": "Kragonderbreking",
- "alarmPowerRestored": "Krag herstel",
- "alarmJamming": "Seinverstoring",
- "alarmTemperature": "Temperatuur",
- "alarmParking": "Parkeer",
- "alarmBonnet": "Enjinkap",
- "alarmFootBrake": "Voetrem",
- "alarmFuelLeak": "Brandstoflek",
- "alarmTampering": "Peuter",
- "alarmRemoving": "Verwydering",
- "notificationType": "Kennisgewing Soort",
- "notificationAlways": "Alle Toestelle",
- "notificationNotificators": "Kanale",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Pos",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Roete",
- "reportEvents": "Gebeure",
- "reportTrips": "Ritte",
- "reportStops": "Stops",
- "reportSummary": "Opsomming",
- "reportDaily": "Daaglikse Opsomming",
- "reportChart": "Grafiek",
- "reportConfigure": "Konfigureer",
- "reportEventTypes": "Gebeurtenistipes",
- "reportChartType": "Grafiek Soort",
- "reportShowMarkers": "Wys Merkers",
- "reportExport": "Uitvoer",
- "reportEmail": "E-pos Verslag",
- "reportSchedule": "Schedule",
- "reportPeriod": "Periode",
- "reportCustom": "Pasgemaak",
- "reportToday": "Vandag",
- "reportYesterday": "Gister",
- "reportThisWeek": "Hierdie Week",
- "reportPreviousWeek": "Vorige Week",
- "reportThisMonth": "Hierdie Maand",
- "reportPreviousMonth": "Vorige Maand",
- "reportDeviceName": "Toestel Naam",
- "reportAverageSpeed": "Gemiddelde Spoed",
- "reportMaximumSpeed": "Maksimum Spoed",
- "reportEngineHours": "Engin Ure",
- "reportDuration": "Duur",
- "reportStartDate": "Begindatum",
- "reportStartTime": "Begin tyd",
- "reportStartAddress": "Begin Adres",
- "reportEndTime": "Einde tyd",
- "reportEndAddress": "Einde Adres",
- "reportSpentFuel": "Brandstof Gebruik",
- "reportStartOdometer": "Odometer Begin",
- "reportEndOdometer": "Odometer Einde",
- "statisticsTitle": "Statistieke",
- "statisticsCaptureTime": "Vang tyd vas",
- "statisticsActiveUsers": "Aktiewe Gebruikers",
- "statisticsActiveDevices": "Aktiewe Toestelle",
- "statisticsRequests": "Versoeke",
- "statisticsMessagesReceived": "Boodskappe ontvang",
- "statisticsMessagesStored": "Boodskappe gestoor",
- "statisticsGeocoder": "Geokodeerder Versoeke",
- "statisticsGeolocation": "Geoligging Versoeke",
- "categoryArrow": "Pyl",
- "categoryDefault": "Verstrek",
- "categoryAnimal": "Dier",
- "categoryBicycle": "Fiets",
- "categoryBoat": "Boot",
- "categoryBus": "Bus",
- "categoryCar": "Kar",
- "categoryCamper": "Camper",
- "categoryCrane": "Hyskraan",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motorfiets",
- "categoryOffroad": "Veeldoelig",
- "categoryPerson": "Persoon",
- "categoryPickup": "Bakkie",
- "categoryPlane": "Vliegtuig",
- "categoryShip": "Skip",
- "categoryTractor": "Trekker",
- "categoryTrain": "Trein",
- "categoryTram": "Trem",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Trok",
- "categoryVan": "Paneelwa",
- "categoryScooter": "Moffiebike",
- "maintenanceStart": "Aan",
- "maintenancePeriod": "Periode"
-} \ No newline at end of file
diff --git a/web/l10n/ar.json b/web/l10n/ar.json
deleted file mode 100644
index 19f4c9d8..00000000
--- a/web/l10n/ar.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "جاري التحميل...",
- "sharedHide": "إخفاء",
- "sharedSave": "حفظ",
- "sharedUpload": "Upload",
- "sharedSet": "ضبط",
- "sharedCancel": "إلغاء",
- "sharedCopy": "Copy",
- "sharedAdd": "إضافة",
- "sharedEdit": "تعديل",
- "sharedRemove": "حذف",
- "sharedRemoveConfirm": "حذف العنصر؟",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "نعم",
- "sharedNo": "لا",
- "sharedKm": "كم",
- "sharedMi": "ميل",
- "sharedNmi": "معرف العداد المحلي",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "عقدة",
- "sharedKmh": "كم/ساعه",
- "sharedMph": "ميل/ساعة",
- "sharedHour": "ساعه",
- "sharedMinute": "دقيقة",
- "sharedSecond": "ثانية",
- "sharedDays": "أيام",
- "sharedHours": "ساعات",
- "sharedMinutes": "دقائق",
- "sharedDecimalDegrees": "درجات عشرية",
- "sharedDegreesDecimalMinutes": "درجات عشرية للدقائق",
- "sharedDegreesMinutesSeconds": "درجات دقائق للثواني",
- "sharedName": "الاسم",
- "sharedDescription": "الوصف",
- "sharedSearch": "بحث",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "السياج الجغرافي",
- "sharedGeofences": "السياجات الجغرافية",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "التنبيهات",
- "sharedNotification": "إشعار",
- "sharedAttributes": "الخصائص",
- "sharedAttribute": "خاصية",
- "sharedDrivers": "السائقون",
- "sharedDriver": "السائق",
- "sharedArea": "منطقة",
- "sharedSound": "صوت التنبيهات",
- "sharedType": "النوع",
- "sharedDistance": "المسافة",
- "sharedHourAbbreviation": "س",
- "sharedMinuteAbbreviation": "د",
- "sharedSecondAbbreviation": "ث",
- "sharedVoltAbbreviation": "جهد كهربائي",
- "sharedLiterAbbreviation": "تيار",
- "sharedGallonAbbreviation": "جالون",
- "sharedLiter": "ليتر",
- "sharedImpGallon": "جالون الإمبراطورية",
- "sharedUsGallon": "جالون أمريكي",
- "sharedLiterPerHourAbbreviation": "لتر/ساعة",
- "sharedGetMapState": "الحصول على حالة الخريطة",
- "sharedComputedAttribute": "السمة المحصاة",
- "sharedComputedAttributes": "السمات المحصاة",
- "sharedCheckComputedAttribute": "التحقق من السمة المحصاة",
- "sharedExpression": "العبارة الجبرية",
- "sharedDevice": "جهاز",
- "sharedTest": "Test",
- "sharedTestNotification": "ارسل تنبيه تجريبي",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "التقويم",
- "sharedCalendars": "التقويمات",
- "sharedFile": "ملف",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "حدد ملف",
- "sharedPhone": "هاتف",
- "sharedRequired": "اجباري",
- "sharedPreferences": "التفضيلات",
- "sharedPermissions": "الصلاحيات",
- "sharedConnections": "الاتصالات",
- "sharedExtra": "إضافي",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "نص",
- "sharedTypeNumber": "رقم",
- "sharedTypeBoolean": "منطقية",
- "sharedTimezone": "منطقة زمنية",
- "sharedInfoTitle": "معلومات",
- "sharedSavedCommand": "أمر مخزن",
- "sharedSavedCommands": "أوامر مخزنة",
- "sharedNew": "جديد...",
- "sharedShowAddress": "إظهار العنوان",
- "sharedShowDetails": "تفاصيل إضافية",
- "sharedDisabled": "معطل",
- "sharedMaintenance": "صيانة",
- "sharedDeviceAccumulators": "المراكم",
- "sharedAlarms": "الإنذارات",
- "sharedLocation": "الموقع",
- "sharedImport": "استيراد",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "الحد الأقصى للسرعة",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "مسافة متعددة الخطوط",
- "attributeReportIgnoreOdometer": "تقرير: إهمال عداد المسافة",
- "attributeWebReportColor": "الويب: لون التقرير",
- "attributeDevicePassword": "الرقم السري للجهاز",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "بداية عدم فعالية الجهاز",
- "attributeDeviceInactivityPeriod": "فترة عدم فعالية الجهاز",
- "attributeProcessingCopyAttributes": "المعالجة: نسخ السمات",
- "attributeColor": "اللون",
- "attributeWebLiveRouteLength": "الويب: طول العرض المباشر للمسار",
- "attributeWebSelectZoom": "الويب: التقريب عند التحديد",
- "attributeWebMaxZoom": "ويب: التكبير الأقصى",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "البريد: مستضيف الـ SMTP",
- "attributeMailSmtpPort": "البريد: منفذ الـ SMTP",
- "attributeMailSmtpStarttlsEnable": "البريد: تمكين SMTP SSL",
- "attributeMailSmtpStarttlsRequired": "البريد: مطلوب SMTP SSL",
- "attributeMailSmtpSslEnable": "البريد: تمكين SMTP SSL",
- "attributeMailSmtpSslTrust": "البريد: وثوق بـ SMTP SSL",
- "attributeMailSmtpSslProtocols": "البريد: بروتوكولات SMTP SSL",
- "attributeMailSmtpFrom": "البريد: SMTP من",
- "attributeMailSmtpAuth": "البريد: تفعيل مصادقة SMTP",
- "attributeMailSmtpUsername": "البريد: أسم مستخدم الـ SMTP",
- "attributeMailSmtpPassword": "البريد: كلمة مرور الـ SMTP",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "واجهة المستخدم: تعطيل الأحداث",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "واجهة المستخدم: تعطيل السائقين",
- "attributeUiDisableComputedAttributes": "واجهة المستخدم: تعطيل السمات المحصاة",
- "attributeUiDisableCalendars": "واجهة المستخدم: تعطيل التقويمات",
- "attributeUiDisableMaintenance": "واجهة المستخدم: تعطيل الصيانة",
- "attributeUiHidePositionAttributes": "واجهة المستخدم: إخفاء سمات الموقع",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "رموز الإشعارات",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "خطأ",
- "errorGeneral": "معطيات غير صحيحة او مخالفة للصلاحيات",
- "errorConnection": "خطأ في الاتصال",
- "errorSocket": "خطأ في اتصال حزم البيانات",
- "errorZero": "لا يمكن ان تكون صفر",
- "userEmail": "البريد الالكتروني",
- "userPassword": "كلمة المرور",
- "userAdmin": "مدير النظام",
- "userRemember": "تذكر",
- "userExpirationTime": "انتهاء الصلاحية",
- "userDeviceLimit": "الحد الأقصى للأجهزة",
- "userUserLimit": "الحد الأقصى للمستخدمين",
- "userDeviceReadonly": "جهاز للقراءة فقط",
- "userLimitCommands": "تقييد الاوامر",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "رمز",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "تسجيل الدخول",
- "loginLanguage": "اللغة",
- "loginReset": "Reset Password",
- "loginRegister": "تسجيل جديد",
- "loginLogin": "تسجيل الدخول",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "البريد الالكتروني أو كلمة المرور غير صحيحة",
- "loginCreated": "تم تسجيل مستخدم جديد",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "تسجيل الخروج",
- "loginLogo": "الشعار",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "الأجهزة والحالة",
- "deviceSelected": "Selected Device",
- "deviceTitle": "الأجهزة",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "المعرف",
- "deviceModel": "الطراز",
- "deviceContact": "بيانات التواصل",
- "deviceCategory": "الصنف",
- "deviceLastUpdate": "آخر تحديث",
- "deviceCommand": "أمر",
- "deviceFollow": "متابعة",
- "deviceTotalDistance": "المسافة الكلية",
- "deviceStatus": "الحالة",
- "deviceStatusOnline": "متصل",
- "deviceStatusOffline": "غير متصل",
- "deviceStatusUnknown": "غير معروف",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "مجموعة",
- "groupParent": "مجموعة",
- "groupNoGroup": "لا توجد مجموعة",
- "settingsTitle": "الإعدادات",
- "settingsUser": "الحساب",
- "settingsGroups": "المجموعات",
- "settingsServer": "الخادم",
- "settingsUsers": "المستخدمون",
- "settingsDistanceUnit": "وحدة المسافة",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "وحدة السرعة",
- "settingsVolumeUnit": "وحدة الحجم",
- "settingsTwelveHourFormat": "صيغة 12-ساعة",
- "settingsCoordinateFormat": "صيغة الإحداثيات",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "التقارير",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "الجهاز",
- "reportGroup": "المجموعة",
- "reportFrom": "من",
- "reportTo": "الى",
- "reportShow": "إظهار",
- "reportClear": "تفريغ الحقول",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "صالح",
- "positionAccuracy": "الدقة",
- "positionLatitude": "خط العرض",
- "positionLongitude": "خط الطول",
- "positionAltitude": "ارتفاع عن سطح البحر",
- "positionSpeed": "السرعة",
- "positionCourse": "الإتجاه",
- "positionAddress": "العنوان",
- "positionProtocol": "بروتوكول",
- "positionDistance": "المسافة",
- "positionRpm": "دورة في الدقيقة",
- "positionFuel": "الوقود",
- "positionPower": "الطاقة",
- "positionBattery": "بطارية",
- "positionRaw": "خام",
- "positionIndex": "قائمة",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "أقمار صناعية",
- "positionSatVisible": "الأقمار الصناعية المرئية",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "التجوال",
- "positionEvent": "حدث",
- "positionAlarm": "إنذار",
- "positionStatus": "الحالة",
- "positionOdometer": "عداد المسافة",
- "positionServiceOdometer": "عداد مسافة الصيانة",
- "positionTripOdometer": "عداد مسافة الرحلة",
- "positionHours": "الساعات",
- "positionSteps": "الخطوات",
- "positionInput": "مدخلات",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "نواتج",
- "positionBatteryLevel": "مستوى البطارية",
- "positionFuelConsumption": "الوقود المستهلك",
- "positionRfid": "RFID",
- "positionVersionFw": "نسخة البرنامج",
- "positionVersionHw": "نسخة الجهاز",
- "positionIgnition": "إشعال",
- "positionFlags": "أعلام",
- "positionCharge": "شحن",
- "positionIp": "عنوان البروتوكول",
- "positionArchive": "أرشفة",
- "positionVin": "رقم الهيكل",
- "positionApproximate": "تقريبي",
- "positionThrottle": "الخانق",
- "positionMotion": "الحركة",
- "positionArmed": "الانذار مفعل",
- "positionAcceleration": "التسارع",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "حرارة الجهاز",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "المشغل",
- "positionCommand": "أمر",
- "positionBlocked": "محظور",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "سرعة OBD",
- "positionObdOdometer": "عداد مسافة OBD",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "معرف فريد للسائق",
- "positionCard": "Card",
- "positionImage": "صورة",
- "positionVideo": "Video",
- "positionAudio": "صوت",
- "serverTitle": "اعدادت الخادم",
- "serverZoom": "تقريب",
- "serverRegistration": "تسجيل",
- "serverReadonly": "متابعة فقط",
- "serverForceSettings": "إجبار الإعدادات",
- "serverAnnouncement": "الإعلانات",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "خريطة",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "طبقة الخريطة",
- "mapCustom": "مخصص (XYZ)",
- "mapCustomArcgis": "مخصص (ArcGIS)",
- "mapCustomLabel": "خريطة مخصصة",
- "mapCarto": "خرائط Carto Base",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "مفتاح خرائط Bing",
- "mapBingRoad": "خرائط الطرق Bing",
- "mapBingAerial": "خرائط جوية Bing",
- "mapBingHybrid": "خرائط هجينة Bing",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "خرائط Yandex",
- "mapYandexSat": "خرائط صورية Yandex",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox للشوارع",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox بالخارج",
- "mapMapboxSatellite": "Mapbox بالقمر الصناعي",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "مضلع",
- "mapShapeCircle": "دائرة",
- "mapShapePolyline": "متعدد الضلوع",
- "mapLiveRoutes": "مسار حي",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "طبقة POI نقاط الإهتمام",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "حالة",
- "stateName": "خاصية",
- "stateValue": "قيمة",
- "commandTitle": "أمر",
- "commandSend": "ارسال",
- "commandSent": "تم ارسال الامر",
- "commandQueued": "الامر في قائمة الانتظار",
- "commandUnit": "وحدة",
- "commandCustom": "أمر مخصص",
- "commandDeviceIdentification": "تعريف الجهاز",
- "commandPositionSingle": "تقرير مفرد",
- "commandPositionPeriodic": "تقارير دورية",
- "commandPositionStop": "ايقاف التقرير",
- "commandEngineStop": "ايقاف المحرك",
- "commandEngineResume": "استئناف المحرك",
- "commandAlarmArm": "بدء تشغيل المنبه",
- "commandAlarmDisarm": "تعطيل المنبه",
- "commandAlarmDismiss": "إيقاف المنبه",
- "commandSetTimezone": "حدد المنطقة الزمنية",
- "commandRequestPhoto": "اطلب صورة",
- "commandPowerOff": "اطفاء الجهاز",
- "commandRebootDevice": "أعد تشغيل الجهاز",
- "commandFactoryReset": "إعادة ضبط المصنع",
- "commandSendSms": "إرسال رسالة قصيرة",
- "commandSendUssd": "إرسال الـ USSD",
- "commandSosNumber": "ظبط رقم الطوارئ",
- "commandSilenceTime": "حدد التوقيت الصامت",
- "commandSetPhonebook": "ضبط سجل الهاتف",
- "commandVoiceMessage": "رسالة صوتية",
- "commandOutputControl": "التحكم بالإخراج",
- "commandVoiceMonitoring": "مراقبة صوتية",
- "commandSetAgps": "تعيين GPS المساعد",
- "commandSetIndicator": "تعيين المؤشر",
- "commandConfiguration": "ضبط",
- "commandGetVersion": "الحصول على الإصدار",
- "commandFirmwareUpdate": "تحديث البرنامج المشغل",
- "commandSetConnection": "تعيين اتصال",
- "commandSetOdometer": "تعيين عداد المسافة",
- "commandGetModemStatus": "الحصول على حالة المودم",
- "commandGetDeviceStatus": "الحصول على حالة الجهاز",
- "commandSetSpeedLimit": "ضبط حد السرعة",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "التكرر",
- "commandTimezone": "إزاحة المنطقة الزمنية",
- "commandMessage": "رسالة",
- "commandRadius": "القطر",
- "commandEnable": "تفعيل",
- "commandData": "بيانات",
- "commandIndex": "قائمة",
- "commandPhone": "رقم الهاتف",
- "commandServer": "خادم",
- "commandPort": "منفذ",
- "eventAll": "جميع الأحداث",
- "eventDeviceOnline": "الحالة متصل",
- "eventDeviceUnknown": "الحالة غير معروف",
- "eventDeviceOffline": "الحالة غير متصل",
- "eventDeviceInactive": "الجهاز غير مفعل",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "الجهاز يتحرك",
- "eventDeviceStopped": "الجهاز متوقف",
- "eventDeviceOverspeed": "تجاوز للسرعة",
- "eventDeviceFuelDrop": "انخفاض الوقود",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "نتيجة الأمر",
- "eventGeofenceEnter": "دخول المنطقة الجغرافية",
- "eventGeofenceExit": "خروج من المنطقة الجغرافية",
- "eventAlarm": "إنذار",
- "eventIgnitionOn": "اشعال المحرك",
- "eventIgnitionOff": "ايقاف المحرك",
- "eventMaintenance": "حان وقت الصيانة",
- "eventTextMessage": "تم استلام رسالة نصية",
- "eventDriverChanged": "تم تغيير السائق",
- "eventMedia": "Media",
- "eventsScrollToLast": "الانتقال للأخير",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "عام",
- "alarmSos": "استغاثة",
- "alarmVibration": "اهتزاز",
- "alarmMovement": "حركة",
- "alarmLowspeed": "سرعة منخفضة",
- "alarmOverspeed": "تجاوز السرعة",
- "alarmFallDown": "سقوط",
- "alarmLowPower": "طاقة منخفضة",
- "alarmLowBattery": "انخفاض البطارية",
- "alarmFault": "خلل",
- "alarmPowerOff": "اطفاء",
- "alarmPowerOn": "تشغيل",
- "alarmDoor": "باب",
- "alarmLock": "اقفال",
- "alarmUnlock": "فتح",
- "alarmGeofence": "سياج جغرافي",
- "alarmGeofenceEnter": "دخول السياج الجغرافي",
- "alarmGeofenceExit": "الخروج من السياج الجغرافي",
- "alarmGpsAntennaCut": "انقطاع هوائي القمر الصناعي",
- "alarmAccident": "حادث",
- "alarmTow": "جر",
- "alarmIdle": "خامل",
- "alarmHighRpm": "دوران في الدقيقة عالٍ",
- "alarmHardAcceleration": "تسارع شديد",
- "alarmHardBraking": "كبح فرامل شديد",
- "alarmHardCornering": "انعطاف شديد",
- "alarmLaneChange": "تغيير الممر",
- "alarmFatigueDriving": "قيادة في حالة تعب",
- "alarmPowerCut": "انقطاء الطاقة",
- "alarmPowerRestored": "استعادة الطاقة",
- "alarmJamming": "التشويش",
- "alarmTemperature": "الحرارة",
- "alarmParking": "اصطفاف",
- "alarmBonnet": "غطاء محرك السيارة",
- "alarmFootBrake": "فرامل القدم",
- "alarmFuelLeak": "تسرب وقود",
- "alarmTampering": "عبث وتلاعب",
- "alarmRemoving": "الازالة",
- "notificationType": "نوع التنبيه",
- "notificationAlways": "جميع الاجهزة",
- "notificationNotificators": "قنواة",
- "notificatorCommand": "Command",
- "notificatorWeb": "ويب",
- "notificatorMail": "البريد",
- "notificatorSms": "رسائل قصيرة",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "إعادة تشغيل",
- "reportCombined": "Combined",
- "reportRoute": "مسار",
- "reportEvents": "الأحداث",
- "reportTrips": "رحلات",
- "reportStops": "وقفات",
- "reportSummary": "ملخص",
- "reportDaily": "الملخص اليومي",
- "reportChart": "رسم بياني",
- "reportConfigure": "تهيئة",
- "reportEventTypes": "أنواع الأحداث",
- "reportChartType": "نوع الرسم البياني",
- "reportShowMarkers": "إظهار العلامات",
- "reportExport": "تصدير",
- "reportEmail": "تقرير بالبريد",
- "reportSchedule": "Schedule",
- "reportPeriod": "الفترة",
- "reportCustom": "مخصص",
- "reportToday": "اليوم",
- "reportYesterday": "أمس",
- "reportThisWeek": "هذا الاسبوع",
- "reportPreviousWeek": "الاسبوع السابق",
- "reportThisMonth": "هذا الشهر",
- "reportPreviousMonth": "الشهر السابق",
- "reportDeviceName": "إسم الجهاز",
- "reportAverageSpeed": "متوسط السرعة",
- "reportMaximumSpeed": "السرعة القصوى",
- "reportEngineHours": "ساعات عمل المحرك",
- "reportDuration": "المدة الزمنية",
- "reportStartDate": "تاريخ البدء",
- "reportStartTime": "وقت البدء",
- "reportStartAddress": "عنوان البدء",
- "reportEndTime": "وقت النهاية",
- "reportEndAddress": "عنوان النهاية",
- "reportSpentFuel": "الوقود المستنفد",
- "reportStartOdometer": "بدء عداد المسافة",
- "reportEndOdometer": "إنهاء Odometer",
- "statisticsTitle": "إحصائيات",
- "statisticsCaptureTime": "وقت الالتقاط",
- "statisticsActiveUsers": "المستخدمون النشطون",
- "statisticsActiveDevices": "الاجهزة النشطة",
- "statisticsRequests": "طلبات",
- "statisticsMessagesReceived": "الرسائل المستلمة",
- "statisticsMessagesStored": "الرسائل المخزنة",
- "statisticsGeocoder": "طلبات Geocoder",
- "statisticsGeolocation": "طلبات تحديد الموقع الجغرافي",
- "categoryArrow": "سهم",
- "categoryDefault": "افتراضي",
- "categoryAnimal": "حيوان",
- "categoryBicycle": "دراجة هوائية",
- "categoryBoat": "قارب",
- "categoryBus": "حافلة",
- "categoryCar": "سيارة",
- "categoryCamper": "Camper",
- "categoryCrane": "رافعة ونش",
- "categoryHelicopter": "طائرة مروحية",
- "categoryMotorcycle": "دراجة نارية",
- "categoryOffroad": "رباعية",
- "categoryPerson": "شخص",
- "categoryPickup": "شاحنة صغيرة",
- "categoryPlane": "طائرة",
- "categoryShip": "سفينة",
- "categoryTractor": "جرار زراعى",
- "categoryTrain": "قطار",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "شاحنة",
- "categoryVan": "نقل",
- "categoryScooter": "سكوتر",
- "maintenanceStart": "بداية",
- "maintenancePeriod": "فترة"
-} \ No newline at end of file
diff --git a/web/l10n/az.json b/web/l10n/az.json
deleted file mode 100644
index 02430a47..00000000
--- a/web/l10n/az.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Yükləmə...",
- "sharedHide": "Gizlətmək",
- "sharedSave": "Yadda saxlamaq",
- "sharedUpload": "Upload",
- "sharedSet": "Qurmaq",
- "sharedCancel": "Ləğv etmək",
- "sharedCopy": "Copy",
- "sharedAdd": "Əlavə etmək",
- "sharedEdit": "Redaktə etmək",
- "sharedRemove": "Silmək",
- "sharedRemoveConfirm": "Elementi silmək?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "km",
- "sharedMi": "mil",
- "sharedNmi": "m.mil",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "Düyün",
- "sharedKmh": "km/saat",
- "sharedMph": "mil/saat",
- "sharedHour": "Saat",
- "sharedMinute": "Dəqiqə",
- "sharedSecond": "Saniyə",
- "sharedDays": "Günlər",
- "sharedHours": "Saatlar",
- "sharedMinutes": "Dəqiqələr",
- "sharedDecimalDegrees": "Onluq dərəcələr",
- "sharedDegreesDecimalMinutes": "Dərəcələr Onluq Dəqiqələr",
- "sharedDegreesMinutesSeconds": "Dərəcələr Dəqiqələr Saniyələr",
- "sharedName": "Ad",
- "sharedDescription": "Təsvir",
- "sharedSearch": "Axtarış",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geozona",
- "sharedGeofences": "Geozonalar",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Bildirişlər",
- "sharedNotification": "Bildirişlər",
- "sharedAttributes": "Atributlar",
- "sharedAttribute": "Atribut",
- "sharedDrivers": "Sürücülər",
- "sharedDriver": "Sürücü",
- "sharedArea": "Ərazi",
- "sharedSound": "Səsli xəbərdarlıq",
- "sharedType": "Tip",
- "sharedDistance": "Məsafə",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "dəq",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "litr/saat",
- "sharedGetMapState": "Xəritənin vəziyyətini almaq",
- "sharedComputedAttribute": "Hesablanan atribut",
- "sharedComputedAttributes": "Hesablanan atributlar",
- "sharedCheckComputedAttribute": "Hesablanan atributu yoxlamaq",
- "sharedExpression": "İfadə",
- "sharedDevice": "Cihaz",
- "sharedTest": "Test",
- "sharedTestNotification": "Test bildirişi göndərmək",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Təqvim",
- "sharedCalendars": "Təqvimlər",
- "sharedFile": "Fayl",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Fayl seçin",
- "sharedPhone": "Telefon",
- "sharedRequired": "Məcburi",
- "sharedPreferences": "Tənzimləmələr",
- "sharedPermissions": "İzinlər",
- "sharedConnections": "Connections",
- "sharedExtra": "Əlavə",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Sətir",
- "sharedTypeNumber": "Rəqəm",
- "sharedTypeBoolean": "Məntiqi dəyəri",
- "sharedTimezone": "Saat qurşağı",
- "sharedInfoTitle": "Məlumat",
- "sharedSavedCommand": "Tarif Saxlamish",
- "sharedSavedCommands": "Tarifler Saxlamish",
- "sharedNew": "yeni",
- "sharedShowAddress": "şou ünvan",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "şikəst",
- "sharedMaintenance": "təmir",
- "sharedDeviceAccumulators": "akkumulyatorlar",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Sürət həddi",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline məsafə",
- "attributeReportIgnoreOdometer": "Hesabat: Odometri rədd etməki",
- "attributeWebReportColor": "Veb: Hesabat rəngi",
- "attributeDevicePassword": "Cihazın şifrəsi",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Emal: Atributların üzünün köçürülməsi",
- "attributeColor": "Rəng",
- "attributeWebLiveRouteLength": "Veb: Onlayn marşrutun uzunluğu",
- "attributeWebSelectZoom": "Veb: Seçim zamanı böyütmə",
- "attributeWebMaxZoom": "Veb: Maksimum böyütmə",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Poçt: SMTP Hostu",
- "attributeMailSmtpPort": "Poçt: SMTP Portu",
- "attributeMailSmtpStarttlsEnable": "Poçt: SMTP STARTTLS-i aktiv etmək",
- "attributeMailSmtpStarttlsRequired": "Poçt: SMTP STARTTLS tələb olunur",
- "attributeMailSmtpSslEnable": "Poçt: SMTP SSL-i aktiv etmək",
- "attributeMailSmtpSslTrust": "Poçt: SMTP SSL etibar",
- "attributeMailSmtpSslProtocols": "Poçt: SMTP SSL protokolları",
- "attributeMailSmtpFrom": "Poçt: SMTP göndərən",
- "attributeMailSmtpAuth": "Poçt: SMTP autentifikasiyasını aktiv etmək",
- "attributeMailSmtpUsername": "Poçt: SMTP istifadəçi adı",
- "attributeMailSmtpPassword": "Poçt: SMTP şifrə",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: şikəst vaqiəler",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Sürücüləri deaktiv etmək",
- "attributeUiDisableComputedAttributes": "UI: Hesablanılan atributları deaktiv etmək",
- "attributeUiDisableCalendars": "UI: Təqvimləri deaktiv etmək",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI : Vəzifə xüsusiyyətlərini gizləyin",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Xəta",
- "errorGeneral": "Yanlış parametrlər və ya məhdudiyyətlərin pozulması",
- "errorConnection": "Bağlantı xətası",
- "errorSocket": "Veb socket bağlantı xətası",
- "errorZero": "Sıfır ola bilməz",
- "userEmail": "E-poçt",
- "userPassword": "Şifrə",
- "userAdmin": "Administrator",
- "userRemember": "Yadda saxla",
- "userExpirationTime": "Bitmə vaxtı",
- "userDeviceLimit": "Cihaz məhdudiyyəti",
- "userUserLimit": "İstifadəçilərin məhdudiyyəti",
- "userDeviceReadonly": "Sadəcə cihaza baxış",
- "userLimitCommands": "Komandaları məhdudlaşdırın",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Açar",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Giriş",
- "loginLanguage": "Dil",
- "loginReset": "Reset Password",
- "loginRegister": "Qeydiyyat",
- "loginLogin": "Giriş",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Yanlış e-poçt ünvanı və ya şifrə",
- "loginCreated": "Yeni istifadəçi qeydiyyatdan keçmişdir",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Çıxış",
- "loginLogo": "Giriş",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Cihaz və vəziyyəti",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Cihaz",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "İdentifikator",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kateqoriya",
- "deviceLastUpdate": "Son yenilənmə",
- "deviceCommand": "Komanda",
- "deviceFollow": "Əməl etmək",
- "deviceTotalDistance": "Ümumi hərəkət məsafəsi",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Onlayn",
- "deviceStatusOffline": "Offlayn",
- "deviceStatusUnknown": "Naməlum",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Qrup",
- "groupParent": "Qrup",
- "groupNoGroup": "Qrupsuz",
- "settingsTitle": "Tənzimləmələr",
- "settingsUser": "İstifadəçi Hesabı",
- "settingsGroups": "Qruplar",
- "settingsServer": "Server",
- "settingsUsers": "İstifadəçilər",
- "settingsDistanceUnit": "Məsafə vahidi",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Sürət",
- "settingsVolumeUnit": "Həcm vahidi",
- "settingsTwelveHourFormat": "12 saatlıq format",
- "settingsCoordinateFormat": "Koordinatlar formatı",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Hesabatlar",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Cihaz",
- "reportGroup": "Qrup",
- "reportFrom": "dan",
- "reportTo": "dək",
- "reportShow": "Göstərmək",
- "reportClear": "Təmizləmək",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Düzgünlük",
- "positionAccuracy": "Dəqiqlik",
- "positionLatitude": "En dairəsi",
- "positionLongitude": "Uzunluq dairəsi",
- "positionAltitude": "Hündürlük",
- "positionSpeed": "Sürət",
- "positionCourse": "İstiqamət",
- "positionAddress": "Ünvan",
- "positionProtocol": "Protokol",
- "positionDistance": "Məsafə",
- "positionRpm": "Dönmələr",
- "positionFuel": "Yanacaq",
- "positionPower": "Qidalanma",
- "positionBattery": "Batareya",
- "positionRaw": "Natamamlar",
- "positionIndex": "İndeks",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Peyklər",
- "positionSatVisible": "Görünən peyklər",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Hadisə",
- "positionAlarm": "Həyəcan",
- "positionStatus": "Status",
- "positionOdometer": "Odometr",
- "positionServiceOdometer": "Xidmət odometri",
- "positionTripOdometer": "Gediş odometri",
- "positionHours": "Saatlar",
- "positionSteps": "Addımlar",
- "positionInput": "Daxilolmalar",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Çıxışlar",
- "positionBatteryLevel": "Batareya səviyyəsi",
- "positionFuelConsumption": "Yanacaq sərfiyyatı",
- "positionRfid": "RFID",
- "positionVersionFw": "Tikilmə versiyası",
- "positionVersionHw": "Metal versiyası",
- "positionIgnition": "İşə düşmə",
- "positionFlags": "Bayraqlar",
- "positionCharge": "Yükləmə",
- "positionIp": "IP",
- "positionArchive": "Arxiv",
- "positionVin": "VIN",
- "positionApproximate": "Təxmini",
- "positionThrottle": "Drossel",
- "positionMotion": "Hərəkət",
- "positionArmed": "Mühafizə",
- "positionAcceleration": "Sürətlənmə",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Cihazın temperaturu",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Komanda",
- "positionBlocked": "Bloklama",
- "positionDtcs": "Səhvlər",
- "positionObdSpeed": "OBD sürət",
- "positionObdOdometer": "OBD odometr",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Sürücü İD-si",
- "positionCard": "Card",
- "positionImage": "Şəkil",
- "positionVideo": "Video",
- "positionAudio": "səs",
- "serverTitle": "Server tənzimləmələri",
- "serverZoom": "Yaxınlaşma",
- "serverRegistration": "Qeydiyyat",
- "serverReadonly": "Sadəcə baxış",
- "serverForceSettings": "Tənzimləmələri sürətləndirmək",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Xəritə",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Xəritə qatı",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Çoxbucaq",
- "mapShapeCircle": "Dairə",
- "mapShapePolyline": "Xətt",
- "mapLiveRoutes": "Canlı marşrutlar",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI təbəqə",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Vəziyyət",
- "stateName": "Parametr",
- "stateValue": "Dəyər",
- "commandTitle": "Komanda",
- "commandSend": "Göndərmək",
- "commandSent": "Komandir göndərildi",
- "commandQueued": "Command queued",
- "commandUnit": "Vahidlər",
- "commandCustom": "İstifadəçi komandası",
- "commandDeviceIdentification": "Cihazın identifikasiyası",
- "commandPositionSingle": "Birdəfəlik təqib",
- "commandPositionPeriodic": "Təqibi başlamaq",
- "commandPositionStop": "Təqibi dayandırmaq",
- "commandEngineStop": "Mühərriki bloklamaq",
- "commandEngineResume": "Mühərriki blokdan çıxarmaq",
- "commandAlarmArm": "Siqnalizasiyanı aktivləşdirmək",
- "commandAlarmDisarm": "Siqnalizasiyanı deaktivləşdirmək",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Saat qurşağını tənzimləmək",
- "commandRequestPhoto": "Şəkil tələb etmək",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Cihazı yenidən yükləmək",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "SMS göndərmək",
- "commandSendUssd": "USSD göndərmək",
- "commandSosNumber": "SOS nömrəni tənzimləmək",
- "commandSilenceTime": "Sükut vaxtını tənzimləmək",
- "commandSetPhonebook": "Telefon kitabçasını tənzimləmək",
- "commandVoiceMessage": "Səsli ismarıc",
- "commandOutputControl": "Çıxışın yoxlanması",
- "commandVoiceMonitoring": "Səs yoxlaması",
- "commandSetAgps": "AGPS-i tənzimləmək",
- "commandSetIndicator": "İndikatoru tənzimləmək",
- "commandConfiguration": "Konfiqurasiya",
- "commandGetVersion": "Versiyanı müəyyənləşdirmək",
- "commandFirmwareUpdate": "Tikilməni yeniləmək",
- "commandSetConnection": "Bağlantını tənzimləmək",
- "commandSetOdometer": "Odometri tənzimləmək",
- "commandGetModemStatus": "Modemin vəziyyətini müəyyənləşdirmək",
- "commandGetDeviceStatus": "Cihazın vəziyyətini müəyyənləşdirmək",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Tezlik",
- "commandTimezone": "Vaxt zonasının yerdəyişməsi",
- "commandMessage": "İsmarıc",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Verilənlər",
- "commandIndex": "Indeks",
- "commandPhone": "Telefon nömrəs",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Bütün hadisələr",
- "eventDeviceOnline": "vəziyyət online",
- "eventDeviceUnknown": "vəziyyət unknown",
- "eventDeviceOffline": "vəziyyət offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Cihaz hərəkət edir",
- "eventDeviceStopped": "Aygıt durdu",
- "eventDeviceOverspeed": "Sürət həddi aşıldı",
- "eventDeviceFuelDrop": "Yanacaq düşməsi",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Komanda nəticəsi",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "qudok",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Texniki xidmətə ehtiyac var",
- "eventTextMessage": "Mətn ismarıcı alındı",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Sonadək fırlanma",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "fəlakət siqnalı",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "düşərgə",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Ayaq əyləci",
- "alarmFuelLeak": "Yanacaq sızması",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Çıxarma",
- "notificationType": "Xəbərdarlıq növü",
- "notificationAlways": "Bütün Cihazlar",
- "notificationNotificators": "Kanallar",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Marşrut",
- "reportEvents": "Hadisələr",
- "reportTrips": "Gedişlər",
- "reportStops": "Dayanacaqlar",
- "reportSummary": "Xülasə",
- "reportDaily": "Daily Summary",
- "reportChart": "Diaqram",
- "reportConfigure": "Konfiqurasiya etmək",
- "reportEventTypes": "Hadisənin tipi",
- "reportChartType": "Diaqram tipi",
- "reportShowMarkers": "Markerləri göstərmək",
- "reportExport": "Eksport",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Dövr",
- "reportCustom": "Xüsusi",
- "reportToday": "Bu gün",
- "reportYesterday": "Dünən",
- "reportThisWeek": "Bu həftə",
- "reportPreviousWeek": "Əvvəlki həftə",
- "reportThisMonth": "Bu ay",
- "reportPreviousMonth": "Əvvəlki Ay",
- "reportDeviceName": "Cihazın adı",
- "reportAverageSpeed": "Orta sürət",
- "reportMaximumSpeed": "Maksimal sürə",
- "reportEngineHours": "Mühərrik saatları",
- "reportDuration": "Davamiyyəti",
- "reportStartDate": "Start Date",
- "reportStartTime": "Başlanğıc vaxtı",
- "reportStartAddress": "Başlanğıc ünvanı",
- "reportEndTime": "Qurtarma vaxtı",
- "reportEndAddress": "Qurtarma ünvanı",
- "reportSpentFuel": "Yanacaq işləndi",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Statistika",
- "statisticsCaptureTime": "Yığım vaxtı",
- "statisticsActiveUsers": "Aktiv istifadəçilər",
- "statisticsActiveDevices": "Aktiv cihazlar",
- "statisticsRequests": "Sorğular",
- "statisticsMessagesReceived": "İsmarıclar alındı",
- "statisticsMessagesStored": "İsmarıclar yadda saxlanıldı",
- "statisticsGeocoder": "Geokoder sorğuları",
- "statisticsGeolocation": "Geolokasiya sorğuları",
- "categoryArrow": "Ox",
- "categoryDefault": "Default rejimi",
- "categoryAnimal": "Heyvan",
- "categoryBicycle": "Velosiped",
- "categoryBoat": "Qayıq",
- "categoryBus": "Avtobus",
- "categoryCar": "Avtomobil",
- "categoryCamper": "Camper",
- "categoryCrane": "Kran",
- "categoryHelicopter": "Vertolyot",
- "categoryMotorcycle": "Motosikl",
- "categoryOffroad": "Offroad",
- "categoryPerson": "İnsan",
- "categoryPickup": "Pikap",
- "categoryPlane": "Təyyarə",
- "categoryShip": "Gəmi",
- "categoryTractor": "Traktor",
- "categoryTrain": "qatar",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Yük maşını",
- "categoryVan": "Furqon",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Başlamaq",
- "maintenancePeriod": "Dövr"
-} \ No newline at end of file
diff --git a/web/l10n/bg.json b/web/l10n/bg.json
deleted file mode 100644
index 299b7a15..00000000
--- a/web/l10n/bg.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Зареждане...",
- "sharedHide": "Скрий",
- "sharedSave": "Запази",
- "sharedUpload": "Upload",
- "sharedSet": "Настрой",
- "sharedCancel": "Отказ",
- "sharedCopy": "Copy",
- "sharedAdd": "Добави",
- "sharedEdit": "Редактирай",
- "sharedRemove": "Премахни",
- "sharedRemoveConfirm": "Потвърди премахването!",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "км",
- "sharedMi": "мил",
- "sharedNmi": "Морска миля",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "възел",
- "sharedKmh": "км/ч",
- "sharedMph": "мил/ч",
- "sharedHour": "Час",
- "sharedMinute": "Минута",
- "sharedSecond": "Секунда",
- "sharedDays": "дни",
- "sharedHours": "часа",
- "sharedMinutes": "мин.",
- "sharedDecimalDegrees": "Градуси",
- "sharedDegreesDecimalMinutes": "Градуси, минути",
- "sharedDegreesMinutesSeconds": "Градуси, минути, секунди",
- "sharedName": "Име",
- "sharedDescription": "Описание",
- "sharedSearch": "Търси",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Зона",
- "sharedGeofences": "Зони",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Известия",
- "sharedNotification": "Известиe",
- "sharedAttributes": "Параметри",
- "sharedAttribute": "Параметър",
- "sharedDrivers": "Шофьори",
- "sharedDriver": "Шофьор",
- "sharedArea": "Район",
- "sharedSound": "Тон на известията",
- "sharedType": "Тип",
- "sharedDistance": "Разстояние",
- "sharedHourAbbreviation": "ч.",
- "sharedMinuteAbbreviation": "мин.",
- "sharedSecondAbbreviation": "сек.",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "лит.",
- "sharedGallonAbbreviation": "гал.",
- "sharedLiter": "Литър",
- "sharedImpGallon": "Британски галон",
- "sharedUsGallon": "Американски галон",
- "sharedLiterPerHourAbbreviation": "л/ч",
- "sharedGetMapState": "Състояние на картата",
- "sharedComputedAttribute": "Изчислен параметър",
- "sharedComputedAttributes": "Изчислени параметри",
- "sharedCheckComputedAttribute": "Провери изчисления параметър",
- "sharedExpression": "Израз",
- "sharedDevice": "Устройство",
- "sharedTest": "Test",
- "sharedTestNotification": "Изпрати пробно известие",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Календар",
- "sharedCalendars": "Календари",
- "sharedFile": "Архив",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Избери архив",
- "sharedPhone": "Телефон",
- "sharedRequired": "Задължително",
- "sharedPreferences": "Предпочитания",
- "sharedPermissions": "Разрешения",
- "sharedConnections": "Connections",
- "sharedExtra": "Допълнително",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Условие",
- "sharedTypeNumber": "Номер",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Часова зона",
- "sharedInfoTitle": "Инфо",
- "sharedSavedCommand": "Запазена команда",
- "sharedSavedCommands": "Запазени команди",
- "sharedNew": "Нова команда",
- "sharedShowAddress": "Покажи адреса",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Блокиран",
- "sharedMaintenance": "Обслужване",
- "sharedDeviceAccumulators": "Акумулатор",
- "sharedAlarms": "Аларми",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Ограничение на скоростта",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Дължина на линията",
- "attributeReportIgnoreOdometer": "Отчет: Игнорирай километража",
- "attributeWebReportColor": "Цвят на Отчета",
- "attributeDevicePassword": "Парола на устройството",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Обработка: копиране на сензори",
- "attributeColor": "Цвят",
- "attributeWebLiveRouteLength": "Дължина на дирята",
- "attributeWebSelectZoom": "Приближи избраното",
- "attributeWebMaxZoom": "Максимално приближение",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Поща: SMTP хост",
- "attributeMailSmtpPort": "Поща: SMTP порт",
- "attributeMailSmtpStarttlsEnable": "Поща: SMTP STARTTLS активирай",
- "attributeMailSmtpStarttlsRequired": "Поща: SMTP STARTTLS задължително",
- "attributeMailSmtpSslEnable": "Поща: SMTP SSL активирай",
- "attributeMailSmtpSslTrust": "Поща: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Поща: SMTP SSL протокол",
- "attributeMailSmtpFrom": "Поща: SMTP от",
- "attributeMailSmtpAuth": "Поща: SMTP Auth активирай",
- "attributeMailSmtpUsername": "Поща: SMTP потребител",
- "attributeMailSmtpPassword": "Поща: SMTP парола",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "Деактивирай Събития",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "Деактивирай Шофьори",
- "attributeUiDisableComputedAttributes": "Деактивирай изчислените параметри",
- "attributeUiDisableCalendars": "Деактивирай Календара",
- "attributeUiDisableMaintenance": "Деактивирай Обслужване",
- "attributeUiHidePositionAttributes": "Скрий атрибутите на позицията",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Грешка",
- "errorGeneral": "Невалидни параметри",
- "errorConnection": "Грешка във връзката",
- "errorSocket": "Грешка в WebSocket връзката",
- "errorZero": "Не може да бъде нула",
- "userEmail": "Пощенска кутия",
- "userPassword": "Парола",
- "userAdmin": "Администратор",
- "userRemember": "Запомни",
- "userExpirationTime": "Изтичане",
- "userDeviceLimit": "Макс. брой у-ва",
- "userUserLimit": "Макс. брой потребители",
- "userDeviceReadonly": "Заключи устройството",
- "userLimitCommands": "Ограничи командите",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Жетон",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Вход",
- "loginLanguage": "Език",
- "loginReset": "Reset Password",
- "loginRegister": "Регистрация",
- "loginLogin": "Вход",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Грешен потребител или парола",
- "loginCreated": "Регистриран нов потребител",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Изход",
- "loginLogo": "Лого",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Устройства и състояние",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Обекти",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Идентификатор",
- "deviceModel": "Модел",
- "deviceContact": "Контакт",
- "deviceCategory": "Категория",
- "deviceLastUpdate": "Последно обновяване",
- "deviceCommand": "Команда",
- "deviceFollow": "Следвай",
- "deviceTotalDistance": "Общ пробег",
- "deviceStatus": "Статус",
- "deviceStatusOnline": "На линия",
- "deviceStatusOffline": "Няма връзка",
- "deviceStatusUnknown": "Неизвестен",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Група",
- "groupParent": "Група",
- "groupNoGroup": "Без група",
- "settingsTitle": "Настройки",
- "settingsUser": "Профил",
- "settingsGroups": "Групи",
- "settingsServer": "Сървър",
- "settingsUsers": "Потребители",
- "settingsDistanceUnit": "Мерна единица за разстояние",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Мерна единица за скорост",
- "settingsVolumeUnit": "Мерна единица за обем",
- "settingsTwelveHourFormat": "12 часов формат",
- "settingsCoordinateFormat": "Формат на координатите",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Отчети",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Устройство",
- "reportGroup": "Група",
- "reportFrom": "От",
- "reportTo": "До",
- "reportShow": "Покажи",
- "reportClear": "Изчисти",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Валидност",
- "positionAccuracy": "Точност",
- "positionLatitude": "Географска Ширина",
- "positionLongitude": "Географска Дължина",
- "positionAltitude": "Надморска височина",
- "positionSpeed": "Скорост",
- "positionCourse": "Посока",
- "positionAddress": "Адрес",
- "positionProtocol": "Протокол",
- "positionDistance": "Разстояние",
- "positionRpm": "Обороти",
- "positionFuel": "Гориво",
- "positionPower": "Захранване",
- "positionBattery": "Батерия",
- "positionRaw": "Необработен",
- "positionIndex": "Индекс",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Сателити",
- "positionSatVisible": "Видими сателити",
- "positionRssi": "GSM сигнал",
- "positionGps": "ДжиПиЕс",
- "positionRoaming": "Роуминг",
- "positionEvent": "Събитие",
- "positionAlarm": "Аларма",
- "positionStatus": "Статус",
- "positionOdometer": "Километраж",
- "positionServiceOdometer": "Служебен километраж",
- "positionTripOdometer": "Километраж пътуване",
- "positionHours": "Часове",
- "positionSteps": "Стъпки",
- "positionInput": "Входни данни",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Изходящи данни",
- "positionBatteryLevel": "Батерия %",
- "positionFuelConsumption": "Разход на гориво",
- "positionRfid": "RFID",
- "positionVersionFw": "Фърмуеър версия",
- "positionVersionHw": "Версия на апаратурата",
- "positionIgnition": "На контакт",
- "positionFlags": "Флагове",
- "positionCharge": "Зареждане",
- "positionIp": "АйПи",
- "positionArchive": "Архив",
- "positionVin": "VIN",
- "positionApproximate": "Приблизително",
- "positionThrottle": "Газ",
- "positionMotion": "В движение",
- "positionArmed": "Активиран",
- "positionAcceleration": "Ускорение",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Температура на устройството",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Оператор",
- "positionCommand": "Команда",
- "positionBlocked": "Блокиран",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD скорост",
- "positionObdOdometer": "OBD километраж",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Идентификатор на шофьора",
- "positionCard": "Card",
- "positionImage": "Изображение",
- "positionVideo": "Video",
- "positionAudio": "Звук",
- "serverTitle": "Настройки на сървъра",
- "serverZoom": "Приближение",
- "serverRegistration": "Регистрация",
- "serverReadonly": "Ограничени права",
- "serverForceSettings": "Наложи настройките",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Карта",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Карта",
- "mapCustom": "По избор (XYZ)",
- "mapCustomArcgis": "По избор (ArcGIS)",
- "mapCustomLabel": "Потребителска карта",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Ключ за Bing Maps",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing карта хибрид",
- "mapBaidu": "Байду",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex карта",
- "mapYandexSat": "Yandex сателитна карта ",
- "mapWikimedia": "Уикимедия",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Многоъгълник",
- "mapShapeCircle": "Кръг",
- "mapShapePolyline": "Линия",
- "mapLiveRoutes": "Маршрут",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI слой",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Състояние",
- "stateName": "Параметър",
- "stateValue": "Стойност",
- "commandTitle": "Команда",
- "commandSend": "Изпрати",
- "commandSent": "Командата изпратена",
- "commandQueued": "Командата на изчакване",
- "commandUnit": "Мерна ед.",
- "commandCustom": "Персонализирана команда",
- "commandDeviceIdentification": "Идентификатор на устройството",
- "commandPositionSingle": "Единичен доклад",
- "commandPositionPeriodic": "Периодичен доклад",
- "commandPositionStop": "Спри доклада",
- "commandEngineStop": "Спри двигателя",
- "commandEngineResume": "Стартирай двигателя",
- "commandAlarmArm": "Активирай Аларма",
- "commandAlarmDisarm": "Деактивирай Аларма",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Задай часова зона",
- "commandRequestPhoto": "Изискай снимка",
- "commandPowerOff": "Изключи устройството",
- "commandRebootDevice": "Рестартирай устройството",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Изпрати SMS",
- "commandSendUssd": "Изпрати USSD",
- "commandSosNumber": "Задай SOS номер",
- "commandSilenceTime": "Задай \"Тих час\"",
- "commandSetPhonebook": "Задай тел. указател",
- "commandVoiceMessage": "Гласово съобщение",
- "commandOutputControl": "Изходен контрол",
- "commandVoiceMonitoring": "Гласово наблюдение",
- "commandSetAgps": "Настрой AGPS",
- "commandSetIndicator": "Настрой индикатор",
- "commandConfiguration": "Конфигурация",
- "commandGetVersion": "Получи версията",
- "commandFirmwareUpdate": "Обнови фърмуеър",
- "commandSetConnection": "Настрой връзката",
- "commandSetOdometer": "Настрой километража",
- "commandGetModemStatus": "Виж състоянието на модема",
- "commandGetDeviceStatus": "Виж състоянието на устройството",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Честота",
- "commandTimezone": "Компенсация на часовата зона",
- "commandMessage": "Съобщение",
- "commandRadius": "Радиус",
- "commandEnable": "Активирай",
- "commandData": "Данни",
- "commandIndex": "Индекс",
- "commandPhone": "Телефонен номер",
- "commandServer": "Сървър",
- "commandPort": "Порт",
- "eventAll": "Всички събития",
- "eventDeviceOnline": "Статус на линия",
- "eventDeviceUnknown": "Статус неизвестен",
- "eventDeviceOffline": "Статус без връзка",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Обектът в движение",
- "eventDeviceStopped": "Обектът спря",
- "eventDeviceOverspeed": "Ограничението на скоростта превишено",
- "eventDeviceFuelDrop": "Спад на горивото",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Резултат от командата",
- "eventGeofenceEnter": "Влизане в зона",
- "eventGeofenceExit": "Излизане от зона",
- "eventAlarm": "Аларма",
- "eventIgnitionOn": "Запалването включено",
- "eventIgnitionOff": "Запалването изключено",
- "eventMaintenance": "Необходимо е обслужване",
- "eventTextMessage": "Получен SMS",
- "eventDriverChanged": "Шофьорът се смени",
- "eventMedia": "Media",
- "eventsScrollToLast": "Отиди на последния",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Общи",
- "alarmSos": "SOS",
- "alarmVibration": "Вибрация",
- "alarmMovement": "Движение",
- "alarmLowspeed": "Ниска скорост",
- "alarmOverspeed": "Превишена скорост",
- "alarmFallDown": "Падане",
- "alarmLowPower": "Ниска мощност",
- "alarmLowBattery": "Слаба батерия",
- "alarmFault": "Повреда",
- "alarmPowerOff": "Захранването изключено",
- "alarmPowerOn": "Захранването включено",
- "alarmDoor": "Врата",
- "alarmLock": "Заключи",
- "alarmUnlock": "Отключи",
- "alarmGeofence": "Зона",
- "alarmGeofenceEnter": "Влизане в зона",
- "alarmGeofenceExit": "Излизане от зона",
- "alarmGpsAntennaCut": "GPS антената откачена",
- "alarmAccident": "Инцидент",
- "alarmTow": "Дърпане",
- "alarmIdle": "В покой",
- "alarmHighRpm": "Високи обороти",
- "alarmHardAcceleration": "Рязко ускорение",
- "alarmHardBraking": "Рязко спиране",
- "alarmHardCornering": "Рязко завиване",
- "alarmLaneChange": "Смяна на лентите",
- "alarmFatigueDriving": "Уморен водач",
- "alarmPowerCut": "Захранването прекъснато",
- "alarmPowerRestored": "Захранването възстановено",
- "alarmJamming": "Заглушаване",
- "alarmTemperature": "Температура",
- "alarmParking": "Паркиране",
- "alarmBonnet": "Капак",
- "alarmFootBrake": "Спирачен педал",
- "alarmFuelLeak": "Теч на гориво",
- "alarmTampering": "Намеса ",
- "alarmRemoving": "Премахване",
- "notificationType": "Тип на известието",
- "notificationAlways": "Всички устройства",
- "notificationNotificators": "Канали",
- "notificatorCommand": "Command",
- "notificatorWeb": "Интернет",
- "notificatorMail": "Поща",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Маршрут",
- "reportEvents": "Събития",
- "reportTrips": "Пътувания",
- "reportStops": "Престой",
- "reportSummary": "Общо",
- "reportDaily": "Daily Summary",
- "reportChart": "Графика",
- "reportConfigure": "Конфигуриране",
- "reportEventTypes": "Тип събития",
- "reportChartType": "Тип на графиката",
- "reportShowMarkers": "Покажи маркери",
- "reportExport": "Експорт",
- "reportEmail": "Имейл отчет",
- "reportSchedule": "Schedule",
- "reportPeriod": "Период",
- "reportCustom": "По избор",
- "reportToday": "Днес",
- "reportYesterday": "Вчера",
- "reportThisWeek": "Тази седмица",
- "reportPreviousWeek": "Предната седмица",
- "reportThisMonth": "Този месец",
- "reportPreviousMonth": "Предният месец",
- "reportDeviceName": "Име на обект",
- "reportAverageSpeed": "Средна скорост",
- "reportMaximumSpeed": "Максимална скорост",
- "reportEngineHours": "Машиночас",
- "reportDuration": "Продължителност",
- "reportStartDate": "Start Date",
- "reportStartTime": "Начален час",
- "reportStartAddress": "Начален адрес",
- "reportEndTime": "Краен час",
- "reportEndAddress": "Краен адрес",
- "reportSpentFuel": "Изразходвано гориво",
- "reportStartOdometer": "Одометър Старт",
- "reportEndOdometer": "Одометър Стоп",
- "statisticsTitle": "Статистики",
- "statisticsCaptureTime": "Дата",
- "statisticsActiveUsers": "Активни потребители",
- "statisticsActiveDevices": "Активни устройства",
- "statisticsRequests": "Повиквания",
- "statisticsMessagesReceived": "Приети съобщения",
- "statisticsMessagesStored": "Запазени съобщения",
- "statisticsGeocoder": "Запитвания за адрес",
- "statisticsGeolocation": "Запитвания за позиция",
- "categoryArrow": "Стрелка",
- "categoryDefault": "По подразбиране",
- "categoryAnimal": "Животно",
- "categoryBicycle": "Колело",
- "categoryBoat": "Лодка",
- "categoryBus": "Автобус",
- "categoryCar": "Кола",
- "categoryCamper": "Camper",
- "categoryCrane": "Кран",
- "categoryHelicopter": "Въртолет",
- "categoryMotorcycle": "Мотор",
- "categoryOffroad": "Джип",
- "categoryPerson": "Човек",
- "categoryPickup": "Пикап",
- "categoryPlane": "Самолет",
- "categoryShip": "Кораб",
- "categoryTractor": "Трактор",
- "categoryTrain": "Влак",
- "categoryTram": "Трамвай",
- "categoryTrolleybus": "Тролейбус",
- "categoryTruck": "Камион",
- "categoryVan": "Ван",
- "categoryScooter": "Скутер",
- "maintenanceStart": "Старт",
- "maintenancePeriod": "Период"
-} \ No newline at end of file
diff --git a/web/l10n/bn.json b/web/l10n/bn.json
deleted file mode 100644
index 79d6c3d0..00000000
--- a/web/l10n/bn.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "লোড হচ্ছে ...",
- "sharedHide": "লুকিয়ে রাখুন",
- "sharedSave": " সংরক্ষণ করুন",
- "sharedUpload": "Upload",
- "sharedSet": "স্থাপন করুন",
- "sharedCancel": " বাতিল করুন",
- "sharedCopy": "Copy",
- "sharedAdd": "যুক্ত করুন",
- "sharedEdit": "সম্পাদন করুন",
- "sharedRemove": "অপসারণ করুন",
- "sharedRemoveConfirm": "আইটেম অপসারণ?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "কিমি",
- "sharedMi": "মাইল",
- "sharedNmi": "নটিক্যাল মাইল",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "কিলোনটিক্যাল",
- "sharedKmh": "কিমি / ঘঃ",
- "sharedMph": "mph",
- "sharedHour": "ঘন্টা",
- "sharedMinute": "মিনিট",
- "sharedSecond": "সেকেন্ড",
- "sharedDays": "দিন",
- "sharedHours": "ঘন্টা",
- "sharedMinutes": "মিনিট",
- "sharedDecimalDegrees": "দশমিক ডিগ্রী",
- "sharedDegreesDecimalMinutes": "ডিগ্রি দশমিক মিনিট",
- "sharedDegreesMinutesSeconds": "ডিগ্রি মিনিট সেকেন্ড",
- "sharedName": "নাম",
- "sharedDescription": "বিবরণ / বর্ণনা",
- "sharedSearch": "অনুসন্ধান / খোঁজা",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "জিওফেন্স / ভৌগোলিক বেষ্টনী",
- "sharedGeofences": "জিওফেন্স / ভৌগোলিক বেষ্টনী",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "অধিসূচনা সামুহ",
- "sharedNotification": "অধিসূচনা",
- "sharedAttributes": "বৈশিষ্ট্যাবলী / গুণাবলী",
- "sharedAttribute": "বৈশিষ্ট্যাবলী / গুণাবলী",
- "sharedDrivers": "চালক সমুহ",
- "sharedDriver": "চালক",
- "sharedArea": "এলাকা",
- "sharedSound": "অধিসূচনা শব্দ",
- "sharedType": "ধরন",
- "sharedDistance": "দূরত্ব",
- "sharedHourAbbreviation": "ঘ",
- "sharedMinuteAbbreviation": "মি",
- "sharedSecondAbbreviation": "সে",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "গ্যালন",
- "sharedLiter": "লিটার",
- "sharedImpGallon": "ইম্পেরিয়াল গ্যালন",
- "sharedUsGallon": "আমেরিকি গ্যালন",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "মানচিত্রের অবস্থা",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "অভিব্যক্তি",
- "sharedDevice": "ডিভাইস",
- "sharedTest": "Test",
- "sharedTestNotification": "Send Test Notification",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "পঞ্জিকা",
- "sharedCalendars": "পঞ্জিকাগুলি",
- "sharedFile": "File",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Select File",
- "sharedPhone": "ফোন",
- "sharedRequired": "অবশ্যক",
- "sharedPreferences": "পছন্দসমূহ",
- "sharedPermissions": "অনুমতিসমূহ",
- "sharedConnections": "Connections",
- "sharedExtra": "অতিরিক্ত",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "স্ট্রিং",
- "sharedTypeNumber": "নম্বর",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "টাইমজোন",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "ঠিকানা দেখান",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "ডিভাইসের গতি সীমা",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Report: Ignore Odometer",
- "attributeWebReportColor": "ওয়েব: রিপোর্টের রঙ",
- "attributeDevicePassword": "ডিভাইস পাসওয়ার্ড",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "রং",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "ত্রুটি",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "সংযোগ ত্রুটি",
- "errorSocket": "ওয়েব সকেট সংযোগ ত্রুটি",
- "errorZero": "Can't be zero",
- "userEmail": "ইমেইল",
- "userPassword": "পাসওয়ার্ড",
- "userAdmin": "অ্যাডমিন",
- "userRemember": "মনে রাখো",
- "userExpirationTime": "Expiration",
- "userDeviceLimit": "ডিভাইসের গতি সীমা",
- "userUserLimit": "ব্যবহারকারীর সীমা",
- "userDeviceReadonly": "ডিভাইস রিড অনলি",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "টোকেন",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "লগইন",
- "loginLanguage": "ভাষা",
- "loginReset": "Reset Password",
- "loginRegister": "নিবন্ধন",
- "loginLogin": "লগইন",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "ভুল ইমেল এড্রেস বা পাসওয়ার্ড",
- "loginCreated": "নতুন ব্যবহারকারী নিবন্ধিত হয়েছে",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "লগ আউট",
- "loginLogo": "লোগো",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "ডিভাইস ও অবস্থা",
- "deviceSelected": "Selected Device",
- "deviceTitle": "ডিভাইস",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifier",
- "deviceModel": "মডেল",
- "deviceContact": "যোগাযোগ",
- "deviceCategory": "বিভাগ",
- "deviceLastUpdate": "সর্বশেষ আপডেট",
- "deviceCommand": "কমান্ড",
- "deviceFollow": "Follow",
- "deviceTotalDistance": "সম্পুর্ণ দুরত্ব",
- "deviceStatus": "অবস্থা",
- "deviceStatusOnline": "অনলাইন",
- "deviceStatusOffline": "অফলাইন",
- "deviceStatusUnknown": "অজানা",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "গ্রুপ",
- "groupParent": "গ্রুপ",
- "groupNoGroup": "No Group",
- "settingsTitle": "সেটিংস",
- "settingsUser": "অ্যাকাউন্ট",
- "settingsGroups": "Groups",
- "settingsServer": "সার্ভার",
- "settingsUsers": "Users",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "12-hour Format",
- "settingsCoordinateFormat": "Coordinates Format",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Reports",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "ডিভাইস",
- "reportGroup": "গ্রুপ",
- "reportFrom": "From",
- "reportTo": "To",
- "reportShow": "দেখাও",
- "reportClear": "পরিষ্কার",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Valid",
- "positionAccuracy": "সঠিকতা",
- "positionLatitude": "অক্ষাংশ",
- "positionLongitude": "দ্রাঘিমাংশ",
- "positionAltitude": "উচ্চতা",
- "positionSpeed": "গতি",
- "positionCourse": "Course",
- "positionAddress": "ঠিকানা",
- "positionProtocol": "প্রোটোকল",
- "positionDistance": "দূরত্ব",
- "positionRpm": "RPM",
- "positionFuel": "জ্বালানি",
- "positionPower": "Power",
- "positionBattery": "ব্যাটারি",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS/জিপিএস",
- "positionRoaming": "Roaming",
- "positionEvent": "ঘটনা",
- "positionAlarm": "অ্যালার্ম / সংকেত",
- "positionStatus": "অবস্থা",
- "positionOdometer": "ওডোমিটার",
- "positionServiceOdometer": "সার্ভিস ওডোমিটার",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "ঘন্টা",
- "positionSteps": "Steps",
- "positionInput": "ইনপুট",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "আউটপুট",
- "positionBatteryLevel": "ব্যাটারি স্তর",
- "positionFuelConsumption": "জ্বালানি খরচ",
- "positionRfid": "RFID",
- "positionVersionFw": "ফার্মওয়্যার সংস্করণ",
- "positionVersionHw": "হার্ডওয়্যার সংস্করণ",
- "positionIgnition": "ইগনিশন",
- "positionFlags": "Flags",
- "positionCharge": "চার্জ",
- "positionIp": "IP",
- "positionArchive": "আর্কাইভ / সংরক্ষাণাগার",
- "positionVin": "VIN",
- "positionApproximate": "আনুমানিক",
- "positionThrottle": "থ্রটল / নির্গমন নিয়ন্ত্রণ",
- "positionMotion": "গতি",
- "positionArmed": "রক্ষিত করা",
- "positionAcceleration": "ত্বরণ",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "ডিভাইসের তাপমাত্রা",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "কমান্ড",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "সার্ভার সেটিংস ",
- "serverZoom": "জুম্",
- "serverRegistration": "নিবন্ধন",
- "serverReadonly": "রিড অনলি",
- "serverForceSettings": "ফোর্স সেটিংস",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "মানচিত্র",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "মানচিত্র স্তর",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "বহুভুজ",
- "mapShapeCircle": "বৃত্ত / বৃত্তাকার",
- "mapShapePolyline": "পলিলাইন",
- "mapLiveRoutes": "Live Routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "State",
- "stateName": "বৈশিষ্ট্যাবলী / গুণাবলী",
- "stateValue": "মান",
- "commandTitle": "কমান্ড",
- "commandSend": "পাঠান",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "ইউনিট",
- "commandCustom": "Custom command",
- "commandDeviceIdentification": "ডিভাইস সনাক্তকরণ",
- "commandPositionSingle": "একক রিপোর্টিং",
- "commandPositionPeriodic": "পর্যায়ক্রমিক রিপোর্ট",
- "commandPositionStop": "রিপোর্টিং বন্ধ করা",
- "commandEngineStop": "ইঞ্জিন বন্ধ",
- "commandEngineResume": "ইঞ্জিন পুনরায় চালু করুন",
- "commandAlarmArm": "রক্ষিত করার অ্যালার্ম / সংকেত",
- "commandAlarmDisarm": "অরক্ষিত করার অ্যালার্ম / সংকেত",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "টাইমজোন সেট করুন",
- "commandRequestPhoto": "Request Photo",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "রিবুট ডিভাইস",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Send SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "Set SOS Number",
- "commandSilenceTime": "Set Silence Time",
- "commandSetPhonebook": "Set Phonebook",
- "commandVoiceMessage": "ভয়েস বার্তা",
- "commandOutputControl": "Output Control",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Set Indicator",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "ফ্রিকোয়েন্সি",
- "commandTimezone": "Timezone Offset",
- "commandMessage": "বার্তা",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "উপাত্ত / ডেটা",
- "commandIndex": "Index",
- "commandPhone": "ফোন নম্বর",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "সকল ঘটনা",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Command result",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "রক্ষণাবেক্ষণ প্রয়োজন",
- "eventTextMessage": "Text message received",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Type of Notification",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Route",
- "reportEvents": "Events",
- "reportTrips": "Trips",
- "reportStops": "Stops",
- "reportSummary": "Summary",
- "reportDaily": "Daily Summary",
- "reportChart": "Chart",
- "reportConfigure": "কনফিগার",
- "reportEventTypes": "Event Types",
- "reportChartType": "Chart Type",
- "reportShowMarkers": "মার্কার দেখাও",
- "reportExport": "Export",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "ডিভাইসের নাম",
- "reportAverageSpeed": "Average Speed",
- "reportMaximumSpeed": "Maximum Speed",
- "reportEngineHours": "Engine Hours",
- "reportDuration": "Duration",
- "reportStartDate": "Start Date",
- "reportStartTime": "শুরুর সময় ",
- "reportStartAddress": "শুরুর ঠিকানা",
- "reportEndTime": "শেষ সময়",
- "reportEndAddress": "শেষ ঠিকানা",
- "reportSpentFuel": "ব্যয়িত জ্বালানি",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "পরিসংখ্যান",
- "statisticsCaptureTime": "সময় ক্যাপচার",
- "statisticsActiveUsers": "সক্রিয় ব্যবহারকারীগণ",
- "statisticsActiveDevices": "সক্রিয় ডিভাইস",
- "statisticsRequests": "রিকোয়েস্টসমূহ",
- "statisticsMessagesReceived": "Messages Received",
- "statisticsMessagesStored": "Messages Stored",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "তীর",
- "categoryDefault": "ডিফল্ট",
- "categoryAnimal": "পশু",
- "categoryBicycle": "সাইকেল",
- "categoryBoat": "নৌকা",
- "categoryBus": "বাস",
- "categoryCar": "কার",
- "categoryCamper": "Camper",
- "categoryCrane": "ক্রেন",
- "categoryHelicopter": "হেলিকপ্টার",
- "categoryMotorcycle": "মোটরসাইকেল",
- "categoryOffroad": "Offroad",
- "categoryPerson": "ব্যক্তি",
- "categoryPickup": "পিকআপ",
- "categoryPlane": "প্লেন",
- "categoryShip": "জাহাজ",
- "categoryTractor": "ট্র্যাক্টর",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "ট্রাক",
- "categoryVan": "ভ্যান",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/ca.json b/web/l10n/ca.json
deleted file mode 100644
index 6ac0b872..00000000
--- a/web/l10n/ca.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Carregant…",
- "sharedHide": "Ocultar",
- "sharedSave": "Guardar",
- "sharedUpload": "Carrega",
- "sharedSet": "Establir",
- "sharedCancel": "Cancel·lar",
- "sharedCopy": "Copy",
- "sharedAdd": "Afegir",
- "sharedEdit": "Editar",
- "sharedRemove": "Eliminar",
- "sharedRemoveConfirm": "Eliminar element?",
- "sharedNoData": "Sense dades",
- "sharedSubject": "Subject",
- "sharedYes": "Sí",
- "sharedNo": "No",
- "sharedKm": "Km",
- "sharedMi": "MI",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "Nusos",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Hora",
- "sharedMinute": "Minut",
- "sharedSecond": "Segon",
- "sharedDays": "Dies",
- "sharedHours": "Hores",
- "sharedMinutes": "minuts",
- "sharedDecimalDegrees": "Graus amb decimals",
- "sharedDegreesDecimalMinutes": "Graus i Minuts amb decimals",
- "sharedDegreesMinutesSeconds": "Graus Minuts i Segons",
- "sharedName": "Nom",
- "sharedDescription": "Descripció",
- "sharedSearch": "Cercar",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geo-Zona",
- "sharedGeofences": "Geo-Zones",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Notificacions",
- "sharedNotification": "Notificació",
- "sharedAttributes": "Atributs",
- "sharedAttribute": "Atribut",
- "sharedDrivers": "Conductors",
- "sharedDriver": "Conductor",
- "sharedArea": "Àrea",
- "sharedSound": "So de notificació",
- "sharedType": "Tipus",
- "sharedDistance": "Distància",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "g",
- "sharedLiter": "Litre",
- "sharedImpGallon": "Galó Imp.",
- "sharedUsGallon": "Galó U.S.",
- "sharedLiterPerHourAbbreviation": "L/h",
- "sharedGetMapState": "Obtenir Estat del Mapa",
- "sharedComputedAttribute": "Atribut calculat",
- "sharedComputedAttributes": "Atributs calculats",
- "sharedCheckComputedAttribute": "Revisar atribut calculat",
- "sharedExpression": "Expressió",
- "sharedDevice": "Dispositiu",
- "sharedTest": "Prova",
- "sharedTestNotification": "Enviar notificació de prova",
- "sharedTestNotificators": "Canals de prova",
- "sharedTestExpression": "Prova d'\\expressió",
- "sharedCalendar": "Calendari",
- "sharedCalendars": "Calendaris",
- "sharedFile": "Arxiu",
- "sharedSearchDevices": "Buscar Dispositius",
- "sharedSortBy": "Ordenar per",
- "sharedFilterMap": "Filtrar en el Mapa",
- "sharedSelectFile": "Seleccioni arxiu",
- "sharedPhone": "Telèfon",
- "sharedRequired": "Obligatori",
- "sharedPreferences": "Preferències",
- "sharedPermissions": "Permisos",
- "sharedConnections": "Connexions",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primari",
- "sharedSecondary": "Secondari",
- "sharedTypeString": "Cadena",
- "sharedTypeNumber": "Número",
- "sharedTypeBoolean": "Booleà",
- "sharedTimezone": "Zona Horària",
- "sharedInfoTitle": "Informació",
- "sharedSavedCommand": "Comanda guardada",
- "sharedSavedCommands": "Comandes guardades",
- "sharedNew": "Nou…",
- "sharedShowAddress": "Mostrar carrer",
- "sharedShowDetails": "Més detalls",
- "sharedDisabled": "Deshabilitat",
- "sharedMaintenance": "Manteniments",
- "sharedDeviceAccumulators": "Acumulador",
- "sharedAlarms": "Alarmes",
- "sharedLocation": "Ubicació",
- "sharedImport": "Importar",
- "sharedColumns": "Columnes",
- "sharedDropzoneText": "Arrossegueu i deixeu anar un fitxer aquí o feu clic",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrència",
- "calendarOnce": "Una vegada",
- "calendarDaily": "Diari",
- "calendarWeekly": "Setmanal",
- "calendarMonthly": "Mensual",
- "calendarDays": "Dies",
- "calendarSunday": "Diumenge",
- "calendarMonday": "Dilluns",
- "calendarTuesday": "Dimarts",
- "calendarWednesday": "Dimecres",
- "calendarThursday": "Dijous",
- "calendarFriday": "Divendres",
- "calendarSaturday": "Dissabte",
- "attributeShowGeofences": "Mostra tanques geogràfiques",
- "attributeSpeedLimit": "Límit de velocitat",
- "attributeFuelDropThreshold": "Llindar de caiguda de combustible",
- "attributeFuelIncreaseThreshold": "Llindar d\\\\'augment del combustible",
- "attributePolylineDistance": "Distància de polilínea",
- "attributeReportIgnoreOdometer": "Informe: Ignorar el odòmetre",
- "attributeWebReportColor": "Web: Color de l\\'informe",
- "attributeDevicePassword": "Contrasenya de dispositiu",
- "attributeDeviceImage": "Imatge del dispositiu",
- "attributeDeviceInactivityStart": "Inici d\\'inactivitat del dispositiu",
- "attributeDeviceInactivityPeriod": "Període de inactivitat del dispositiu",
- "attributeProcessingCopyAttributes": "Processant: Còpia dels atributs",
- "attributeColor": "Color",
- "attributeWebLiveRouteLength": "Web: Longitud de la ruta en directe",
- "attributeWebSelectZoom": "Web: fer zoom al seleccionar",
- "attributeWebMaxZoom": "Web: Zoom màxim",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Correu: Servidor SMTP",
- "attributeMailSmtpPort": "Correu: Port SMTP",
- "attributeMailSmtpStarttlsEnable": "Correu: Habilitar SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "Correu: SMTP STARTTLS requerit",
- "attributeMailSmtpSslEnable": "Correu: Habilitar SMTP SSL",
- "attributeMailSmtpSslTrust": "Correu: SMTP SSL de confiança",
- "attributeMailSmtpSslProtocols": "Correu: SMTP SSL protocols",
- "attributeMailSmtpFrom": "Correu: SMTP desde",
- "attributeMailSmtpAuth": "Correu: Habilitar autenticació SMTP",
- "attributeMailSmtpUsername": "Correu: Nom d\\'usuari SMTP",
- "attributeMailSmtpPassword": "Correu: Contrasenya SMTP",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Deshabilitar Grups",
- "attributeUiDisableEvents": "UI: Deshabilitar esdeveniments",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Deshabilitar Conductors",
- "attributeUiDisableComputedAttributes": "UI: Deshabilitar Atributs calculats",
- "attributeUiDisableCalendars": "UI: Deshabilitar Calendari",
- "attributeUiDisableMaintenance": "UI: Deshabilitar Manteniment",
- "attributeUiHidePositionAttributes": "UI: Ocultar Atributs de Posició",
- "attributeUiDisableLoginLanguage": "UI: Deshabilitar Idioma de inici de sessió",
- "attributeNotificationTokens": "Notificació Tokens",
- "attributePopupInfo": "Informació emergent",
- "errorTitle": "Error",
- "errorGeneral": "Paràmetres no vàlids o fora dels límits",
- "errorConnection": "Error en la connexió",
- "errorSocket": "Error del Web-Socket",
- "errorZero": "No pot ser zero",
- "userEmail": "Email",
- "userPassword": "Contrasenya",
- "userAdmin": "Administrador",
- "userRemember": "Recordar",
- "userExpirationTime": "Caducitat",
- "userDeviceLimit": "Límit de dispositius",
- "userUserLimit": "Límit d\\'usuaris",
- "userDeviceReadonly": "Dispositiu de sòls lectura",
- "userLimitCommands": "Limitar Comandes",
- "userDisableReports": "Deshabilitar Informes",
- "userFixedEmail": "No Email Change",
- "userToken": "Token Accés",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Iniciar sessió",
- "loginLanguage": "Idioma",
- "loginReset": "Reiniciar contrasenya",
- "loginRegister": "Registrar-se",
- "loginLogin": "Iniciar sessió",
- "loginOpenId": "Inicieu sessió amb OpenID",
- "loginFailed": "Email o contrasenya incorrecta",
- "loginCreated": "S'ha registrat un usuari nou",
- "loginResetSuccess": "Comprova el teu email",
- "loginUpdateSuccess": "S'ha creat la nova contrasenya",
- "loginLogout": "Tancar Sessió",
- "loginLogo": "Logotipus",
- "loginTotpCode": "Codi de contrasenya d'un sol ús",
- "loginTotpKey": "Una clau de contrasenya d'un sol ús",
- "devicesAndState": "Dispositius i Estat",
- "deviceSelected": "Dispositiu seleccionat",
- "deviceTitle": "Dispositius",
- "devicePrimaryInfo": "Títol del dispositiu",
- "deviceSecondaryInfo": "Detall del dispositiu",
- "deviceIdentifier": "Identificador",
- "deviceModel": "Model",
- "deviceContact": "Contacte",
- "deviceCategory": "Categoria",
- "deviceLastUpdate": "Última Actualització",
- "deviceCommand": "Comanda",
- "deviceFollow": "Seguir",
- "deviceTotalDistance": "Distància Total",
- "deviceStatus": "Estat",
- "deviceStatusOnline": "En línia",
- "deviceStatusOffline": "Fora de línia",
- "deviceStatusUnknown": "Desconegut",
- "deviceRegisterFirst": "Registreu el vostre primer dispositiu",
- "deviceIdentifierHelp": "IMEI, número de sèrie o un altre identificador. Ha de fer coincidir els informes del dispositiu identificador amb el servidor.",
- "deviceShare": "Compartir dispositiu",
- "groupDialog": "Grup",
- "groupParent": "Grup",
- "groupNoGroup": "Sense grup",
- "settingsTitle": "Preferències",
- "settingsUser": "Compte",
- "settingsGroups": "Grups",
- "settingsServer": "Servidor",
- "settingsUsers": "Usuaris",
- "settingsDistanceUnit": "Unitat de Distància",
- "settingsAltitudeUnit": "Unitat d\\'Altitud",
- "settingsSpeedUnit": "Unitat de Velocitat",
- "settingsVolumeUnit": "Unitat de Volum",
- "settingsTwelveHourFormat": "Format de 12h.",
- "settingsCoordinateFormat": "Format de Coordenades",
- "settingsServerVersion": "Versió del servidor",
- "settingsAppVersion": "Versió de l'App",
- "settingsConnection": "Connexió",
- "settingsDarkMode": "Mode Fosc",
- "settingsTotpEnable": "Habilita la contrasenya d'un sol ús",
- "settingsTotpForce": "Força contrasenya d'un sol ús",
- "settingsServiceWorkerUpdateInterval": "Interval d'actualització del ServiceWorker",
- "settingsUpdateAvailable": "Hi ha una actualització disponible.",
- "settingsSupport": "Support",
- "reportTitle": "Informes",
- "reportScheduled": "Informes programats",
- "reportDevice": "Dispositius",
- "reportGroup": "Grup",
- "reportFrom": "Desde",
- "reportTo": "Fins",
- "reportShow": "Mostrar",
- "reportClear": "Netejar",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Hora registrada",
- "positionDeviceTime": "Hora del Dispositiu",
- "positionServerTime": "Hora del Servidor",
- "positionValid": "Vàlida",
- "positionAccuracy": "Precisió",
- "positionLatitude": "Latitud",
- "positionLongitude": "Longitud",
- "positionAltitude": "Altitud",
- "positionSpeed": "Velocitat",
- "positionCourse": "Rumb",
- "positionAddress": "Adreça",
- "positionProtocol": "Protocol",
- "positionDistance": "Distància",
- "positionRpm": "RPM",
- "positionFuel": "Combustible",
- "positionPower": "Energia",
- "positionBattery": "Bateria",
- "positionRaw": "Cru",
- "positionIndex": "Índex",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satèl·lits",
- "positionSatVisible": "Satèl·lits Visibles",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Esdeveniment",
- "positionAlarm": "Alarma",
- "positionStatus": "Estat",
- "positionOdometer": "Odòmetre",
- "positionServiceOdometer": "Odòmetre de manteniment",
- "positionTripOdometer": "Odòmetre de viatge",
- "positionHours": "Hores",
- "positionSteps": "Passos",
- "positionInput": "Entrada",
- "positionHeartRate": "Freqüència cardíaca",
- "positionOutput": "Sortida",
- "positionBatteryLevel": "Nivell de bateria",
- "positionFuelConsumption": "Consum de combustible",
- "positionRfid": "RFDI",
- "positionVersionFw": "Versió del firmware",
- "positionVersionHw": "Versió del hardware",
- "positionIgnition": "Encès",
- "positionFlags": "Banderes",
- "positionCharge": "Càrrega",
- "positionIp": "IP",
- "positionArchive": "Arxiu",
- "positionVin": "VIN",
- "positionApproximate": "Aproximat",
- "positionThrottle": "Accelerador",
- "positionMotion": "Moviment",
- "positionArmed": "Armat",
- "positionAcceleration": "Acceleració",
- "positionTemp": "Temperatura",
- "positionDeviceTemp": "Temperatura del dispositiu",
- "positionCoolantTemp": "Temperatura del refrigerant",
- "positionOperator": "Operador",
- "positionCommand": "Comanda",
- "positionBlocked": "Blocat",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Velocitat OBD",
- "positionObdOdometer": "Odòmetre OBD",
- "positionDrivingTime": "Temps de conducció",
- "positionDriverUniqueId": "ID única del conductor",
- "positionCard": "Targeta",
- "positionImage": "Imatge",
- "positionVideo": "Video",
- "positionAudio": "Àudio",
- "serverTitle": "Paràmetres del servidor",
- "serverZoom": "Zoom",
- "serverRegistration": "Registre",
- "serverReadonly": "Sòls lectura",
- "serverForceSettings": "Forçar aquests paràmetres",
- "serverAnnouncement": "Mostrar anunci",
- "serverName": "Nom del servidor",
- "serverDescription": "Descripció del servidor",
- "serverColorPrimary": "Color Primari",
- "serverColorSecondary": "Color Secundari",
- "serverLogo": "Imatge del logotip",
- "serverLogoInverted": "Imatge de logotip invertida",
- "serverChangeDisable": "Desactiva el canvi de servidor",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Mapa",
- "mapActive": "Mapes actius",
- "mapOverlay": "Capa sobre el mapa",
- "mapOverlayCustom": "Capa personalitzada",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Capes del Mapa",
- "mapCustom": "Personalitzat (XYZ)",
- "mapCustomArcgis": "Personalitzat (ArcGIS)",
- "mapCustomLabel": "Mapa Personalitzat",
- "mapCarto": "Carto",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Clau Bing Maps",
- "mapBingRoad": "Bing Maps - Carretera",
- "mapBingAerial": "Bing Maps - Aèro",
- "mapBingHybrid": "Bing Maps - Híbrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex",
- "mapYandexSat": "Yandex Satèl·lite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Fosc",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polígon",
- "mapShapeCircle": "Cercle",
- "mapShapePolyline": "Polilínia",
- "mapLiveRoutes": "Rutes en Directe",
- "mapDirection": "Mostra la direcció",
- "mapCurrentLocation": "Ubicació Actual",
- "mapPoiLayer": "Capa POI",
- "mapClustering": "Agrupar Marcadors",
- "mapOnSelect": "Mostrar Mapes en la selecció",
- "mapDefault": "Mapa per defecte",
- "stateTitle": "Estat",
- "stateName": "Paràmetre",
- "stateValue": "Valor",
- "commandTitle": "Comanda",
- "commandSend": "Enviar",
- "commandSent": "Comanda enviat",
- "commandQueued": "Comanda en cua",
- "commandUnit": "Unitat",
- "commandCustom": "Comanda personalitzada",
- "commandDeviceIdentification": "Identificació al Dispositiu",
- "commandPositionSingle": "Informe Únic",
- "commandPositionPeriodic": "Informe Periòdic",
- "commandPositionStop": "Aturar informe",
- "commandEngineStop": "Apagar motor",
- "commandEngineResume": "Desblocar Encès de Motor",
- "commandAlarmArm": "Armar Alarma",
- "commandAlarmDisarm": "Desarmar Alarma",
- "commandAlarmDismiss": "Descartar Alarma",
- "commandSetTimezone": "Establir Zona Horària",
- "commandRequestPhoto": "Sol·licitar Foto",
- "commandPowerOff": "Apagar dispositiu",
- "commandRebootDevice": "Reiniciar dispositiu",
- "commandFactoryReset": "Valors de fàbrica",
- "commandSendSms": "Enviar SMS",
- "commandSendUssd": "Enviar USSD",
- "commandSosNumber": "Establir el número SOS",
- "commandSilenceTime": "Establir horari de silenci",
- "commandSetPhonebook": "Establir contacte",
- "commandVoiceMessage": "Missatge de veu",
- "commandOutputControl": "Control de Sortides",
- "commandVoiceMonitoring": "Monitoratge de Veu",
- "commandSetAgps": "Establir AGPS",
- "commandSetIndicator": "Establir indicador",
- "commandConfiguration": "Configuració",
- "commandGetVersion": "Obtenir Versió",
- "commandFirmwareUpdate": "Actualitzar Firmware",
- "commandSetConnection": "Establir Connexió",
- "commandSetOdometer": "Establir Odòmetre",
- "commandGetModemStatus": "Obtenir Estat del Mòdem",
- "commandGetDeviceStatus": "Obtener Estat del Dispositiu",
- "commandSetSpeedLimit": "Establir Límit de Velocitat",
- "commandModePowerSaving": "Mode Estalvi de Energia",
- "commandModeDeepSleep": "Mode Estalvi d'Energia Profund",
- "commandAlarmGeofence": "Establir Alarma de Geo-Zona",
- "commandAlarmBattery": "Establir Alarma de Bateria",
- "commandAlarmSos": "Establir Alarma de SOS",
- "commandAlarmRemove": "Establir eliminar Alarma",
- "commandAlarmClock": "Establir Alarma d'Hora",
- "commandAlarmSpeed": "Establir Alarma de Velocitat",
- "commandAlarmFall": "Establir Alarma de Caiguda",
- "commandAlarmVibration": "Establir Alarma de Vibració",
- "commandFrequency": "Freqüència",
- "commandTimezone": "Compensació de zona horaria",
- "commandMessage": "Missatge",
- "commandRadius": "Ràdio",
- "commandEnable": "Activat",
- "commandData": "Dades",
- "commandIndex": "Índex",
- "commandPhone": "Número de Telèfon",
- "commandServer": "Servidor",
- "commandPort": "Port",
- "eventAll": "Tots els events",
- "eventDeviceOnline": "Dispositiu en Línia",
- "eventDeviceUnknown": "Dispositiu en estat Desconegut",
- "eventDeviceOffline": "Dispositiu Fora de Línia",
- "eventDeviceInactive": "Dispositiu Inactiu",
- "eventQueuedCommandSent": "Comanda en cua enviada",
- "eventDeviceMoving": "Dispositiu en Moviment",
- "eventDeviceStopped": "Dispositiu Aturat",
- "eventDeviceOverspeed": "Excés del límit de Velocitat",
- "eventDeviceFuelDrop": "Pèrdua de Combustible",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Resultat de la comanda",
- "eventGeofenceEnter": "Entrada a la Geo-Zona",
- "eventGeofenceExit": "Sortida de la Geo-Zona",
- "eventAlarm": "Alarma",
- "eventIgnitionOn": "Ignició ON",
- "eventIgnitionOff": "Ignició OFF",
- "eventMaintenance": "Es requereix manteniment",
- "eventTextMessage": "Missatge de text rebut",
- "eventDriverChanged": "El conductor ha canviat",
- "eventMedia": "Media",
- "eventsScrollToLast": "Desplaçar-se fins l'últim",
- "eventsSoundEvents": "So d'Esdeveniments",
- "eventsSoundAlarms": "So d'Alarma",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibració",
- "alarmMovement": "Moviment",
- "alarmLowspeed": "Baixa Velocitat",
- "alarmOverspeed": "Excés de Velocitat",
- "alarmFallDown": "Alarma de caiguda",
- "alarmLowPower": "Energia baixa",
- "alarmLowBattery": "Bateria Baixa",
- "alarmFault": "Alarma de error",
- "alarmPowerOff": "Apagat",
- "alarmPowerOn": "Encès",
- "alarmDoor": "Porta",
- "alarmLock": "Blocat",
- "alarmUnlock": "Desblocat",
- "alarmGeofence": "Geo-Zona",
- "alarmGeofenceEnter": "El Dispositiu ha entrat a la Geo-Zona",
- "alarmGeofenceExit": "El Dispositiu ha sortit de la Geo-Zona",
- "alarmGpsAntennaCut": "Antena del GPS tallada",
- "alarmAccident": "Accident",
- "alarmTow": "Grua d'arrossegament",
- "alarmIdle": "Repòs",
- "alarmHighRpm": "Revolucions altes",
- "alarmHardAcceleration": "Acceleració brusca",
- "alarmHardBraking": "Frenada extrema",
- "alarmHardCornering": "Gir brusc",
- "alarmLaneChange": "Canvi de carril",
- "alarmFatigueDriving": "Conducció amb fatiga",
- "alarmPowerCut": "Energia desconectada",
- "alarmPowerRestored": "Energia restaurada",
- "alarmJamming": "Interferència",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Aparcament",
- "alarmBonnet": "Capó",
- "alarmFootBrake": "Fre de peu",
- "alarmFuelLeak": "Fuga de combustible",
- "alarmTampering": "Manipulació",
- "alarmRemoving": "Eliminant",
- "notificationType": "Tipus de Notificació",
- "notificationAlways": "Tots els dispositius",
- "notificationNotificators": "Canals",
- "notificatorCommand": "Comanda",
- "notificatorWeb": "Web",
- "notificatorMail": "Correu",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Repetir",
- "reportCombined": "Combinat",
- "reportRoute": "Ruta",
- "reportEvents": "Esdeveniments",
- "reportTrips": "Viatges",
- "reportStops": "Parades",
- "reportSummary": "Resum",
- "reportDaily": "Resum diari",
- "reportChart": "Gràfica",
- "reportConfigure": "Configurar",
- "reportEventTypes": "Tipus d'esdeveniment",
- "reportChartType": "Tipus de gràfica",
- "reportShowMarkers": "Mostrar marcadors",
- "reportExport": "Exportar",
- "reportEmail": "Informe per correu",
- "reportSchedule": "Horari",
- "reportPeriod": "Període",
- "reportCustom": "Personalitzat",
- "reportToday": "Avui",
- "reportYesterday": "Ahir",
- "reportThisWeek": "Setmana Actual",
- "reportPreviousWeek": "Setmana Anterior",
- "reportThisMonth": "Mes Actual",
- "reportPreviousMonth": "Mes Anterior",
- "reportDeviceName": "Nom",
- "reportAverageSpeed": "Velocitat Mitjana",
- "reportMaximumSpeed": "Velocitat Màxima",
- "reportEngineHours": "Hores de Motor",
- "reportDuration": "Durada",
- "reportStartDate": "Data Inical",
- "reportStartTime": "Hora Inical",
- "reportStartAddress": "Adreça Inicial",
- "reportEndTime": "Hora Final",
- "reportEndAddress": "Adreça Final",
- "reportSpentFuel": "Combustible consumit",
- "reportStartOdometer": "Odòmetre inical",
- "reportEndOdometer": "Odòmetre final",
- "statisticsTitle": "Estadístiques",
- "statisticsCaptureTime": "Data de captura",
- "statisticsActiveUsers": "Usuaris Actius",
- "statisticsActiveDevices": "Dispositius Actius",
- "statisticsRequests": "Peticions",
- "statisticsMessagesReceived": "Missatges rebuts",
- "statisticsMessagesStored": "Missatges guardats",
- "statisticsGeocoder": "Sol·licituds del codificador geogràfic",
- "statisticsGeolocation": "Sol·licituds de geolocalització",
- "categoryArrow": "Fletxa",
- "categoryDefault": "Predeterminat",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicicleta",
- "categoryBoat": "Vaixell",
- "categoryBus": "Autobús",
- "categoryCar": "Automòbil",
- "categoryCamper": "Camper",
- "categoryCrane": "Grua",
- "categoryHelicopter": "Helicòpter",
- "categoryMotorcycle": "Motocicleta",
- "categoryOffroad": "Totterreny",
- "categoryPerson": "Persona",
- "categoryPickup": "Pickup",
- "categoryPlane": "Avió",
- "categoryShip": "Vaixell",
- "categoryTractor": "Tractor",
- "categoryTrain": "Tren",
- "categoryTram": "Tramvia",
- "categoryTrolleybus": "Troleibús",
- "categoryTruck": "Camió",
- "categoryVan": "Furgoneta",
- "categoryScooter": "Moto",
- "maintenanceStart": "Iniciar",
- "maintenancePeriod": "Període"
-} \ No newline at end of file
diff --git a/web/l10n/cs.json b/web/l10n/cs.json
deleted file mode 100644
index 10a1f1fa..00000000
--- a/web/l10n/cs.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Načítám...",
- "sharedHide": "Skrýt",
- "sharedSave": "Uložit",
- "sharedUpload": "Upload",
- "sharedSet": "Nastavit",
- "sharedCancel": "Zrušit",
- "sharedCopy": "Copy",
- "sharedAdd": "Přidat",
- "sharedEdit": "Změnit",
- "sharedRemove": "Odstranit",
- "sharedRemoveConfirm": "Odstranit položku?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Ano",
- "sharedNo": "Ne",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Hodina",
- "sharedMinute": "Minuta",
- "sharedSecond": "Sekunda",
- "sharedDays": "dny",
- "sharedHours": "hodiny",
- "sharedMinutes": "minuty",
- "sharedDecimalDegrees": "Desetinné stupně",
- "sharedDegreesDecimalMinutes": "Desetinné minuty",
- "sharedDegreesMinutesSeconds": "Desetinné sekundy",
- "sharedName": "Jméno",
- "sharedDescription": "Popis",
- "sharedSearch": "Hledat",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Zóna",
- "sharedGeofences": "Zóny",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Upozornění",
- "sharedNotification": "Upozornění",
- "sharedAttributes": "Atributy",
- "sharedAttribute": "Atribut",
- "sharedDrivers": "Řidiči",
- "sharedDriver": "Řidič",
- "sharedArea": "Oblast",
- "sharedSound": "Zvuk upozornění",
- "sharedType": "Typ",
- "sharedDistance": "Vzdálenost",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Litr",
- "sharedImpGallon": "Britský galon",
- "sharedUsGallon": "Americký galon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Získat stav mapy",
- "sharedComputedAttribute": "Vypočítaná vlastnost",
- "sharedComputedAttributes": "Vypočítané vlastnosti",
- "sharedCheckComputedAttribute": "Zkontrolovat vypočítanou vlastnost",
- "sharedExpression": "Výraz",
- "sharedDevice": "Zařízení",
- "sharedTest": "Test",
- "sharedTestNotification": "Odeslat testovací oznámení",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Kalendář",
- "sharedCalendars": "Kalendáře",
- "sharedFile": "Soubor",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Vybrat soubor",
- "sharedPhone": "Telefon",
- "sharedRequired": "Povinné",
- "sharedPreferences": "Nastavení",
- "sharedPermissions": "Oprávnění",
- "sharedConnections": "Připojení",
- "sharedExtra": "Volitelné",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Řetězec",
- "sharedTypeNumber": "Číslo",
- "sharedTypeBoolean": "Logická hodnota",
- "sharedTimezone": "Časová zóna",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Uložený příkaz",
- "sharedSavedCommands": "Uložené příkazy",
- "sharedNew": "Nový...",
- "sharedShowAddress": "Zobrazit adresu",
- "sharedShowDetails": "Více podrobností",
- "sharedDisabled": "Zakázáno",
- "sharedMaintenance": "Údržba",
- "sharedDeviceAccumulators": "Stavy měřidel",
- "sharedAlarms": "Alarmy",
- "sharedLocation": "Lokace",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Rychlostní limit",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Vzdálenost křivky",
- "attributeReportIgnoreOdometer": "Report: Počítadlo kilometrů",
- "attributeWebReportColor": "Web: Barva reportu",
- "attributeDevicePassword": "Heslo zařízení",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Počátek nečinnosti zařízení",
- "attributeDeviceInactivityPeriod": "Období nečinnosti zařízení",
- "attributeProcessingCopyAttributes": "Procesuji: Kopírování vlastností",
- "attributeColor": "Barva",
- "attributeWebLiveRouteLength": "Web: Aktuální délka trasy",
- "attributeWebSelectZoom": "Web: Přiblížit při výběru",
- "attributeWebMaxZoom": "Web: Maximální přiblížení",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP server",
- "attributeMailSmtpPort": "Mail: SMTP port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS povolit",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS vyžadováno",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL povolit",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL důvěřovat",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL protokoly",
- "attributeMailSmtpFrom": "Mail: SMTP od",
- "attributeMailSmtpAuth": "Mail: SMTP povolení ověřování",
- "attributeMailSmtpUsername": "Mail: SMTP uživatelské jméno",
- "attributeMailSmtpPassword": "Mail: SMTP heslo",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Zakázat události",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Zakázat řidiče",
- "attributeUiDisableComputedAttributes": "UI: Zakázat vypočítané vlastnosti",
- "attributeUiDisableCalendars": "UI: Zakázat kalendáře",
- "attributeUiDisableMaintenance": "UI: Zakázat údržbu",
- "attributeUiHidePositionAttributes": "UI: Skrýt atributy pozice",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notifikační tokeny",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Chyba",
- "errorGeneral": "Nesprávné parametry nebo překročení omezení",
- "errorConnection": "Chyba spojení",
- "errorSocket": "Chyba připojení webového socketu",
- "errorZero": "Nemůže být nula",
- "userEmail": "Email",
- "userPassword": "Heslo",
- "userAdmin": "Admin",
- "userRemember": "Zapamatovat",
- "userExpirationTime": "Konec platnosti",
- "userDeviceLimit": "Limit zařízení",
- "userUserLimit": "Limit uživatele",
- "userDeviceReadonly": "Zařízení pouze pro čtení",
- "userLimitCommands": "Limit příkazů",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Přihlášení",
- "loginLanguage": "Jazyk",
- "loginReset": "Obnovit Heslo",
- "loginRegister": "Registrace",
- "loginLogin": "Přihlášení",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Nesprávný email nebo heslo",
- "loginCreated": "Nový uživatel byl zaregistrován",
- "loginResetSuccess": "Zkontroluj si email ",
- "loginUpdateSuccess": "Nové heslo je nastaveno",
- "loginLogout": "Odhlášení",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Zařízení a stav",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Zařízení",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifikace",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategorie",
- "deviceLastUpdate": "Poslední změna",
- "deviceCommand": "Příkaz",
- "deviceFollow": "Sledovat",
- "deviceTotalDistance": "Celková vzdálenost",
- "deviceStatus": "Stav",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Neznámý",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Skupina",
- "groupParent": "Skupina",
- "groupNoGroup": "Žádná skupina",
- "settingsTitle": "Nastavení",
- "settingsUser": "Účet",
- "settingsGroups": "Skupiny",
- "settingsServer": "Server",
- "settingsUsers": "Uživatelé",
- "settingsDistanceUnit": "Jednotka vzdálenosti",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Jednotka rychlosti",
- "settingsVolumeUnit": "Jednotka objemu",
- "settingsTwelveHourFormat": "12-hodinový formát",
- "settingsCoordinateFormat": "Formát souřadnic",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Reporty",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Zařízení",
- "reportGroup": "Skupina",
- "reportFrom": "Od",
- "reportTo": "Komu",
- "reportShow": "Zobrazit",
- "reportClear": "Vyprázdnit",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Správný",
- "positionAccuracy": "Přesnost",
- "positionLatitude": "Šířka",
- "positionLongitude": "Délka",
- "positionAltitude": "Výška",
- "positionSpeed": "Rychlost",
- "positionCourse": "Směr",
- "positionAddress": "Adresa",
- "positionProtocol": "Protokol",
- "positionDistance": "Vzdálenost",
- "positionRpm": "otáček",
- "positionFuel": "Palivo",
- "positionPower": "Energie",
- "positionBattery": "Baterie",
- "positionRaw": "Čisté",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelity",
- "positionSatVisible": "Viditelné satelity",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Událost",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Počítadlo kilometrů",
- "positionServiceOdometer": "Servisní počítadlo kilometrů",
- "positionTripOdometer": "Počítadlo kilometrů cesty",
- "positionHours": "Hodiny",
- "positionSteps": "Kroky",
- "positionInput": "Vstup",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Výstup",
- "positionBatteryLevel": "Úroveň baterie",
- "positionFuelConsumption": "Spotřeba paliva",
- "positionRfid": "RFID",
- "positionVersionFw": "Verze firmwaru",
- "positionVersionHw": "Verze hardwaru",
- "positionIgnition": "Zapalování",
- "positionFlags": "Příznaky",
- "positionCharge": "Nabití",
- "positionIp": "IP",
- "positionArchive": "Archiv",
- "positionVin": "VIN",
- "positionApproximate": "Přibližný",
- "positionThrottle": "Škrtící klapka",
- "positionMotion": "Pohyb",
- "positionArmed": "Odjištěno",
- "positionAcceleration": "Akcelerace",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Teplota zařízení",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operátor",
- "positionCommand": "Příkaz",
- "positionBlocked": "Blokované",
- "positionDtcs": "DTC",
- "positionObdSpeed": "OBD rychlost",
- "positionObdOdometer": "OBD počítadlo kilometrů",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Unikátní ID ridiče",
- "positionCard": "Card",
- "positionImage": "Obraz",
- "positionVideo": "Video",
- "positionAudio": "Zvuk",
- "serverTitle": "Nastavení serveru",
- "serverZoom": "Přiblížení",
- "serverRegistration": "Registrace",
- "serverReadonly": "Pouze pro čtení",
- "serverForceSettings": "Vynutit nastavení",
- "serverAnnouncement": "Oznámení",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Mapa",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Vrstva mapy",
- "mapCustom": "Vlastní (XYZ)",
- "mapCustomArcgis": "Vlastní (ArcGIS)",
- "mapCustomLabel": "Vlastní mapa",
- "mapCarto": "Základní mapy nákladu",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps klíč",
- "mapBingRoad": "Bing Maps silniční",
- "mapBingAerial": "Bing Maps Letecký",
- "mapBingHybrid": "Bing Maps Hybridní",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex mapa",
- "mapYandexSat": "Yandex satelitní",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox ulice",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox venkovní",
- "mapMapboxSatellite": "Mapbox satelit",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Základní",
- "mapMapTilerHybrid": "MapTiler Hybridní",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Mnohoúhelník",
- "mapShapeCircle": "Kruh",
- "mapShapePolyline": "Křivka",
- "mapLiveRoutes": "Trasy živě",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Současná pozice",
- "mapPoiLayer": "Vrstva s POI",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Stav",
- "stateName": "Atribut",
- "stateValue": "Hodnota",
- "commandTitle": "Příkaz",
- "commandSend": "Odeslat",
- "commandSent": "Příkaz odeslán",
- "commandQueued": "Příkaz zařazen do fronty",
- "commandUnit": "Jednotka",
- "commandCustom": "Volitelný příkaz",
- "commandDeviceIdentification": "Identifikace zařízení",
- "commandPositionSingle": "Jednotný report",
- "commandPositionPeriodic": "Pravidelný report",
- "commandPositionStop": "Zastavit report",
- "commandEngineStop": "Zastavit motor",
- "commandEngineResume": "Nastartovat motor",
- "commandAlarmArm": "Aktivovat alarm",
- "commandAlarmDisarm": "Deaktivovat alarm",
- "commandAlarmDismiss": "Zrušit alarm",
- "commandSetTimezone": "Nastavit časovou zónu",
- "commandRequestPhoto": "Vyžádat fotku",
- "commandPowerOff": "Vypnout zařízení",
- "commandRebootDevice": "Restartovat zařízení",
- "commandFactoryReset": "Obnovit nastavení",
- "commandSendSms": "Odeslat SMS",
- "commandSendUssd": "Odeslat USSD",
- "commandSosNumber": "Nastavit SOS číslo",
- "commandSilenceTime": "Nastavit čas tichého módu",
- "commandSetPhonebook": "Nastavit telefonní seznam",
- "commandVoiceMessage": "Hlasová zpráva",
- "commandOutputControl": "Ovládání výstupu",
- "commandVoiceMonitoring": "Monitorování hlasu",
- "commandSetAgps": "Nastavit AGPS",
- "commandSetIndicator": "Nastavit indikátor",
- "commandConfiguration": "Nastavení",
- "commandGetVersion": "Zjistit verzi",
- "commandFirmwareUpdate": "Aktualizovat firmware",
- "commandSetConnection": "Nastavit spojení",
- "commandSetOdometer": "Nastavit počítadlo kilometrů",
- "commandGetModemStatus": "Získat stav modemu",
- "commandGetDeviceStatus": "Získat stav zařízení",
- "commandSetSpeedLimit": "Nastavit rychlostní limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekvence",
- "commandTimezone": "Ofset časové zóny",
- "commandMessage": "Zpráva",
- "commandRadius": "Okruh",
- "commandEnable": "Povolit",
- "commandData": "Data",
- "commandIndex": "Index",
- "commandPhone": "Telefonní číslo",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Všechny události",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status neznámý",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Zařízení je neaktivní",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Zařízení se přesouvá",
- "eventDeviceStopped": "Zařízení bylo zastaveno",
- "eventDeviceOverspeed": "Rychlostní limit překročen",
- "eventDeviceFuelDrop": "Pokles paliva",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Výsledek příkazu",
- "eventGeofenceEnter": "Vstoupeno do geozóny",
- "eventGeofenceExit": "Geozóna opuštěna",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Zážeh zapnutý",
- "eventIgnitionOff": "Zážeh vypnutý",
- "eventMaintenance": "Vyžadována údržba",
- "eventTextMessage": "Obdržena textová zpráva",
- "eventDriverChanged": "Řidič vyměněn",
- "eventMedia": "Media",
- "eventsScrollToLast": "Posunout na poslední",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Hlavní",
- "alarmSos": "SOS",
- "alarmVibration": "Vibrace",
- "alarmMovement": "Pohyb",
- "alarmLowspeed": "Nízká rychlost",
- "alarmOverspeed": "Překročení rychlosti",
- "alarmFallDown": "Pád",
- "alarmLowPower": "Nízký výkon",
- "alarmLowBattery": "Nízké napětí baterie",
- "alarmFault": "Chyba",
- "alarmPowerOff": "Vypnout",
- "alarmPowerOn": "Zapnout",
- "alarmDoor": "Dveře",
- "alarmLock": "Zamknout",
- "alarmUnlock": "Odemknout",
- "alarmGeofence": "Geozóna",
- "alarmGeofenceEnter": "Vstup do geozóny",
- "alarmGeofenceExit": "Konec geozóny",
- "alarmGpsAntennaCut": "Odpojení GPS antény",
- "alarmAccident": "Nehoda",
- "alarmTow": "Vlek",
- "alarmIdle": "Nečinnost",
- "alarmHighRpm": "Vysoké ot/min",
- "alarmHardAcceleration": "Silná akcelerace",
- "alarmHardBraking": "Silné brždění",
- "alarmHardCornering": "Jízda smykem",
- "alarmLaneChange": "Změna pruhu",
- "alarmFatigueDriving": "Únava při řízení",
- "alarmPowerCut": "Výpadek napájení",
- "alarmPowerRestored": "Napájení obnoveno",
- "alarmJamming": "Zaseknutí",
- "alarmTemperature": "Teplota",
- "alarmParking": "Parkování",
- "alarmBonnet": "Kapota",
- "alarmFootBrake": "Nožní brzda",
- "alarmFuelLeak": "Únik paliva",
- "alarmTampering": "Manipulování",
- "alarmRemoving": "Odstraňuji",
- "notificationType": "Typ oznámení",
- "notificationAlways": "Všechna zařízení",
- "notificationNotificators": "Kanály",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Přehrát",
- "reportCombined": "Combined",
- "reportRoute": "Trasa",
- "reportEvents": "Události",
- "reportTrips": "Cesty",
- "reportStops": "Zastávky",
- "reportSummary": "Souhrn",
- "reportDaily": "Denní přehled",
- "reportChart": "Graf",
- "reportConfigure": "Nastavit",
- "reportEventTypes": "Typy událostí",
- "reportChartType": "Typ grafu",
- "reportShowMarkers": "Zobrazit značky",
- "reportExport": "Exportovat",
- "reportEmail": "Zaslat report mailem",
- "reportSchedule": "Schedule",
- "reportPeriod": "Období",
- "reportCustom": "Vlastní",
- "reportToday": "Dnes",
- "reportYesterday": "Včera",
- "reportThisWeek": "Tento týden",
- "reportPreviousWeek": "Minulý týden",
- "reportThisMonth": "Tento měsíc",
- "reportPreviousMonth": "Minulý měsíc",
- "reportDeviceName": "Jméno zařízení",
- "reportAverageSpeed": "Průměrná rychlost",
- "reportMaximumSpeed": "Maximální rychlost",
- "reportEngineHours": "Motohodiny",
- "reportDuration": "Trvání",
- "reportStartDate": "Počáteční datum",
- "reportStartTime": "Čas startu",
- "reportStartAddress": "Adresa startu",
- "reportEndTime": "Čas konce",
- "reportEndAddress": "Adresa konce",
- "reportSpentFuel": "Spotřebované palivo",
- "reportStartOdometer": "Start počítadla kilometrů",
- "reportEndOdometer": "Konec počítadla kilometrů",
- "statisticsTitle": "Statistiky",
- "statisticsCaptureTime": "Čas zachycení",
- "statisticsActiveUsers": "Aktivní uživatelé",
- "statisticsActiveDevices": "Aktivní zařízení",
- "statisticsRequests": "Požadavky",
- "statisticsMessagesReceived": "Obdržené zprávy",
- "statisticsMessagesStored": "Uložené zprávy",
- "statisticsGeocoder": "Požadavky Geocodera",
- "statisticsGeolocation": "Požadavky Geolokace",
- "categoryArrow": "Šipka",
- "categoryDefault": "Výchozí",
- "categoryAnimal": "Zvíře",
- "categoryBicycle": "Kolo",
- "categoryBoat": "Loď",
- "categoryBus": "Autobus",
- "categoryCar": "Auto",
- "categoryCamper": "Camper",
- "categoryCrane": "Jeřáb",
- "categoryHelicopter": "Helikoptéra",
- "categoryMotorcycle": "Motocykl",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Osoba",
- "categoryPickup": "Pickup",
- "categoryPlane": "Letadlo",
- "categoryShip": "Loď",
- "categoryTractor": "Traktor",
- "categoryTrain": "Vlak",
- "categoryTram": "Tramvaj",
- "categoryTrolleybus": "Trolejbus",
- "categoryTruck": "Nákladní auto",
- "categoryVan": "Dodávka",
- "categoryScooter": "Koloběžka",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Perioda"
-} \ No newline at end of file
diff --git a/web/l10n/da.json b/web/l10n/da.json
deleted file mode 100644
index 4c24a3c6..00000000
--- a/web/l10n/da.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Indlæser... ",
- "sharedHide": "Skjul",
- "sharedSave": "Gem",
- "sharedUpload": "Upload",
- "sharedSet": "Indstil",
- "sharedCancel": "Fortryd",
- "sharedCopy": "Copy",
- "sharedAdd": "Tilføj",
- "sharedEdit": "Rediger",
- "sharedRemove": "Fjern",
- "sharedRemoveConfirm": "Fjern enhed?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Ja",
- "sharedNo": "Nej",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "Nml",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "knob",
- "sharedKmh": "km/t",
- "sharedMph": "mph",
- "sharedHour": "Time",
- "sharedMinute": "Minut",
- "sharedSecond": "Sekund",
- "sharedDays": "dage",
- "sharedHours": "timer",
- "sharedMinutes": "minutter",
- "sharedDecimalDegrees": "Decimal grader",
- "sharedDegreesDecimalMinutes": "Grader decimal minutter",
- "sharedDegreesMinutesSeconds": "Grader decimal sekunder",
- "sharedName": "Navn",
- "sharedDescription": "Beskrivelse",
- "sharedSearch": "Søg",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geofence",
- "sharedGeofences": "Geofences",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Notifikationer",
- "sharedNotification": "Notifikation",
- "sharedAttributes": "Egenskaber",
- "sharedAttribute": "Egenskab",
- "sharedDrivers": "Chauffører",
- "sharedDriver": "Chauffør",
- "sharedArea": "Område",
- "sharedSound": "Advarsels lyd",
- "sharedType": "Type",
- "sharedDistance": "Afstand",
- "sharedHourAbbreviation": "t",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "I",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Motorhjelm",
- "sharedUsGallon": "Amerikansk gallon",
- "sharedLiterPerHourAbbreviation": "l/time",
- "sharedGetMapState": "Kort status",
- "sharedComputedAttribute": "Udregnet attribut",
- "sharedComputedAttributes": "Udregnede attributter",
- "sharedCheckComputedAttribute": "Kontroller udregnet attribut",
- "sharedExpression": "Udtryk",
- "sharedDevice": "Enhed",
- "sharedTest": "Test",
- "sharedTestNotification": "Send Test notifikation",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Kalender",
- "sharedCalendars": "Kalendere",
- "sharedFile": "Fil",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Vælg fil",
- "sharedPhone": "Telefon",
- "sharedRequired": "Krævet",
- "sharedPreferences": "Foretrukne",
- "sharedPermissions": "Tilladelser",
- "sharedConnections": "Forbindelser",
- "sharedExtra": "Ekstra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "tekststreng",
- "sharedTypeNumber": "ciffer",
- "sharedTypeBoolean": "Boolsk",
- "sharedTimezone": "Tidszone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Gemt kommando",
- "sharedSavedCommands": "Gemte Kommandoer",
- "sharedNew": "Ny...",
- "sharedShowAddress": "Vis adresse",
- "sharedShowDetails": "Flere detailer",
- "sharedDisabled": "Deaktiveret",
- "sharedMaintenance": "Vedligeholdelse",
- "sharedDeviceAccumulators": "Akkumulatorer",
- "sharedAlarms": "Alarmer",
- "sharedLocation": "Beliggenhed",
- "sharedImport": "Importer",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Hastigheds grænse",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline afstand",
- "attributeReportIgnoreOdometer": "Rapport: Ignorer odometer",
- "attributeWebReportColor": "Web : Rapport farve",
- "attributeDevicePassword": "Enheds kodeord",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Start af enhedens inaktivitet",
- "attributeDeviceInactivityPeriod": "Enheds inaktivitetsperiode",
- "attributeProcessingCopyAttributes": "Bearbejder: Kopier attribut",
- "attributeColor": "Farve",
- "attributeWebLiveRouteLength": "Web: live rute længde",
- "attributeWebSelectZoom": "Web: Zoom ved vælg",
- "attributeWebMaxZoom": "Web: Maksimal zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP host",
- "attributeMailSmtpPort": "Mail : SMTP port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP slå SSL til",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust ",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From ",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable ",
- "attributeMailSmtpUsername": "Mail: SMTP Brugernavn",
- "attributeMailSmtpPassword": "Mail: SMTP Kodeord",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "Deaktiver begivenheder",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "Deaktiver chauffører",
- "attributeUiDisableComputedAttributes": "Deaktiver beregnede attributter",
- "attributeUiDisableCalendars": "Deaktiver kalendere",
- "attributeUiDisableMaintenance": "Deaktiver vedligeholdelse",
- "attributeUiHidePositionAttributes": "Skjul positionsattributter",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notifikations Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Fejl",
- "errorGeneral": "ulovlig parameter ",
- "errorConnection": "Tilslutning fejl",
- "errorSocket": "Web tilslutnings fejl",
- "errorZero": "Kan ikke være nul",
- "userEmail": "Email",
- "userPassword": "Kodeord",
- "userAdmin": "Admin",
- "userRemember": "Husk",
- "userExpirationTime": "Udløb",
- "userDeviceLimit": "Enheds grænse",
- "userUserLimit": "Bruger grænse",
- "userDeviceReadonly": "Enhed kun læsbar",
- "userLimitCommands": "Begrænset kommandoer",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Log på",
- "loginLanguage": "Sprog",
- "loginReset": "Nulstille kodeord",
- "loginRegister": "Registrer",
- "loginLogin": "Log på",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Fejl i email adresse eller kodeord",
- "loginCreated": "Ny bruger er registreret",
- "loginResetSuccess": "Tjek din e-mail",
- "loginUpdateSuccess": "Ny adgangskode er indstillet",
- "loginLogout": "Log af",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Enheder og status",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Enheder",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Imei nr",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategori",
- "deviceLastUpdate": "Seneste opdatering",
- "deviceCommand": "Kommando",
- "deviceFollow": "Følg",
- "deviceTotalDistance": "Total distance",
- "deviceStatus": "Status",
- "deviceStatusOnline": "On-line",
- "deviceStatusOffline": "Off-line",
- "deviceStatusUnknown": "Ukendt",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Gruppe",
- "groupParent": "Gruppe",
- "groupNoGroup": "Ingen gruppe",
- "settingsTitle": "Indstillinger",
- "settingsUser": "Konto",
- "settingsGroups": "Grupper",
- "settingsServer": "Server",
- "settingsUsers": "Brugere",
- "settingsDistanceUnit": "Afstands enhed",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Hastigheds enhed",
- "settingsVolumeUnit": "Volume enhed",
- "settingsTwelveHourFormat": "12 timers format",
- "settingsCoordinateFormat": "Koordinats format",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Rapporter",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Enhed",
- "reportGroup": "Gruppe",
- "reportFrom": "Fra",
- "reportTo": "Til",
- "reportShow": "Vis",
- "reportClear": "Ryd",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Valid",
- "positionAccuracy": "Nøjagtighed",
- "positionLatitude": "Breddegrad",
- "positionLongitude": "Længdegrad",
- "positionAltitude": "Højde",
- "positionSpeed": "Hastighed",
- "positionCourse": "Kurs",
- "positionAddress": "Adresse",
- "positionProtocol": "Protokol",
- "positionDistance": "Distance",
- "positionRpm": "Omdr.",
- "positionFuel": "Brændstof",
- "positionPower": "Strøm",
- "positionBattery": "Batteri",
- "positionRaw": "Rå",
- "positionIndex": "Indeks",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelitter",
- "positionSatVisible": "Synlige satelitter",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Hændelse",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Km tæller",
- "positionServiceOdometer": "Service Km tæller",
- "positionTripOdometer": "Trip tæller",
- "positionHours": "timer",
- "positionSteps": "Skridt",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Batteri niveau",
- "positionFuelConsumption": "Brændstof forbrug",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware version",
- "positionVersionHw": "Hardware version",
- "positionIgnition": "Tænding på ",
- "positionFlags": "Flag",
- "positionCharge": "Oplad",
- "positionIp": "IP",
- "positionArchive": "Arkiv",
- "positionVin": "VIN",
- "positionApproximate": "Cirka",
- "positionThrottle": "Gas",
- "positionMotion": "Bevægelse",
- "positionArmed": "Armeret",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Enheds temperatur",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operatør",
- "positionCommand": "Kommando",
- "positionBlocked": "Blokeret",
- "positionDtcs": "DTC's",
- "positionObdSpeed": "OBD Hastighed",
- "positionObdOdometer": "OBD km tæller",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Chaufførs unikke ID",
- "positionCard": "Card",
- "positionImage": "Billede",
- "positionVideo": "Video",
- "positionAudio": "Lyd",
- "serverTitle": "Server indstillinger",
- "serverZoom": "Zoom",
- "serverRegistration": "Registrering",
- "serverReadonly": "Læs",
- "serverForceSettings": "Gennemtving opdatering",
- "serverAnnouncement": "Meddelelse",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Kort",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Kort opsætning",
- "mapCustom": "Brugerdefineret (XYZ)",
- "mapCustomArcgis": "Brugerdefineret (ArcGIS)",
- "mapCustomLabel": "Brugerdefineret kort",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Kort",
- "mapYandexSat": "Yandex Satellit",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox gader",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox udendørs",
- "mapMapboxSatellite": "Mapbox satellit",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polygon",
- "mapShapeCircle": "Cirkel",
- "mapShapePolyline": "Polyline",
- "mapLiveRoutes": "Live ruter",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Lag",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Status",
- "stateName": "Parameter",
- "stateValue": "Værdi",
- "commandTitle": "Kommando",
- "commandSend": "Send",
- "commandSent": "Kommando sendt",
- "commandQueued": "Kommando i kø",
- "commandUnit": "Enhed",
- "commandCustom": "Skræddersyet kommando",
- "commandDeviceIdentification": "Enheds id",
- "commandPositionSingle": "Enkel rapport",
- "commandPositionPeriodic": "Periodisk Rapportering",
- "commandPositionStop": "Stop Rapportering",
- "commandEngineStop": "Stop motor",
- "commandEngineResume": "Genstart motor",
- "commandAlarmArm": "Armer alarm",
- "commandAlarmDisarm": "Slå alarm fra",
- "commandAlarmDismiss": "Afvis alarm",
- "commandSetTimezone": "Sæt tidszone",
- "commandRequestPhoto": "Tag billede",
- "commandPowerOff": "Sluk for enhed",
- "commandRebootDevice": "Genstart enhed",
- "commandFactoryReset": "Gendan fabriksindstillinger",
- "commandSendSms": "send SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "Angiv SOS nummer",
- "commandSilenceTime": "Angiv lydløs tid",
- "commandSetPhonebook": "Angiv telefonbog",
- "commandVoiceMessage": "Tale meddelelse",
- "commandOutputControl": "Output kontrol",
- "commandVoiceMonitoring": "Stemmeovervågning",
- "commandSetAgps": "Konfigurer AGPS",
- "commandSetIndicator": "Gem indikator",
- "commandConfiguration": "Konfiguration",
- "commandGetVersion": "Hent version",
- "commandFirmwareUpdate": "Opdater irmware",
- "commandSetConnection": "Konfigurer forbindelse",
- "commandSetOdometer": "Konfigurer kilometertæller",
- "commandGetModemStatus": "Hent Modem status",
- "commandGetDeviceStatus": "Hent enheds status",
- "commandSetSpeedLimit": "Indstil hastighedsgrænse",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekvens",
- "commandTimezone": "Tidszone forskel",
- "commandMessage": "Meddelelse",
- "commandRadius": "Radius",
- "commandEnable": "aktiver",
- "commandData": "Data",
- "commandIndex": "Indeks",
- "commandPhone": "Telefon nummer",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Alle begivenheder",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status ukendt",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Enhed inaktiv",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Enheden bevæger sig",
- "eventDeviceStopped": "Enheden stoppet",
- "eventDeviceOverspeed": "Hastighedsgrænsen overskredet",
- "eventDeviceFuelDrop": "Brændstoffald",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Resultat af kommando",
- "eventGeofenceEnter": "Geofence indtastet",
- "eventGeofenceExit": "Geofence forladt",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Tænding tændt",
- "eventIgnitionOff": "Tænding slukket",
- "eventMaintenance": "Vedligeholdelse krævet",
- "eventTextMessage": "Tekst besked modtaget",
- "eventDriverChanged": "Chaufførskift",
- "eventMedia": "Media",
- "eventsScrollToLast": "Rul til sidste",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Generel",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Bevægelse",
- "alarmLowspeed": "Lav hastighed",
- "alarmOverspeed": "Hastighedsoverskridelse",
- "alarmFallDown": "Fald",
- "alarmLowPower": "Lav strøm",
- "alarmLowBattery": "Lavt batteri",
- "alarmFault": "Fejl",
- "alarmPowerOff": "Sluk",
- "alarmPowerOn": "Tænd",
- "alarmDoor": "Dør",
- "alarmLock": "Lås",
- "alarmUnlock": "Lås op",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS-antennesnit",
- "alarmAccident": "Ulykke",
- "alarmTow": "Bugseret",
- "alarmIdle": "Ledig",
- "alarmHighRpm": "Høj RPM",
- "alarmHardAcceleration": "Hård acceleration",
- "alarmHardBraking": "Hård bremsning",
- "alarmHardCornering": "Hård sving",
- "alarmLaneChange": "Vognbaneskift",
- "alarmFatigueDriving": "Træthedskørsel",
- "alarmPowerCut": "Strømafbrydelse",
- "alarmPowerRestored": "Strøm genoprettet",
- "alarmJamming": "Fastklemning",
- "alarmTemperature": "Temperatur",
- "alarmParking": "Parkering",
- "alarmBonnet": "Motorhjelm",
- "alarmFootBrake": "Fodbremse",
- "alarmFuelLeak": "Brændstoflækage",
- "alarmTampering": "Manipulering",
- "alarmRemoving": "Fjerner",
- "notificationType": "Type af notifikation",
- "notificationAlways": "Alle enheder",
- "notificationNotificators": "Kanaler",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Genafspil",
- "reportCombined": "Combined",
- "reportRoute": "Rute",
- "reportEvents": "Begivenheder",
- "reportTrips": "Ture",
- "reportStops": "Antal stop",
- "reportSummary": "Resume",
- "reportDaily": "Daglig opsummering",
- "reportChart": "Graf",
- "reportConfigure": "Konfigurer",
- "reportEventTypes": "Begivenheds typer",
- "reportChartType": "Graf type",
- "reportShowMarkers": "Vis markeringer",
- "reportExport": "Eksporter",
- "reportEmail": "Email rapport",
- "reportSchedule": "Schedule",
- "reportPeriod": "Periode",
- "reportCustom": "Brugerdefineret",
- "reportToday": "I dag",
- "reportYesterday": "I går",
- "reportThisWeek": "Denne uge",
- "reportPreviousWeek": "Forrige uge",
- "reportThisMonth": "Denne måned",
- "reportPreviousMonth": "Forrige måned",
- "reportDeviceName": "Enheds navn",
- "reportAverageSpeed": "Gennemsnits hastighed",
- "reportMaximumSpeed": "Maximum hastighed",
- "reportEngineHours": "Motor aktiv timer",
- "reportDuration": "Varighed",
- "reportStartDate": "Start dato",
- "reportStartTime": "Start tidspunkt",
- "reportStartAddress": "Start adresse",
- "reportEndTime": "Slut tidspunkt",
- "reportEndAddress": "Slut adresse",
- "reportSpentFuel": "Brændstof forbrug",
- "reportStartOdometer": "Kilometertæller start",
- "reportEndOdometer": "Kilometertæller slut",
- "statisticsTitle": "Statistik",
- "statisticsCaptureTime": "Noter tid",
- "statisticsActiveUsers": "Aktive brugere",
- "statisticsActiveDevices": "Aktive enheder",
- "statisticsRequests": "Anmodninger",
- "statisticsMessagesReceived": "Meddelelser modtaget",
- "statisticsMessagesStored": "Meddelelser gemt",
- "statisticsGeocoder": "Geokoder opslag",
- "statisticsGeolocation": "Geolocation opslag",
- "categoryArrow": "Pil",
- "categoryDefault": "Standard",
- "categoryAnimal": "Dyr",
- "categoryBicycle": "Cykel",
- "categoryBoat": "Båd",
- "categoryBus": "Bus",
- "categoryCar": "Bil",
- "categoryCamper": "Camper",
- "categoryCrane": "Kran",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motorcykel",
- "categoryOffroad": "Off-road",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup ",
- "categoryPlane": "Fly",
- "categoryShip": "Skib",
- "categoryTractor": "Traktor",
- "categoryTrain": "Tog",
- "categoryTram": "Sporvogn",
- "categoryTrolleybus": "Bybus",
- "categoryTruck": "Lastbil",
- "categoryVan": "Van",
- "categoryScooter": "scooter",
- "maintenanceStart": "start",
- "maintenancePeriod": "Periode"
-} \ No newline at end of file
diff --git a/web/l10n/de.json b/web/l10n/de.json
deleted file mode 100644
index 3e937ea0..00000000
--- a/web/l10n/de.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Lade...",
- "sharedHide": "Ausblenden",
- "sharedSave": "Speichern",
- "sharedUpload": "Upload",
- "sharedSet": "Speichern",
- "sharedCancel": "Abbrechen",
- "sharedCopy": "Kopieren",
- "sharedAdd": "Hinzufügen",
- "sharedEdit": "Bearbeiten",
- "sharedRemove": "Entfernen",
- "sharedRemoveConfirm": "Objekt entfernen?",
- "sharedNoData": "Keine Daten",
- "sharedSubject": "Betreff",
- "sharedYes": "Ja",
- "sharedNo": "Nein",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Stunde",
- "sharedMinute": "Minute",
- "sharedSecond": "Sekunde",
- "sharedDays": "Tage",
- "sharedHours": "Stunden",
- "sharedMinutes": "Minuten",
- "sharedDecimalDegrees": "Dezimalgrad",
- "sharedDegreesDecimalMinutes": "Dezimalgrad Minuten",
- "sharedDegreesMinutesSeconds": "Grad Minuten Sekunden",
- "sharedName": "Name",
- "sharedDescription": "Beschreibung",
- "sharedSearch": "Suchen",
- "sharedIconScale": "Icon-Skalierung",
- "sharedGeofence": "Geo-Zaun",
- "sharedGeofences": "Geo-Zäune",
- "sharedCreateGeofence": "Geozaun erstellen",
- "sharedNotifications": "Benachrichtigungen",
- "sharedNotification": "Benachrichtigung",
- "sharedAttributes": "Eigenschaften",
- "sharedAttribute": "Eigenschaft",
- "sharedDrivers": "Fahrer",
- "sharedDriver": "Fahrer",
- "sharedArea": "Gebiet",
- "sharedSound": "Benachrichtigungston",
- "sharedType": "Typ",
- "sharedDistance": "Entfernung",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallonen",
- "sharedUsGallon": "U.S. Gallonen",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Aktuelle Position übernehmen",
- "sharedComputedAttribute": "Berechneter Wert",
- "sharedComputedAttributes": "Berechnete Werte",
- "sharedCheckComputedAttribute": "Berechneten Wert prüfen",
- "sharedExpression": "Ausdruck",
- "sharedDevice": "Gerät",
- "sharedTest": "Test",
- "sharedTestNotification": "Testbenachrichtigung senden",
- "sharedTestNotificators": "Kanäle testen",
- "sharedTestExpression": "Ausdruck testen",
- "sharedCalendar": "Kalender",
- "sharedCalendars": "Kalender",
- "sharedFile": "Datei",
- "sharedSearchDevices": "Geräte suchen",
- "sharedSortBy": "Sortieren nach",
- "sharedFilterMap": "Auf Karte filtern",
- "sharedSelectFile": "Datei auswählen",
- "sharedPhone": "Telefon",
- "sharedRequired": "Erforderlich",
- "sharedPreferences": "Einstellungen",
- "sharedPermissions": "Berechtigungen",
- "sharedConnections": "Verbindungen",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primär",
- "sharedSecondary": "Sekundär",
- "sharedTypeString": "Text",
- "sharedTypeNumber": "Nummer",
- "sharedTypeBoolean": "Boolesche Variable",
- "sharedTimezone": "Zeitzone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Gespeicherter Befehl",
- "sharedSavedCommands": "Gespeicherte Befehle",
- "sharedNew": "Neu...",
- "sharedShowAddress": "Adresse anzeigen",
- "sharedShowDetails": "Details",
- "sharedDisabled": "Deaktiviert",
- "sharedMaintenance": "Wartung",
- "sharedDeviceAccumulators": "Zählerstände",
- "sharedAlarms": "Alarme",
- "sharedLocation": "Ort",
- "sharedImport": "Import",
- "sharedColumns": "Spalten",
- "sharedDropzoneText": "Datei hierhin ziehen oder klicken",
- "sharedLogs": "Protokolle",
- "sharedLink": "Link",
- "calendarSimple": "Einfach",
- "calendarRecurrence": "Wiederholung",
- "calendarOnce": "Einmalig",
- "calendarDaily": "Täglich",
- "calendarWeekly": "Wöchentlich",
- "calendarMonthly": "Monatlich",
- "calendarDays": "Tage",
- "calendarSunday": "Sonntag",
- "calendarMonday": "Montag",
- "calendarTuesday": "Dienstag",
- "calendarWednesday": "Mittwoch",
- "calendarThursday": "Donnerstag",
- "calendarFriday": "Freitag",
- "calendarSaturday": "Samstag",
- "attributeShowGeofences": "Geozäune anzeigen",
- "attributeSpeedLimit": "Höchstgeschwindigkeit",
- "attributeFuelDropThreshold": "Fuel Drop Schwelle",
- "attributeFuelIncreaseThreshold": "Fuel Increase Schwelle",
- "attributePolylineDistance": "Polyliniendistanz",
- "attributeReportIgnoreOdometer": "Bericht: Kilometerzähler ignorieren",
- "attributeWebReportColor": "Web: Berichtsfarbe",
- "attributeDevicePassword": "Gerätepasswort",
- "attributeDeviceImage": "Gerätebild",
- "attributeDeviceInactivityStart": "Geräteinaktivität Start",
- "attributeDeviceInactivityPeriod": "Geräteinaktivität Periode",
- "attributeProcessingCopyAttributes": "Aktiv: Werte kopieren",
- "attributeColor": "Farbe",
- "attributeWebLiveRouteLength": "Web: Länge der Liveroute",
- "attributeWebSelectZoom": "Web: Mit Auswahl vergrößern",
- "attributeWebMaxZoom": "Web: Maximaler Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Gerätenamen",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS aktivieren",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS erforderlich",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL aktivieren",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Vertrauensstufe",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protokolle",
- "attributeMailSmtpFrom": "Mail: SMTP Absender",
- "attributeMailSmtpAuth": "Mail: SMTP Authentifizierung aktivieren",
- "attributeMailSmtpUsername": "Mail: SMTP Benutzername",
- "attributeMailSmtpPassword": "Mail: SMTP Passwort",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Attribute deaktivieren",
- "attributeUiDisableGroups": "UI: Gruppen deaktivieren",
- "attributeUiDisableEvents": "Oberfläche: Ereignisse deaktivieren",
- "attributeUiDisableVehicleFeatures": "UI: Fahrzeugfunktionen deaktivieren",
- "attributeUiDisableDrivers": "Oberfläche: Fahrer deaktivieren",
- "attributeUiDisableComputedAttributes": "Oberfläche: Berechnete Werte deaktivieren",
- "attributeUiDisableCalendars": "Oberfläche: Kalender deaktivieren",
- "attributeUiDisableMaintenance": "Oberfläche: Wartung deaktivieren",
- "attributeUiHidePositionAttributes": "Oberfläche: Positionsattribute ausblenden",
- "attributeUiDisableLoginLanguage": "UI: Loginsprache deaktivieren",
- "attributeNotificationTokens": "Benachrichtungsschlüssel",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Fehler",
- "errorGeneral": "Ungültige Eingabe oder keine Berechtigung",
- "errorConnection": "Verbindungsfehler",
- "errorSocket": "Web Socket Verbindungsfehler",
- "errorZero": "Darf nicht leer sein",
- "userEmail": "Email",
- "userPassword": "Passwort",
- "userAdmin": "Admin",
- "userRemember": "Erinnern",
- "userExpirationTime": "Ablaufdatum",
- "userDeviceLimit": "Gerätelimit",
- "userUserLimit": "Benutzerlimit",
- "userDeviceReadonly": "Gerät nur Betrachten",
- "userLimitCommands": "Befehle begrenzen",
- "userDisableReports": "Berichte deaktivieren",
- "userFixedEmail": "Änderung der E-Mailadresse verbieten",
- "userToken": "Schlüssel",
- "userDeleteAccount": "Account löschen",
- "userTemporary": "Temporär",
- "loginTitle": "Anmeldung",
- "loginLanguage": "Sprache",
- "loginReset": "Passwort zurücksetzen",
- "loginRegister": "Registrieren",
- "loginLogin": "Anmelden",
- "loginOpenId": "Login mit OpenID",
- "loginFailed": "Falsche Emailadresse oder Passwort",
- "loginCreated": "Neuer Benutzer wurde registriert",
- "loginResetSuccess": "Prüfen Sie Ihre E-Mails",
- "loginUpdateSuccess": "Neues Passwort gespeichert",
- "loginLogout": "Abmelden",
- "loginLogo": "Logo",
- "loginTotpCode": "OTP-Code",
- "loginTotpKey": "OTP-Schlüssel",
- "devicesAndState": "Geräte und Status",
- "deviceSelected": "Ausgewähltes Gerät",
- "deviceTitle": "Geräte",
- "devicePrimaryInfo": "Gerät Titel",
- "deviceSecondaryInfo": "Gerät Detail",
- "deviceIdentifier": "Kennung",
- "deviceModel": "Modell",
- "deviceContact": "Kontakt",
- "deviceCategory": "Symbol",
- "deviceLastUpdate": "Letzte Aktualisierung",
- "deviceCommand": "Befehl",
- "deviceFollow": "Folgen",
- "deviceTotalDistance": "Gesamt Strecke",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Unbekannt",
- "deviceRegisterFirst": "Registriere dein erstes Gerät",
- "deviceIdentifierHelp": "IMEI, Seriennummer or andere ID. Eingabe muss mit dem Identifier übereinstimmen, den das Gerät an den Server überträgt.",
- "deviceShare": "Gerät freigeben",
- "groupDialog": "Gruppe",
- "groupParent": "Gruppe",
- "groupNoGroup": "Keine Gruppe",
- "settingsTitle": "Einstellungen",
- "settingsUser": "Benutzerkonto",
- "settingsGroups": "Gruppen",
- "settingsServer": "Server",
- "settingsUsers": "Benutzer",
- "settingsDistanceUnit": "Entfernungseinheit",
- "settingsAltitudeUnit": "Höhe Einheit",
- "settingsSpeedUnit": "Geschwindigkeitseinheit",
- "settingsVolumeUnit": "Volumeneinheit",
- "settingsTwelveHourFormat": "12 Stunden Format",
- "settingsCoordinateFormat": "Koordinatenformat",
- "settingsServerVersion": "Server-Version",
- "settingsAppVersion": "App-Version",
- "settingsConnection": "Verbindung",
- "settingsDarkMode": "Dunkelmodus",
- "settingsTotpEnable": "OTP aktivieren",
- "settingsTotpForce": "OTP erzwingen",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Intervall",
- "settingsUpdateAvailable": "Es ist ein Update verfügbar.",
- "settingsSupport": "Hilfe",
- "reportTitle": "Berichte",
- "reportScheduled": "Geplante Berichte",
- "reportDevice": "Gerät",
- "reportGroup": "Gruppe",
- "reportFrom": "Von",
- "reportTo": "Bis",
- "reportShow": "Anzeigen",
- "reportClear": "Leeren",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Gerätezeit",
- "positionServerTime": "Serverzeit",
- "positionValid": "Gültig",
- "positionAccuracy": "Genauigkeit",
- "positionLatitude": "Breitengrad",
- "positionLongitude": "Längengrad",
- "positionAltitude": "Höhe",
- "positionSpeed": "Geschwindigkeit",
- "positionCourse": "Richtung",
- "positionAddress": "Adresse",
- "positionProtocol": "Protokoll",
- "positionDistance": "Distanz",
- "positionRpm": "Drehzahl",
- "positionFuel": "Treibstoff",
- "positionPower": "Versorgungsspannung",
- "positionBattery": "Batterie",
- "positionRaw": "Roh",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelliten",
- "positionSatVisible": "Sichtbare Satelliten",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Ereignis",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Kilometerzähler",
- "positionServiceOdometer": "Kilometerzähler - Service",
- "positionTripOdometer": "Kilometerzähler - Trip",
- "positionHours": "Stunden",
- "positionSteps": "Schritte",
- "positionInput": "Input",
- "positionHeartRate": "Herzfrequenz",
- "positionOutput": "Output",
- "positionBatteryLevel": "Batteriestand",
- "positionFuelConsumption": "Kraftstoffverbrauch",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Zündung",
- "positionFlags": "Flags",
- "positionCharge": "Laden",
- "positionIp": "IP",
- "positionArchive": "Archiv",
- "positionVin": "VIN",
- "positionApproximate": "Geschätzt",
- "positionThrottle": "Gasstellung",
- "positionMotion": "Bewegung",
- "positionArmed": "Gesichert",
- "positionAcceleration": "Beschleunigung",
- "positionTemp": "Temperatur",
- "positionDeviceTemp": "Gerätetemperatur",
- "positionCoolantTemp": "Kühlmitteltemperatur",
- "positionOperator": "Netz",
- "positionCommand": "Befehl",
- "positionBlocked": "Blockiert",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Geschwindigkeit",
- "positionObdOdometer": "OBD Kilometerzähler",
- "positionDrivingTime": "Fahrzeit",
- "positionDriverUniqueId": "Eindeutige ID des Fahrers",
- "positionCard": "Karte",
- "positionImage": "Bild",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Server Einstellungen",
- "serverZoom": "Zoomen",
- "serverRegistration": "Registrierung zulassen",
- "serverReadonly": "Nur Lesen",
- "serverForceSettings": "Einstellungen erzwingen",
- "serverAnnouncement": "Ankündigung",
- "serverName": "Server Name",
- "serverDescription": "Server Beschreibung",
- "serverColorPrimary": "Primäre Farbe",
- "serverColorSecondary": "Sekundäre Farbe",
- "serverLogo": "Logo",
- "serverLogoInverted": "Umgekehrte Logografik",
- "serverChangeDisable": "Serverwechsel deaktivieren",
- "serverDisableShare": "Gerätefreigabe deaktivieren",
- "mapTitle": "Karte",
- "mapActive": "Aktive Karte",
- "mapOverlay": "Karten Overlay",
- "mapOverlayCustom": "Benutzerdefiniertes Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Wolken",
- "mapOpenWeatherPrecipitation": "OpenWeather Niederschlag",
- "mapOpenWeatherPressure": "OpenWeather Luftdruck",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperatur",
- "mapLayer": "Karten Layer",
- "mapCustom": "Benutzerdefiniert (XYZ)",
- "mapCustomArcgis": "Benutzerdefiniert (ArcGIS)",
- "mapCustomLabel": "Benutzerdefinierte Karte",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Straßen",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellit",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Strassenkarte",
- "mapBingAerial": "Bing Luftbilder",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Material-Überwachung",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dunkel",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polygon",
- "mapShapeCircle": "Kreis",
- "mapShapePolyline": "Polylinie",
- "mapLiveRoutes": "Live Route",
- "mapDirection": "Richtung anzeigen",
- "mapCurrentLocation": "Momentaner Standort",
- "mapPoiLayer": "POI Ebene",
- "mapClustering": "Marker zusammenfassen",
- "mapOnSelect": "Karte bei Auswahl anzeigen",
- "mapDefault": "Standartkarte",
- "stateTitle": "Status",
- "stateName": "Parameter",
- "stateValue": "Wert",
- "commandTitle": "Befehl",
- "commandSend": "Senden",
- "commandSent": "Befehl gesendet",
- "commandQueued": "Befehl eingereiht",
- "commandUnit": "Einheit",
- "commandCustom": "Benutzerdefinierter Befehl",
- "commandDeviceIdentification": "Gerätekennung",
- "commandPositionSingle": "Einzelne Meldung",
- "commandPositionPeriodic": "Regelmäßige Meldungen",
- "commandPositionStop": "Meldungen beenden",
- "commandEngineStop": "Motor gestoppt",
- "commandEngineResume": "Motor gestartet",
- "commandAlarmArm": "Scharf schalten",
- "commandAlarmDisarm": "Unscharf schalten",
- "commandAlarmDismiss": "Alarm abstellen",
- "commandSetTimezone": "Zeitzone festlegen",
- "commandRequestPhoto": "Foto anfordern",
- "commandPowerOff": "Gerät ausschalten",
- "commandRebootDevice": "Gerät neustarten",
- "commandFactoryReset": "Zurücksetzen auf Werkseinstellungen",
- "commandSendSms": "SMS senden",
- "commandSendUssd": "USSD senden",
- "commandSosNumber": "SOS-Nummer festlegen",
- "commandSilenceTime": "Ruhezeit festlegen",
- "commandSetPhonebook": "Telefonbuch festlegen",
- "commandVoiceMessage": "Sprachnachricht",
- "commandOutputControl": "Berichtsteuerung",
- "commandVoiceMonitoring": "Stimmenmonitor",
- "commandSetAgps": "AGPS einstellen",
- "commandSetIndicator": "Blinker setzen",
- "commandConfiguration": "Konfiguration",
- "commandGetVersion": "Version abfragen",
- "commandFirmwareUpdate": "Firmware upgraden",
- "commandSetConnection": "Verbindung aufbauen",
- "commandSetOdometer": "Kilometerzähler einstellen",
- "commandGetModemStatus": "Modemstatus abrufen",
- "commandGetDeviceStatus": "Gerätestatus abrufen",
- "commandSetSpeedLimit": "Tempolimit einstellen",
- "commandModePowerSaving": "Energiesparmodus",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Geozaun-Alarm einstellen",
- "commandAlarmBattery": "Batterie-Alarm einstellen",
- "commandAlarmSos": "SOS-Alarm einstellen",
- "commandAlarmRemove": "Demontage-Alarm einstellen",
- "commandAlarmClock": "Uhr-Alarm einstellen",
- "commandAlarmSpeed": "Geschwinidkeits-Alarm einstellen",
- "commandAlarmFall": "Sturz-Alarm einstellen",
- "commandAlarmVibration": "Vibrations-Alarm einstellen",
- "commandFrequency": "Frequenz",
- "commandTimezone": "Zeitzonendifferenz",
- "commandMessage": "Nachricht",
- "commandRadius": "Radius",
- "commandEnable": "Aktivieren",
- "commandData": "Daten",
- "commandIndex": "Index",
- "commandPhone": "Rufnummer",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Alle Ereignisse",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unbekannt",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Gerät inaktiv",
- "eventQueuedCommandSent": "Befehl in der Warteschlange senden",
- "eventDeviceMoving": "Gerät in Bewegung",
- "eventDeviceStopped": "Gerät gestoppt",
- "eventDeviceOverspeed": "Tempolimit überschritten",
- "eventDeviceFuelDrop": "Treibstoffleck",
- "eventDeviceFuelIncrease": "Anstieg der Tankfüllung",
- "eventCommandResult": "Ergebnis des Befehls",
- "eventGeofenceEnter": "Geozaun betreten",
- "eventGeofenceExit": "Geozaun verlassen",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Zündung an",
- "eventIgnitionOff": "Zündung aus",
- "eventMaintenance": "Wartung erforderlich",
- "eventTextMessage": "Textnachricht empfangen",
- "eventDriverChanged": "Fahrer gewechselt",
- "eventMedia": "Medien",
- "eventsScrollToLast": "Zur Neuesten scrollen",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarme",
- "alarmGeneral": "Allgemein",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Bewegung",
- "alarmLowspeed": "Geringe Geschwindigkeit",
- "alarmOverspeed": "Geschwindigkeitsüberschreitung",
- "alarmFallDown": "Sturz",
- "alarmLowPower": "Geringe Spannung",
- "alarmLowBattery": "Geringer Batteriestand",
- "alarmFault": "Fehler",
- "alarmPowerOff": "Ausschalten",
- "alarmPowerOn": "Einschalten",
- "alarmDoor": "Tür",
- "alarmLock": "Sperren",
- "alarmUnlock": "Entsperren",
- "alarmGeofence": "Geozaun",
- "alarmGeofenceEnter": "Geozaun betreten",
- "alarmGeofenceExit": "Geofence verlassen",
- "alarmGpsAntennaCut": "GPS Antenne entfernt",
- "alarmAccident": "Unfall",
- "alarmTow": "Abschleppen",
- "alarmIdle": "Ruhezustand",
- "alarmHighRpm": "Hohe Drehzahl",
- "alarmHardAcceleration": "Starke Beschleunigung",
- "alarmHardBraking": "Starkes Bremsen",
- "alarmHardCornering": "Scharfes Kurvenfahren",
- "alarmLaneChange": "Spurwechsel",
- "alarmFatigueDriving": "Müdigkeitserkennung",
- "alarmPowerCut": "Stromversorgung unterbrochen",
- "alarmPowerRestored": "Stromversorgung wiederhergestellt",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperatur",
- "alarmParking": "Parken",
- "alarmBonnet": "Haube",
- "alarmFootBrake": "Betriebsbremse",
- "alarmFuelLeak": "Treibstoffleck",
- "alarmTampering": "Manipulation",
- "alarmRemoving": "Entfernen",
- "notificationType": "Art der Benachrichtigung",
- "notificationAlways": "Alle Geräte",
- "notificationNotificators": "Kanäle",
- "notificatorCommand": "Befehl",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Abspielen",
- "reportCombined": "Kombiniert",
- "reportRoute": "Route",
- "reportEvents": "Ereignis",
- "reportTrips": "Fahrten",
- "reportStops": "Stopps",
- "reportSummary": "Zusammenfassung",
- "reportDaily": "tägliche Übersicht",
- "reportChart": "Diagramm",
- "reportConfigure": "Konfigurieren",
- "reportEventTypes": "Ereignisarten",
- "reportChartType": "Diagramm Typ",
- "reportShowMarkers": "Zeige Markierungen",
- "reportExport": "Export",
- "reportEmail": "E-Mail Report",
- "reportSchedule": "Planen",
- "reportPeriod": "Zeitraum",
- "reportCustom": "Eigene",
- "reportToday": "Heute",
- "reportYesterday": "Gestern",
- "reportThisWeek": "Diese Woche",
- "reportPreviousWeek": "Letzte Woche",
- "reportThisMonth": "Dieser Monat",
- "reportPreviousMonth": "Letzer Monat",
- "reportDeviceName": "Gerätename",
- "reportAverageSpeed": "Durchschnittsgeschwindigkeit",
- "reportMaximumSpeed": "Höchstgeschwindigkeit",
- "reportEngineHours": "Betriebsstunden",
- "reportDuration": "Dauer",
- "reportStartDate": "Beginn",
- "reportStartTime": "Startzeit",
- "reportStartAddress": "Startort",
- "reportEndTime": "Zielzeit",
- "reportEndAddress": "Zielort",
- "reportSpentFuel": "Kraftstoffverbrauch",
- "reportStartOdometer": "Kilometerstand Start",
- "reportEndOdometer": "Kilometerstand Ende",
- "statisticsTitle": "Statistiken",
- "statisticsCaptureTime": "Zeitpunkt",
- "statisticsActiveUsers": "Aktive Benutzer",
- "statisticsActiveDevices": "Aktive Geräte",
- "statisticsRequests": "Anfragen",
- "statisticsMessagesReceived": "Empfangene Nachrichten",
- "statisticsMessagesStored": "Gespeicherte Nachrichten",
- "statisticsGeocoder": "Geocoder Anfragen",
- "statisticsGeolocation": "Geolocation Anfragen",
- "categoryArrow": "Pfeil",
- "categoryDefault": "Standard",
- "categoryAnimal": "Tier",
- "categoryBicycle": "Fahrrad",
- "categoryBoat": "Boot",
- "categoryBus": "Bus",
- "categoryCar": "Auto",
- "categoryCamper": "Wohnmobil",
- "categoryCrane": "Kran",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motorrad",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Flugzeug",
- "categoryShip": "Schiff",
- "categoryTractor": "Traktor",
- "categoryTrain": "Zug",
- "categoryTram": "Straßenbahn",
- "categoryTrolleybus": "Oberleitungsbus",
- "categoryTruck": "LKW",
- "categoryVan": "Van",
- "categoryScooter": "Roller",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Periode"
-} \ No newline at end of file
diff --git a/web/l10n/el.json b/web/l10n/el.json
deleted file mode 100644
index ad2f2cf1..00000000
--- a/web/l10n/el.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Φόρτωση...",
- "sharedHide": "Απόκρυψη",
- "sharedSave": "Αποθήκευση",
- "sharedUpload": "Upload",
- "sharedSet": "Θέσε",
- "sharedCancel": "Άκυρο",
- "sharedCopy": "Copy",
- "sharedAdd": "Προσθήκη",
- "sharedEdit": "Επεξεργασία",
- "sharedRemove": "Διαγραφή",
- "sharedRemoveConfirm": "Διαγραφη στοιχείου;",
- "sharedNoData": "Χωρίς δεδομένα",
- "sharedSubject": "Subject",
- "sharedYes": "Ναι",
- "sharedNo": "Όχι",
- "sharedKm": "χλμ",
- "sharedMi": "μίλια",
- "sharedNmi": "nmi",
- "sharedMeters": "μ.",
- "sharedFeet": "ft",
- "sharedKn": "κόμβοι",
- "sharedKmh": "χλμ/ώρα",
- "sharedMph": "μίλια/ώρα",
- "sharedHour": "Ώρα",
- "sharedMinute": "Λεπτά",
- "sharedSecond": "Δευτερόλεπτα",
- "sharedDays": "ημέρες",
- "sharedHours": "ώρες",
- "sharedMinutes": "λεπτά",
- "sharedDecimalDegrees": "Μοίρες",
- "sharedDegreesDecimalMinutes": "Λεπτά μοίρας",
- "sharedDegreesMinutesSeconds": "Δεύτερα μοίρας",
- "sharedName": "Όνομα",
- "sharedDescription": "Περιγραφή",
- "sharedSearch": "Αναζήτηση",
- "sharedIconScale": "Κλίμακα εικονιδίων",
- "sharedGeofence": "Γεωφράχτης",
- "sharedGeofences": "Γεωφράχτες",
- "sharedCreateGeofence": "Δημιουργήστε Γεώφραγμα",
- "sharedNotifications": "Ειδοποιήσεις",
- "sharedNotification": "Ειδοποίηση",
- "sharedAttributes": "Παράμετροι",
- "sharedAttribute": "Παράμετρος",
- "sharedDrivers": "Οδηγοί",
- "sharedDriver": "Οδηγός",
- "sharedArea": "Περιοχή",
- "sharedSound": "Ήχος ειδοποίησης",
- "sharedType": "Τύπος",
- "sharedDistance": "Απόσταση",
- "sharedHourAbbreviation": "ώ",
- "sharedMinuteAbbreviation": "λ",
- "sharedSecondAbbreviation": "δ",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "γαλόνι",
- "sharedLiter": "Λίτρο",
- "sharedImpGallon": "Γαλόνι Αγγλικό",
- "sharedUsGallon": "Γαλόνι ΗΠΑ",
- "sharedLiterPerHourAbbreviation": "λ/ώ",
- "sharedGetMapState": "Λήψη κατάστασης χάρτη",
- "sharedComputedAttribute": "Υπολογισμένο χαρακτηριστικό",
- "sharedComputedAttributes": "Υπολογισμένα χαρακτηριστικά",
- "sharedCheckComputedAttribute": "Ελέξτε την υπολογισμένη ιδιότητα",
- "sharedExpression": "Έκφραση",
- "sharedDevice": "Συσκευή",
- "sharedTest": "Δοκιμή",
- "sharedTestNotification": "Αποστολή δοκιμαστικής ειδοποίησης",
- "sharedTestNotificators": "Δοκιμή καναλιών",
- "sharedTestExpression": "Δοκιμή Διατύπωσης",
- "sharedCalendar": "Ημερολόγιο",
- "sharedCalendars": "Ημερολόγια",
- "sharedFile": "Αρχείο",
- "sharedSearchDevices": "Αναζήτηση συσκευών",
- "sharedSortBy": "Ταξινόμηση κατά",
- "sharedFilterMap": "Φίλτρο στον χάρτη",
- "sharedSelectFile": "Επιλογή αρχείου",
- "sharedPhone": "Τηλέφωνο",
- "sharedRequired": "Απαραίτητο",
- "sharedPreferences": "Προτιμήσεις",
- "sharedPermissions": "Άδειες",
- "sharedConnections": "Συνδέσεις",
- "sharedExtra": "Επιπλέον",
- "sharedPrimary": "Πρωτεύον",
- "sharedSecondary": "Δευτερεύον",
- "sharedTypeString": "Αλφαριθμητικό",
- "sharedTypeNumber": "Αριθμός",
- "sharedTypeBoolean": "Αληθές/Ψευδές",
- "sharedTimezone": "Ζώνη ώρας",
- "sharedInfoTitle": "Πληροφορίες",
- "sharedSavedCommand": "Αποθηκευμένη Εντολή",
- "sharedSavedCommands": "Αποθηκευμένες Εντολές",
- "sharedNew": "Νέο...",
- "sharedShowAddress": "Δείξε Διεύθυνση",
- "sharedShowDetails": "Περισσότερες λεπτομέρειες",
- "sharedDisabled": "Απενεργοποιημένο",
- "sharedMaintenance": "Συντήρηση",
- "sharedDeviceAccumulators": "Συσσωρευτές",
- "sharedAlarms": "Συναγερμοί",
- "sharedLocation": "Τοποθεσία",
- "sharedImport": "Εισαγωγή",
- "sharedColumns": "Στήλες",
- "sharedDropzoneText": "Σύρετε και αποθέστε ένα αρχείο εδώ ή κάντε κλικ",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Απλό",
- "calendarRecurrence": "Επανάληψη",
- "calendarOnce": "Μια φορά",
- "calendarDaily": "Καθημερινά",
- "calendarWeekly": "Εβδομαδιαία",
- "calendarMonthly": "Μηνιαίο",
- "calendarDays": "Ημέρες",
- "calendarSunday": "Κυριακή",
- "calendarMonday": "Δευτέρα",
- "calendarTuesday": "Τρίτη",
- "calendarWednesday": "Τετάρτη",
- "calendarThursday": "Πέμπτη",
- "calendarFriday": "Παρασκευή",
- "calendarSaturday": "Σάββατο",
- "attributeShowGeofences": "Εμφάνιση γεωφραγμάτων",
- "attributeSpeedLimit": "Όριο ταχύτητας",
- "attributeFuelDropThreshold": "Όριο πτώσης καυσίμου",
- "attributeFuelIncreaseThreshold": "Όριο αύξησης καυσίμου",
- "attributePolylineDistance": "Πολυγραμμική Απόσταση",
- "attributeReportIgnoreOdometer": "Αναφορά: Αγνόηση οδομέτρου",
- "attributeWebReportColor": "Διαδίκτυο: Χρώμα Αναφοράς",
- "attributeDevicePassword": "Κωδικός συσκευής",
- "attributeDeviceImage": "Εικόνα συσκευής",
- "attributeDeviceInactivityStart": "Αρχή αδράνειας συσκευής",
- "attributeDeviceInactivityPeriod": "Περίοδος αδράνειας συσκευής",
- "attributeProcessingCopyAttributes": "Επεξεργασία: Αντιγραφή Ιδιοτήτων",
- "attributeColor": "Χρώμα",
- "attributeWebLiveRouteLength": "Ιστός: Μήκος Ζωντανής Διαδρομής",
- "attributeWebSelectZoom": "Ιστός: Επιλογή μεγέθυνσης",
- "attributeWebMaxZoom": "Διαδίκτυο: Μέγιστη Μεγέθυνση",
- "attributeTelegramChatId": "Αναγνωριστικό συνομιλίας Telegram",
- "attributePushoverUserKey": "Κλειδί χρήστη Pushover",
- "attributePushoverDeviceNames": "Ονόματα συσκευών Pushover",
- "attributeMailSmtpHost": "Αλληλογραφία: Εξυπηρετητής SMTP",
- "attributeMailSmtpPort": "Αλληλογραφία: Θύρα SMTP",
- "attributeMailSmtpStarttlsEnable": "Αλληλογραφία: Ενεργοποίηση SMTP STARTLLS",
- "attributeMailSmtpStarttlsRequired": "Αλληλογραφία: Απαιτούμενο SMTP STARTLLS",
- "attributeMailSmtpSslEnable": "Αλληλογραφία: Ενεργοποίηση SMTP SSL",
- "attributeMailSmtpSslTrust": "Αλληλογραφία: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Αλληλογραφία: SMTP SSL Πρωτόκολλα",
- "attributeMailSmtpFrom": "Αλληλογραφία: SMTP Από",
- "attributeMailSmtpAuth": "Αλληλογραφία: Ενεργοποίηση Πιστοποίησης SMTP",
- "attributeMailSmtpUsername": "Αλληλογραφία: Κωδικός SMTP",
- "attributeMailSmtpPassword": "Αλληλογραφία: SMTP Συνθηματικό",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "Διεπαφή: Απενεργοποίηση χαρακτηριστικών",
- "attributeUiDisableGroups": "Διεπαφή: Απενεργοποίηση ομάδων",
- "attributeUiDisableEvents": "Διεπαφή: Απενεργοποίηση Γεγονότων",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "Διεπαφή: Απενεργοποίηση Οδηγών",
- "attributeUiDisableComputedAttributes": "Διεπαφή: Απενεργοποίηση Υπολογισμένων Ιδιοτήτων",
- "attributeUiDisableCalendars": "Διεπαφή: Απενεργοποίηση Ημερολογίων",
- "attributeUiDisableMaintenance": "Διεπαφή: Απενεργοποίηση συντήρησης",
- "attributeUiHidePositionAttributes": "Διεπαφή: Απόκρυψη Ιδιοτήτων Θέσης",
- "attributeUiDisableLoginLanguage": "Διεπαφή: Απενεργοποίηση γλώσσας σύνδεσης",
- "attributeNotificationTokens": "Διακριτικά ειδοποίησης",
- "attributePopupInfo": "Αναδυόμενη πληροφορία",
- "errorTitle": "Σφάλμα",
- "errorGeneral": "Μη έγκυρες παράμετροι ή παραβίαση περιορισμών",
- "errorConnection": "Σφάλμα σύνδεσης",
- "errorSocket": "Σφάλμα σύνδεσης στο διαδίκτυο",
- "errorZero": "Δεν μπορεί να είναι μηδέν",
- "userEmail": "Ηλ. διεύθυνση",
- "userPassword": "Συνθηματικό",
- "userAdmin": "Διαχειριστής",
- "userRemember": "Απομνημόνευση",
- "userExpirationTime": "Λήξη",
- "userDeviceLimit": "Όριο συσκευής",
- "userUserLimit": "Όριο χρήστη",
- "userDeviceReadonly": "Συσκευή μόνο για Ανάγνωση",
- "userLimitCommands": "Όριο Εντολών",
- "userDisableReports": "Απανεργοποίηση αναφορών",
- "userFixedEmail": "Δεν επιτρέπεται η αλλαγή email",
- "userToken": "Λεκτικό",
- "userDeleteAccount": "Διαγραφή λογαριασμού",
- "userTemporary": "Temporary",
- "loginTitle": "Σύνδεση",
- "loginLanguage": "Γλώσσα",
- "loginReset": "Επαναφορά κωδικού",
- "loginRegister": "Εγγραφή",
- "loginLogin": "Σύνδεση",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Εσφαλμένη διεύθυνση ή εσφαλμένο συνθηματικό",
- "loginCreated": "Ο νέος χρήστης καταχωρήθηκε.",
- "loginResetSuccess": "Ελέγξτε τα email σας",
- "loginUpdateSuccess": "Το νέο συνθηματικό αποθηκεύθηκε",
- "loginLogout": "Αποσύνδεση",
- "loginLogo": "Λογότυπο",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Κατάσταση συσκευών",
- "deviceSelected": "Επιλεγμένη συσκευή",
- "deviceTitle": "Συσκευές",
- "devicePrimaryInfo": "Τίτλος συσκευής",
- "deviceSecondaryInfo": "Λεπτομέρεια συσκευής",
- "deviceIdentifier": "Αναγνωριστικό",
- "deviceModel": "Μοντέλο",
- "deviceContact": "Επαφή",
- "deviceCategory": "Κατηγορία",
- "deviceLastUpdate": "Τελευταία ενημέρωση",
- "deviceCommand": "Εντολή",
- "deviceFollow": "Ακολουθώ",
- "deviceTotalDistance": "Συνολική απόσταση",
- "deviceStatus": "Κατάσταση",
- "deviceStatusOnline": "Σε σύνδεση",
- "deviceStatusOffline": "Χωρίς σύνδεση",
- "deviceStatusUnknown": "Άγνωστο",
- "deviceRegisterFirst": "Καταχωρίστε την πρώτη σας συσκευή",
- "deviceIdentifierHelp": "IMEI, σειριακός αριθμός ή άλλο αναγνωριστικό. Πρέπει να ταιριάζει με τις αναφορές της συσκευής στον διακομιστή.",
- "deviceShare": "Share Device",
- "groupDialog": "Ομάδα",
- "groupParent": "Ομάδα",
- "groupNoGroup": "Χωρίς Ομάδα",
- "settingsTitle": "Ρυθμίσεις",
- "settingsUser": "Λογαριασμός",
- "settingsGroups": "Ομάδες",
- "settingsServer": "Εξυπηρετητής",
- "settingsUsers": "Χρήστες",
- "settingsDistanceUnit": "Μονάδα Απόστασης",
- "settingsAltitudeUnit": "Υψομετρική Μονάδα",
- "settingsSpeedUnit": "Μονάδα Ταχύτητας",
- "settingsVolumeUnit": "Μονάδα Όγκου",
- "settingsTwelveHourFormat": "12ώρη μορφή",
- "settingsCoordinateFormat": "Τύπος Συντεταγμένων",
- "settingsServerVersion": "Έκδοση διακομιστή",
- "settingsAppVersion": "Έκδοση εφαρμογής",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Αναφορές",
- "reportScheduled": "Προγραμματισμένες αναφορές",
- "reportDevice": "Συσκευή",
- "reportGroup": "Ομάδα",
- "reportFrom": "Από",
- "reportTo": "Έως",
- "reportShow": "Προβολή",
- "reportClear": "Καθαρισμός",
- "linkGoogleMaps": "Χάρτες Google",
- "linkAppleMaps": "Χάρτες Apple",
- "linkStreetView": "Street View",
- "positionFixTime": "Διόρθωση χρόνου",
- "positionDeviceTime": "Χρόνος συσκευής",
- "positionServerTime": "Χρόνος Διακομιστή",
- "positionValid": "Έγκυρο",
- "positionAccuracy": "Ακρίβεια",
- "positionLatitude": "Γ. πλάτος",
- "positionLongitude": "Γ. μήκος",
- "positionAltitude": "Υψόμετρο",
- "positionSpeed": "Ταχύτητα",
- "positionCourse": "Πορεία",
- "positionAddress": "Διεύθυνση",
- "positionProtocol": "Πρωτόκολλο",
- "positionDistance": "Απόσταση",
- "positionRpm": "ΣΑΛ",
- "positionFuel": "Καύσιμο",
- "positionPower": "Ισχύς",
- "positionBattery": "Συσσωρευτής",
- "positionRaw": "Ακατέργαστο",
- "positionIndex": "Δείκτης",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Δορυφόροι",
- "positionSatVisible": "Ορατοί Δορυφόροι",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Περιαγωγή",
- "positionEvent": "Γεγονός",
- "positionAlarm": "Συναγερμός",
- "positionStatus": "Κατάσταση",
- "positionOdometer": "Οδόμετρο",
- "positionServiceOdometer": "Οδόμετρο Σέρβις",
- "positionTripOdometer": "Οδόμετρο Διαδρομής",
- "positionHours": "Ώρες",
- "positionSteps": "Βήματα",
- "positionInput": "Είσοδος",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Έξοδος",
- "positionBatteryLevel": "Επίπεδο Συσσωρευτή",
- "positionFuelConsumption": "Κατανάλωση καυσίμου",
- "positionRfid": "RFID",
- "positionVersionFw": "Έκδοση λογισμικού",
- "positionVersionHw": "Έκδοση υλικού",
- "positionIgnition": "Ανάφλεξη",
- "positionFlags": "Σημαίες",
- "positionCharge": "Φόρτιση",
- "positionIp": "IP",
- "positionArchive": "Αρχείο",
- "positionVin": "VIN",
- "positionApproximate": "Κατά προσέγγιση",
- "positionThrottle": "Γκάζι",
- "positionMotion": "Κίνηση",
- "positionArmed": "Οπλισμένο",
- "positionAcceleration": "Επιτάχυνση",
- "positionTemp": "Θερμοκρασία",
- "positionDeviceTemp": "Θερμοκρασία συσκευής",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Χειριστής",
- "positionCommand": "Εντολή",
- "positionBlocked": "Αποκλεισμένο",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Ταχύτητα OBD",
- "positionObdOdometer": "Χιλιομετρητής OBD",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Αναγνωριστικό οδηγού",
- "positionCard": "Card",
- "positionImage": "Εικόνα",
- "positionVideo": "Βίντεο",
- "positionAudio": "Ήχος",
- "serverTitle": "Ρυθμίσεις εξυπηρετητή",
- "serverZoom": "Εστίαση",
- "serverRegistration": "Εγγραφή",
- "serverReadonly": "Μόνο για ανάγνωση",
- "serverForceSettings": "Επιβολή ρυθμίσεων",
- "serverAnnouncement": "Αναγγελία",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Χάρτης",
- "mapActive": "Ενεργοί Χάρτες",
- "mapOverlay": "Υπέρθεση Χάρτη",
- "mapOverlayCustom": "Προσαρμοσμένη Υπέρθεση",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Επιλογή χάρτη",
- "mapCustom": "Προσαρμοσμένο (XYZ)",
- "mapCustomArcgis": "Προσαρμοσμένο (ArcGIS)",
- "mapCustomLabel": "Προσαρμοσμένος χάρτης",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "OpenTopoMap",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Κλειδί Bing Maps",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Χαρτογραφική υπηρεσία",
- "mapMapboxStreets": "Οδικός Mapbox",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Υπαίθριος Mapbox",
- "mapMapboxSatellite": "Δορυφορικός Mapbox",
- "mapMapboxKey": "Mapbox Διακριτικό Πρόσβασης",
- "mapMapTilerBasic": "Βασικός MapTiler",
- "mapMapTilerHybrid": "Υβριδικός MapTiler",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "Οδική ΤοποθεσίαIQ",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Πολύγωνο",
- "mapShapeCircle": "Κύκλος",
- "mapShapePolyline": "Πολύγραμμο",
- "mapLiveRoutes": "Ζωντανές διαδρομές",
- "mapDirection": "Εμφάνιση κατεύθυνσης",
- "mapCurrentLocation": "Τρέχουσα τοποθεσία",
- "mapPoiLayer": "Επίπεδο POI",
- "mapClustering": "Ομαδοποίηση δεικτών",
- "mapOnSelect": "Εμφάνιση χάρτη κατά την επιλογή",
- "mapDefault": "Προεπιλεγμένος χάρτης",
- "stateTitle": "Κατάσταση",
- "stateName": "Παράμετρος",
- "stateValue": "Τιμή",
- "commandTitle": "Εντολή",
- "commandSend": "Αποστολή",
- "commandSent": "Εντολή εστάλη",
- "commandQueued": "Εντολή σε ουρά",
- "commandUnit": "Μονάδα",
- "commandCustom": "Προσαρμοσμένη εντολή",
- "commandDeviceIdentification": "Αναγνωριστικό συσκευής",
- "commandPositionSingle": "Ενιαία αναφορά",
- "commandPositionPeriodic": "Περιοδικές αναφορές",
- "commandPositionStop": "Λήξη αναφορών",
- "commandEngineStop": "Κλείσιμο",
- "commandEngineResume": "Επανεκκίνηση",
- "commandAlarmArm": "Ενεργοποίηση συναγερμού",
- "commandAlarmDisarm": "Απενεργοποίηση συναγερμού",
- "commandAlarmDismiss": "Απενεργοποίηση συναγερμού",
- "commandSetTimezone": "Καθορισμός ζώνης ώρας",
- "commandRequestPhoto": "Αίτημα για φωτογραφία",
- "commandPowerOff": "Απενεργοποίηση συσκευής",
- "commandRebootDevice": "Επανεκκίνηση συσκευής",
- "commandFactoryReset": "Επαναφορά εργοστασιακών ρυθμίσεων",
- "commandSendSms": "Αποστολή γραπτού μηνύματος (SMS)",
- "commandSendUssd": "Αποστολή USSD",
- "commandSosNumber": "Καθορισμός αριθμού SOS",
- "commandSilenceTime": "Καθορισμός χρόνου σιωπής",
- "commandSetPhonebook": "Καθορισμός τηλεφωνικού καταλόγου",
- "commandVoiceMessage": "Φωνητικό μήνυμα",
- "commandOutputControl": "Έλεγχος αποτελεσμάτων",
- "commandVoiceMonitoring": "Παρακολούθηση Φωνής",
- "commandSetAgps": "Ρύθμιση AGPS",
- "commandSetIndicator": "Θέσε Δείκτη",
- "commandConfiguration": "Διαμόρφωση",
- "commandGetVersion": "Λήψη Έκδοσης",
- "commandFirmwareUpdate": "Ενημέρωση λογισμικού",
- "commandSetConnection": "Θέσε Σύνδεση",
- "commandSetOdometer": "Θέσε Οδόμετρο",
- "commandGetModemStatus": "Λήψη Κατάσταση Αποδιαμορφωτή",
- "commandGetDeviceStatus": "Λήψη Κατάστασης Συσκευής",
- "commandSetSpeedLimit": "Ρύθμιση ορίου ταχύτητας",
- "commandModePowerSaving": "Λειτουργία εξοικονόμησης ενέργειας",
- "commandModeDeepSleep": "Λειτουργία βαθύ ύπνου",
- "commandAlarmGeofence": "Ρύθμιση συναγερμού Geofence",
- "commandAlarmBattery": "Ρύθμιση συναγερμού μπαταρίας",
- "commandAlarmSos": "Ρύθμιση συναγερμού SOS",
- "commandAlarmRemove": "Ρύθμιση αφαίρεσης συναγερμού",
- "commandAlarmClock": "Ρύθμιση ξυπνητηριού",
- "commandAlarmSpeed": "Ρύθμιση συναγερμού ταχύτητας",
- "commandAlarmFall": "Ρύθμιση συναγερμού πτώσης",
- "commandAlarmVibration": "Ρύθμιση συναγερμού κραδασμών",
- "commandFrequency": "Συχνότητα",
- "commandTimezone": "Μετατόπιση ζώνης ώρας",
- "commandMessage": "Μήνυμα",
- "commandRadius": "Ακτίνα",
- "commandEnable": "Ενεργοποίηση",
- "commandData": "Δεδομένα",
- "commandIndex": "Δείκτης",
- "commandPhone": "Τηλεφωνικός αριθμός",
- "commandServer": "Εξυπηρετητής",
- "commandPort": "Θύρα",
- "eventAll": "Όλα τα γεγονότα",
- "eventDeviceOnline": "Κατάσταση σε σύνδεση",
- "eventDeviceUnknown": "Άγνωστη κατάσταση",
- "eventDeviceOffline": "Κατάσταση εκτός σύνδεσης",
- "eventDeviceInactive": "Αδρανής συσκευή",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Συσκευή εν κινήσει",
- "eventDeviceStopped": "Συσκευή σε στάση",
- "eventDeviceOverspeed": "Υπέρβαση ορίου ταχύτητας",
- "eventDeviceFuelDrop": "Πτώση καυσίμων",
- "eventDeviceFuelIncrease": "Αύξηση καυσίμου",
- "eventCommandResult": "Αποτέλεσμα εντολής",
- "eventGeofenceEnter": "Είσοδος σε γεωφράκτη",
- "eventGeofenceExit": "Έξοδος από γεωφράκτη",
- "eventAlarm": "Συναγερμός",
- "eventIgnitionOn": "Μηχανή αναμμένη",
- "eventIgnitionOff": "Μηχανή σβηστή",
- "eventMaintenance": "Απαιτείται συντήρηση",
- "eventTextMessage": "Ελήφθη γραπτό μήνυμα",
- "eventDriverChanged": "Ο οδηγός άλλαξε",
- "eventMedia": "Media",
- "eventsScrollToLast": "Κύλιση στο τέλος",
- "eventsSoundEvents": "Ήχοι Ειδοποιήσεων",
- "eventsSoundAlarms": "Ήχοι Συναγερμού",
- "alarmGeneral": "Γενικά",
- "alarmSos": "SOS",
- "alarmVibration": "Δόνηση",
- "alarmMovement": "Κίνηση",
- "alarmLowspeed": "Χαμηλή ταχύτητα",
- "alarmOverspeed": "Υπέρβαση ορίου ταχύτητας",
- "alarmFallDown": "Πτώση",
- "alarmLowPower": "Χαμηλή ισχύς",
- "alarmLowBattery": "Χαμηλή μπαταρία",
- "alarmFault": "Σφάλμα",
- "alarmPowerOff": "Απενεργοποίηση",
- "alarmPowerOn": "Ενεργοποίηση",
- "alarmDoor": "Πόρτα",
- "alarmLock": "Κλείδωμα",
- "alarmUnlock": "Ξεκλείδωμα",
- "alarmGeofence": "Γεωφράκτης",
- "alarmGeofenceEnter": "Είσοδος σε γεωφράκτη",
- "alarmGeofenceExit": "Είσοδος από γεωφράκτη",
- "alarmGpsAntennaCut": "Αποκοπή κεραίας GPS",
- "alarmAccident": "Ατύχημα",
- "alarmTow": "Ρυμούλκηση",
- "alarmIdle": "Αδρανές",
- "alarmHighRpm": "Υψηλές στροφές μηχανής",
- "alarmHardAcceleration": "Απότομη επιτάχυνση",
- "alarmHardBraking": "Απότομο φρενάρισμα",
- "alarmHardCornering": "Απότομο στρίψιμο",
- "alarmLaneChange": "Αλλαγή λωρίδας",
- "alarmFatigueDriving": "Κόπωση Οδήγησης",
- "alarmPowerCut": "Απώλεια ενέργειας",
- "alarmPowerRestored": "Ισχύς αποκαταστάθηκε",
- "alarmJamming": "Παρεμβολές",
- "alarmTemperature": "Θερμοκρασία",
- "alarmParking": "Στάθμευση",
- "alarmBonnet": "Καπό",
- "alarmFootBrake": "Ποδόφρενο",
- "alarmFuelLeak": "Διαρροή καυσίμου",
- "alarmTampering": "Παραποίηση",
- "alarmRemoving": "Αφαίρεση",
- "notificationType": "Τύπος ειδοποίησης",
- "notificationAlways": "Όλες οι συσκευές",
- "notificationNotificators": "Κανάλια",
- "notificatorCommand": "Εντολή",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Επανάληψη",
- "reportCombined": "Σε συνδυασμό",
- "reportRoute": "Διαδρομή",
- "reportEvents": "Γεγονότα",
- "reportTrips": "Ταξίδια",
- "reportStops": "Στάσεις",
- "reportSummary": "Περίληψη",
- "reportDaily": "Επισκόπιση ημέρας",
- "reportChart": "Διάγραμμα",
- "reportConfigure": "Διαμόρφωση",
- "reportEventTypes": "Tύποι γεγονότος",
- "reportChartType": "Τύπος διαγράμματος",
- "reportShowMarkers": "Δείξε Δείκτες",
- "reportExport": "Εξαγωγή",
- "reportEmail": "Αποστολή αναφοράς με email",
- "reportSchedule": "Πρόγραμμα",
- "reportPeriod": "Περίοδος",
- "reportCustom": "Προσαρμοσμένος",
- "reportToday": "Σήμερα",
- "reportYesterday": "Χθες",
- "reportThisWeek": "Τρέχουσα Εβδομάδα",
- "reportPreviousWeek": "Προηγούμενη Εβδομάδα",
- "reportThisMonth": "Τρέχων Μήνας",
- "reportPreviousMonth": "Προηγούμενος Μήνας",
- "reportDeviceName": "Όνομα συσκευής",
- "reportAverageSpeed": "Μέση ταχύτητα",
- "reportMaximumSpeed": "Μέγιστη ταχύτητα",
- "reportEngineHours": "Ώρες Μηχανής",
- "reportDuration": "Διάρκεια",
- "reportStartDate": "Ημερομηνία έναρξης",
- "reportStartTime": "Ώρα έναρξης",
- "reportStartAddress": "Διεύθυνση αφετηρίας",
- "reportEndTime": "Ώρα λήξης",
- "reportEndAddress": "Διεύθυνση τερματισμού",
- "reportSpentFuel": "Κατανάλωση καυσίμων",
- "reportStartOdometer": "Έναρξη χιλιομετρητή",
- "reportEndOdometer": "Τέλος χιλιομετρητή",
- "statisticsTitle": "Στατιστικά",
- "statisticsCaptureTime": "Ώρα Καταγραφής",
- "statisticsActiveUsers": "Ενεργοί Χρήστες",
- "statisticsActiveDevices": "Ενεργές Συσκευές",
- "statisticsRequests": "Αιτήματα",
- "statisticsMessagesReceived": "Εισερχόμενα Μυνήματα",
- "statisticsMessagesStored": "Αποθηκευμένα Μυνήματα",
- "statisticsGeocoder": "Αιτήματα Γεωκωδικοποιητή",
- "statisticsGeolocation": "Αιτήματα Γεωτοποθέτησης",
- "categoryArrow": "Βέλος",
- "categoryDefault": "Προκαθορισμένο",
- "categoryAnimal": "Ζώο",
- "categoryBicycle": "Ποδήλατο",
- "categoryBoat": "Πλοίο",
- "categoryBus": "Λεωφορείο",
- "categoryCar": "Αυτοκίνητο",
- "categoryCamper": "Camper",
- "categoryCrane": "Γερανός",
- "categoryHelicopter": "Ελικόπτερο",
- "categoryMotorcycle": "Μοτοσικλέτα",
- "categoryOffroad": "Εκτός δρόμου",
- "categoryPerson": "Άτομο",
- "categoryPickup": "Αγροτικό",
- "categoryPlane": "Αεροπλάνο",
- "categoryShip": "Πλοίο",
- "categoryTractor": "Ρυμουλκό",
- "categoryTrain": "Τραίνο",
- "categoryTram": "Τραμ",
- "categoryTrolleybus": "Τρόλεϊ",
- "categoryTruck": "Φορτηγό",
- "categoryVan": "Κλειστό Φορτηγό",
- "categoryScooter": "Σκούτερ",
- "maintenanceStart": "Εκκίνηση",
- "maintenancePeriod": "Περίοδος"
-} \ No newline at end of file
diff --git a/web/l10n/en.json b/web/l10n/en.json
deleted file mode 100644
index 45b2552f..00000000
--- a/web/l10n/en.json
+++ /dev/null
@@ -1,569 +0,0 @@
-{
- "sharedLoading": "Loading...",
- "sharedHide": "Hide",
- "sharedSave": "Save",
- "sharedSet": "Set",
- "sharedCancel": "Cancel",
- "sharedAdd": "Add",
- "sharedEdit": "Edit",
- "sharedRemove": "Remove",
- "sharedRemoveConfirm": "Remove item?",
- "sharedNoData": "No data",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Hour",
- "sharedMinute": "Minute",
- "sharedSecond": "Second",
- "sharedDays": "days",
- "sharedHours": "hours",
- "sharedMinutes": "minutes",
- "sharedDecimalDegrees": "Decimal Degrees",
- "sharedDegreesDecimalMinutes": "Degrees Decimal Minutes",
- "sharedDegreesMinutesSeconds": "Degrees Minutes Seconds",
- "sharedName": "Name",
- "sharedDescription": "Description",
- "sharedSearch": "Search",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geofence",
- "sharedGeofences": "Geofences",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Notifications",
- "sharedNotification": "Notification",
- "sharedAttributes": "Attributes",
- "sharedAttribute": "Attribute",
- "sharedDrivers": "Drivers",
- "sharedDriver": "Driver",
- "sharedArea": "Area",
- "sharedSound": "Notification Sound",
- "sharedType": "Type",
- "sharedDistance": "Distance",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Get Map State",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "Expression",
- "sharedDevice": "Device",
- "sharedTest": "Test",
- "sharedTestNotification": "Send Test Notification",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Calendar",
- "sharedCalendars": "Calendars",
- "sharedFile": "File",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Select File",
- "sharedPhone": "Phone",
- "sharedRequired": "Required",
- "sharedPreferences": "Preferences",
- "sharedPermissions": "Permissions",
- "sharedConnections": "Connections",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Number",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Timezone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Speed Limit",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Report: Ignore Odometer",
- "attributeWebReportColor": "Web: Report Color",
- "attributeDevicePassword": "Device Password",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "Color",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Error",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "Connection error",
- "errorSocket": "Web socket connection error",
- "errorZero": "Can't be zero",
- "userEmail": "Email",
- "userPassword": "Password",
- "userAdmin": "Admin",
- "userRemember": "Remember",
- "userExpirationTime": "Expiration",
- "userDeviceLimit": "Device Limit",
- "userUserLimit": "User Limit",
- "userDeviceReadonly": "Device Readonly",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "loginTitle": "Login",
- "loginLanguage": "Language",
- "loginReset": "Reset Password",
- "loginRegister": "Register",
- "loginLogin": "Login",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Incorrect email address or password",
- "loginCreated": "New user has been registered",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Logout",
- "loginLogo": "Logo",
- "devicesAndState": "Devices and State",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Devices",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifier",
- "deviceModel": "Model",
- "deviceContact": "Contact",
- "deviceCategory": "Category",
- "deviceLastUpdate": "Last Update",
- "deviceCommand": "Command",
- "deviceFollow": "Follow",
- "deviceTotalDistance": "Total Distance",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Unknown",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "groupDialog": "Group",
- "groupParent": "Group",
- "groupNoGroup": "No Group",
- "settingsTitle": "Settings",
- "settingsUser": "Account",
- "settingsGroups": "Groups",
- "settingsServer": "Server",
- "settingsUsers": "Users",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "12-hour Format",
- "settingsCoordinateFormat": "Coordinates Format",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "reportTitle": "Reports",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Device",
- "reportGroup": "Group",
- "reportFrom": "From",
- "reportTo": "To",
- "reportShow": "Show",
- "reportClear": "Clear",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Valid",
- "positionAccuracy": "Accuracy",
- "positionLatitude": "Latitude",
- "positionLongitude": "Longitude",
- "positionAltitude": "Altitude",
- "positionSpeed": "Speed",
- "positionCourse": "Course",
- "positionAddress": "Address",
- "positionProtocol": "Protocol",
- "positionDistance": "Distance",
- "positionRpm": "RPM",
- "positionFuel": "Fuel",
- "positionPower": "Power",
- "positionBattery": "Battery",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Event",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hours",
- "positionSteps": "Steps",
- "positionInput": "Input",
- "positionOutput": "Output",
- "positionBatteryLevel": "Battery Level",
- "positionFuelConsumption": "Fuel Consumption",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Ignition",
- "positionFlags": "Flags",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Motion",
- "positionArmed": "Armed",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Device Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Command",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Server Settings",
- "serverZoom": "Zoom",
- "serverRegistration": "Registration",
- "serverReadonly": "Readonly",
- "serverForceSettings": "Force Settings",
- "serverAnnouncement": "Announcement",
- "mapTitle": "Map",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Map Layer",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polygon",
- "mapShapeCircle": "Circle",
- "mapShapePolyline": "Polyline",
- "mapLiveRoutes": "Live Routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "State",
- "stateName": "Attribute",
- "stateValue": "Value",
- "commandTitle": "Command",
- "commandSend": "Send",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "Unit",
- "commandCustom": "Custom command",
- "commandDeviceIdentification": "Device Identification",
- "commandPositionSingle": "Single Reporting",
- "commandPositionPeriodic": "Periodic Reporting",
- "commandPositionStop": "Stop Reporting",
- "commandEngineStop": "Engine Stop",
- "commandEngineResume": "Engine Resume",
- "commandAlarmArm": "Arm Alarm",
- "commandAlarmDisarm": "Disarm Alarm",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Set Timezone",
- "commandRequestPhoto": "Request Photo",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Reboot Device",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Send SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "Set SOS Number",
- "commandSilenceTime": "Set Silence Time",
- "commandSetPhonebook": "Set Phonebook",
- "commandVoiceMessage": "Voice Message",
- "commandOutputControl": "Output Control",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Set Indicator",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frequency",
- "commandTimezone": "Timezone Offset",
- "commandMessage": "Message",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Data",
- "commandIndex": "Index",
- "commandPhone": "Phone Number",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "All Events",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Command result",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Maintenance required",
- "eventTextMessage": "Text message received",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Type of Notification",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Route",
- "reportEvents": "Events",
- "reportTrips": "Trips",
- "reportStops": "Stops",
- "reportSummary": "Summary",
- "reportDaily": "Daily Summary",
- "reportChart": "Chart",
- "reportConfigure": "Configure",
- "reportEventTypes": "Event Types",
- "reportChartType": "Chart Type",
- "reportShowMarkers": "Show Markers",
- "reportExport": "Export",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "Device Name",
- "reportAverageSpeed": "Average Speed",
- "reportMaximumSpeed": "Maximum Speed",
- "reportEngineHours": "Engine Hours",
- "reportDuration": "Duration",
- "reportStartDate": "Start Date",
- "reportStartTime": "Start Time",
- "reportStartAddress": "Start Address",
- "reportEndTime": "End Time",
- "reportEndAddress": "End Address",
- "reportSpentFuel": "Spent Fuel",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Statistics",
- "statisticsCaptureTime": "Capture Time",
- "statisticsActiveUsers": "Active Users",
- "statisticsActiveDevices": "Active Devices",
- "statisticsRequests": "Requests",
- "statisticsMessagesReceived": "Messages Received",
- "statisticsMessagesStored": "Messages Stored",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Arrow",
- "categoryDefault": "Default",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicycle",
- "categoryBoat": "Boat",
- "categoryBus": "Bus",
- "categoryCar": "Car",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "Motorcycle",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Plane",
- "categoryShip": "Ship",
- "categoryTractor": "Tractor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Truck",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-}
diff --git a/web/l10n/es.json b/web/l10n/es.json
deleted file mode 100644
index a0405eb1..00000000
--- a/web/l10n/es.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Cargando…",
- "sharedHide": "Ocultar",
- "sharedSave": "Guardar",
- "sharedUpload": "Cargar",
- "sharedSet": "Establecer",
- "sharedCancel": "Cancelar",
- "sharedCopy": "Copiar",
- "sharedAdd": "Añadir",
- "sharedEdit": "Editar",
- "sharedRemove": "Eliminar",
- "sharedRemoveConfirm": "¿Eliminar elemento?",
- "sharedNoData": "Sin datos",
- "sharedSubject": "Asunto",
- "sharedYes": "Si",
- "sharedNo": "No",
- "sharedKm": "Km",
- "sharedMi": "MI",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "Nudos",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Hora",
- "sharedMinute": "Minuto",
- "sharedSecond": "Segundo",
- "sharedDays": "Días",
- "sharedHours": "Horas",
- "sharedMinutes": "minutos",
- "sharedDecimalDegrees": "Grados",
- "sharedDegreesDecimalMinutes": "Minutos",
- "sharedDegreesMinutesSeconds": "Segundos",
- "sharedName": "Nombre",
- "sharedDescription": "Descripción",
- "sharedSearch": "Buscar",
- "sharedIconScale": "Escala de los iconos",
- "sharedGeofence": "Geo-Zona",
- "sharedGeofences": "Geo-Zonas",
- "sharedCreateGeofence": "Crear Geo-Zona",
- "sharedNotifications": "Notificaciones",
- "sharedNotification": "Notificación",
- "sharedAttributes": "Atributos",
- "sharedAttribute": "Atributo",
- "sharedDrivers": "Conductores",
- "sharedDriver": "Conductor",
- "sharedArea": "Área",
- "sharedSound": "Sonido de notificación",
- "sharedType": "Tipo",
- "sharedDistance": "Distancia",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "I",
- "sharedGallonAbbreviation": "Galón",
- "sharedLiter": "Litro",
- "sharedImpGallon": "Galón Imp.",
- "sharedUsGallon": "Galón U.S.",
- "sharedLiterPerHourAbbreviation": "L/h",
- "sharedGetMapState": "Obtener Estado del Mapa",
- "sharedComputedAttribute": "Atributo calculado",
- "sharedComputedAttributes": "Atributos calculados",
- "sharedCheckComputedAttribute": "Revisar atributo calculado",
- "sharedExpression": "Expresión",
- "sharedDevice": "Dispositivo",
- "sharedTest": "Test",
- "sharedTestNotification": "Enviar notificación de prueba",
- "sharedTestNotificators": "Canales Test",
- "sharedTestExpression": "Expresión Test",
- "sharedCalendar": "Calendario",
- "sharedCalendars": "Calendarios",
- "sharedFile": "Archivo",
- "sharedSearchDevices": "Buscar Dispositivos",
- "sharedSortBy": "Ordenar por",
- "sharedFilterMap": "Filtrar en Mapa",
- "sharedSelectFile": "Seleccione archivo",
- "sharedPhone": "Teléfono",
- "sharedRequired": "Obligatorio",
- "sharedPreferences": "Preferencias",
- "sharedPermissions": "Permisos",
- "sharedConnections": "Conexiones",
- "sharedExtra": "Extra",
- "sharedPrimary": "Principal",
- "sharedSecondary": "Secundario",
- "sharedTypeString": "Cadena",
- "sharedTypeNumber": "Número",
- "sharedTypeBoolean": "Booleano",
- "sharedTimezone": "Zona Horaria",
- "sharedInfoTitle": "Información",
- "sharedSavedCommand": "Comando guardado",
- "sharedSavedCommands": "Comandos guardados",
- "sharedNew": "Nuevo…",
- "sharedShowAddress": "Mostrar calle",
- "sharedShowDetails": "Más detalles",
- "sharedDisabled": "Deshabilitado",
- "sharedMaintenance": "Mantenimientos",
- "sharedDeviceAccumulators": "Acumulador",
- "sharedAlarms": "Alarmas",
- "sharedLocation": "Ubicación",
- "sharedImport": "Importar",
- "sharedColumns": "Columnas",
- "sharedDropzoneText": "Arrastra y suelta el archivo aquí o pulsa",
- "sharedLogs": "Registros",
- "sharedLink": "Enlace",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrente",
- "calendarOnce": "Una vez",
- "calendarDaily": "Diario",
- "calendarWeekly": "Semanal",
- "calendarMonthly": "Mensual",
- "calendarDays": "Días",
- "calendarSunday": "Domingo",
- "calendarMonday": "Lunes",
- "calendarTuesday": "Martes",
- "calendarWednesday": "Miércoles",
- "calendarThursday": "Jueves",
- "calendarFriday": "Viernes",
- "calendarSaturday": "Sábado",
- "attributeShowGeofences": "Mostrar Geo-Zonas",
- "attributeSpeedLimit": "Límite de velocidad",
- "attributeFuelDropThreshold": "Umbral de pérdida de combustible",
- "attributeFuelIncreaseThreshold": "Umbral del subida de combustible",
- "attributePolylineDistance": "Distancia de polilínea",
- "attributeReportIgnoreOdometer": "Informe: Ignorar el odómetro",
- "attributeWebReportColor": "Web: Color de informe",
- "attributeDevicePassword": "Contraseña de dispositivo",
- "attributeDeviceImage": "Imagen del dispositivo",
- "attributeDeviceInactivityStart": "Inicio de inactividad del dispositivo",
- "attributeDeviceInactivityPeriod": "Periodo de inactividad del dispositivo",
- "attributeProcessingCopyAttributes": "Procesando: Copia de atributos",
- "attributeColor": "Color",
- "attributeWebLiveRouteLength": "Web: Longitud de la ruta en directo",
- "attributeWebSelectZoom": "Web: hacer zoom al seleccionar",
- "attributeWebMaxZoom": "Web: Zoom máximo",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Nombres de Dispositivo",
- "attributeMailSmtpHost": "Correo: Servidor SMTP",
- "attributeMailSmtpPort": "Correo: Puerto SMTP",
- "attributeMailSmtpStarttlsEnable": "Correo: Activar SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "Correo: SMTP STARTTLS requerido",
- "attributeMailSmtpSslEnable": "Correo: Activar SMTP SSL",
- "attributeMailSmtpSslTrust": "Correo: SMTP SSL de confianza",
- "attributeMailSmtpSslProtocols": "Correo: protocolos SMTP SSL",
- "attributeMailSmtpFrom": "Correo: SMTP desde",
- "attributeMailSmtpAuth": "Correo: Activar autenticación SMTP",
- "attributeMailSmtpUsername": "Correo: Nombre de usuario SMTP",
- "attributeMailSmtpPassword": "Correo: Contraseña SMTP",
- "attributeUiDisableSavedCommands": "UI: Deshabilitar Comandos guardados",
- "attributeUiDisableAttributes": "UI: Deshabilitar Atributos",
- "attributeUiDisableGroups": "UI: Deshabilitar Grupos",
- "attributeUiDisableEvents": "UI: Deshabilitar panel Eventos",
- "attributeUiDisableVehicleFeatures": "UI: Desactivar características del vehículo",
- "attributeUiDisableDrivers": "UI: Desactivar Conductores",
- "attributeUiDisableComputedAttributes": "UI: Desactivar Atributos calculados",
- "attributeUiDisableCalendars": "UI: Desactivar Calendario",
- "attributeUiDisableMaintenance": "UI: Deshabilitar Mantenimiento",
- "attributeUiHidePositionAttributes": "UI: Ocultar Atributos de Posición",
- "attributeUiDisableLoginLanguage": "UI: Deshabilitar Idioma de inicio de sesión",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Información popup",
- "errorTitle": "Error",
- "errorGeneral": "Parámetros no válidos o fuera de los límites",
- "errorConnection": "Error en la conexión",
- "errorSocket": "Error del Web-Socket",
- "errorZero": "No puede ser cero",
- "userEmail": "Email",
- "userPassword": "Contraseña",
- "userAdmin": "Administrador",
- "userRemember": "Recordar",
- "userExpirationTime": "Caducidad",
- "userDeviceLimit": "Límite de dispositivos",
- "userUserLimit": "Límite de usuarios",
- "userDeviceReadonly": "Dispositivo de solo lectura",
- "userLimitCommands": "Limitar Comandos",
- "userDisableReports": "Deshabilitar Informes",
- "userFixedEmail": "No cambiar email",
- "userToken": "Token Acceso",
- "userDeleteAccount": "Borrar cuenta",
- "userTemporary": "Temporal",
- "loginTitle": "Iniciar sesión",
- "loginLanguage": "Idioma",
- "loginReset": "Reiniciar contraseña",
- "loginRegister": "Registrarse",
- "loginLogin": "Iniciar sesión",
- "loginOpenId": "Iniciar sesión con OpenID",
- "loginFailed": "Email o contraseña incorrecta",
- "loginCreated": "Se ha registrado un nuevo usuario",
- "loginResetSuccess": "Comprueba tu email",
- "loginUpdateSuccess": "Se ha creado la nueva contraseña",
- "loginLogout": "Cerrar Sesión",
- "loginLogo": "Logotipo",
- "loginTotpCode": "Código de un solo uso",
- "loginTotpKey": "Llave de un solo uso",
- "devicesAndState": "Dispositivos y Estado",
- "deviceSelected": "Dispositivo seleccionado",
- "deviceTitle": "Dispositivos",
- "devicePrimaryInfo": "Título del dispositivo",
- "deviceSecondaryInfo": "Detalles del dispositivo",
- "deviceIdentifier": "Identificador",
- "deviceModel": "Modelo",
- "deviceContact": "Contacto",
- "deviceCategory": "Categoría",
- "deviceLastUpdate": "Última Actualización",
- "deviceCommand": "Comando",
- "deviceFollow": "Seguir",
- "deviceTotalDistance": "Distancia Total",
- "deviceStatus": "Estado",
- "deviceStatusOnline": "En línea",
- "deviceStatusOffline": "Fuera de línea",
- "deviceStatusUnknown": "Desconocido",
- "deviceRegisterFirst": "Registre su primer dispositivo",
- "deviceIdentifierHelp": "El IMEI, numero de serie u otro id, tiene que ser igual que el identificador del dispositivo que reporta al servidor.",
- "deviceShare": "Compartir dispositivo",
- "groupDialog": "Grupo",
- "groupParent": "Grupo",
- "groupNoGroup": "Sin grupo",
- "settingsTitle": "Ajustes",
- "settingsUser": "Cuenta",
- "settingsGroups": "Grupos",
- "settingsServer": "Servidor",
- "settingsUsers": "Usuarios",
- "settingsDistanceUnit": "Unidad de Distancia",
- "settingsAltitudeUnit": "Unidad de Altitud",
- "settingsSpeedUnit": "Unidad de Velocidad",
- "settingsVolumeUnit": "Unidad de Volumen",
- "settingsTwelveHourFormat": "Formato de 12h.",
- "settingsCoordinateFormat": "Formato de Coordenadas",
- "settingsServerVersion": "Versión del servidor",
- "settingsAppVersion": "Versión de la app",
- "settingsConnection": "Conexión",
- "settingsDarkMode": "Modo Oscuro",
- "settingsTotpEnable": "Activar contraseña de un solo uso",
- "settingsTotpForce": "Forzar contraseña de un solo uso",
- "settingsServiceWorkerUpdateInterval": "Intervalo de actualización del ServiceWorker",
- "settingsUpdateAvailable": "Hay una actualización disponible.",
- "settingsSupport": "Soporte",
- "reportTitle": "Reportes",
- "reportScheduled": "Reportes Programados",
- "reportDevice": "Dispositivos",
- "reportGroup": "Grupo",
- "reportFrom": "Desde",
- "reportTo": "Hasta",
- "reportShow": "Mostrar",
- "reportClear": "Limpiar",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Hora ajustada",
- "positionDeviceTime": "Hora del dispositivo",
- "positionServerTime": "Hora del Servidor",
- "positionValid": "Válida",
- "positionAccuracy": "Precisión",
- "positionLatitude": "Latitud",
- "positionLongitude": "Longitud",
- "positionAltitude": "Altitud",
- "positionSpeed": "Velocidad",
- "positionCourse": "Rumbo",
- "positionAddress": "Dirección Calle",
- "positionProtocol": "Protocolo",
- "positionDistance": "Distancia",
- "positionRpm": "RPM",
- "positionFuel": "Combustible",
- "positionPower": "Energía",
- "positionBattery": "Batería",
- "positionRaw": "Crudo",
- "positionIndex": "Índice / Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satélites",
- "positionSatVisible": "Satélites Visibles",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Evento",
- "positionAlarm": "Alarma",
- "positionStatus": "Estado",
- "positionOdometer": "Odómetro",
- "positionServiceOdometer": "Odómetro de mantenimiento",
- "positionTripOdometer": "Odómetro de viaje",
- "positionHours": "Horas",
- "positionSteps": "Pasos",
- "positionInput": "Entrada",
- "positionHeartRate": "Ritmo cardiaco",
- "positionOutput": "Salida",
- "positionBatteryLevel": "Nivel de batería",
- "positionFuelConsumption": "Consumo de combustible",
- "positionRfid": "RFDI",
- "positionVersionFw": "Versión de firmware",
- "positionVersionHw": "Versión de hardware",
- "positionIgnition": "Encendido",
- "positionFlags": "Banderas",
- "positionCharge": "Carga",
- "positionIp": "IP",
- "positionArchive": "Archivo",
- "positionVin": "VIN",
- "positionApproximate": "Aproximado",
- "positionThrottle": "Acelerador",
- "positionMotion": "Movimiento",
- "positionArmed": "Armado",
- "positionAcceleration": "Aceleración",
- "positionTemp": "Temperatura",
- "positionDeviceTemp": "Temperatura del dispositivo",
- "positionCoolantTemp": "Temperatura del Refrigerante",
- "positionOperator": "Operador",
- "positionCommand": "Comando",
- "positionBlocked": "Bloqueado",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Velocidad OBD",
- "positionObdOdometer": "Odómetro OBD",
- "positionDrivingTime": "Tiempo Conduciendo",
- "positionDriverUniqueId": "ID única del conductor",
- "positionCard": "Tarjeta",
- "positionImage": "Imagen",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Ajustes del servidor",
- "serverZoom": "Zoom",
- "serverRegistration": "Registro",
- "serverReadonly": "Solo lectura",
- "serverForceSettings": "Forzar estos ajustes",
- "serverAnnouncement": "Mostrar anuncio",
- "serverName": "Nombre del Servidor",
- "serverDescription": "Descripción del Servidor",
- "serverColorPrimary": "Color Primario",
- "serverColorSecondary": "Color Secundario",
- "serverLogo": "Imagen del Logo",
- "serverLogoInverted": "Imagen de logo invertida",
- "serverChangeDisable": "Deshabilitar el cambio de servidor",
- "serverDisableShare": "Deshabilitar poder Compartir Dispositivos",
- "mapTitle": "Mapa",
- "mapActive": "Mapas activos",
- "mapOverlay": "Capa sobre el mapa",
- "mapOverlayCustom": "Capa personalizada",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Capas del Mapa",
- "mapCustom": "Personalizado (XYZ)",
- "mapCustomArcgis": "ArcGIS Personalizado",
- "mapCustomLabel": "Mapa Personalizado",
- "mapCarto": "Carto",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Carreteras",
- "mapGoogleHybrid": "Google Híbrido",
- "mapGoogleSatellite": "Google Satélite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps - Carretera",
- "mapBingAerial": "Bing Maps - Aéreo",
- "mapBingHybrid": "Bing Maps - Híbrido",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex",
- "mapYandexSat": "Yandex Satélite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polígono",
- "mapShapeCircle": "Círculo",
- "mapShapePolyline": "Polilínea",
- "mapLiveRoutes": "Rutas en Directo",
- "mapDirection": "Mostrar dirección",
- "mapCurrentLocation": "Ubicación Actual",
- "mapPoiLayer": "Capa POI",
- "mapClustering": "Agrupar Marcadores",
- "mapOnSelect": "Mostrar Mapas en la selección",
- "mapDefault": "Mapa por defecto",
- "stateTitle": "Estado",
- "stateName": "Parámetro",
- "stateValue": "Valor",
- "commandTitle": "Comando",
- "commandSend": "Enviar",
- "commandSent": "Comando enviado",
- "commandQueued": "Comando en cola",
- "commandUnit": "Unidad",
- "commandCustom": "Comando personalizado",
- "commandDeviceIdentification": "Identificación de Dispositivo",
- "commandPositionSingle": "Informe Único",
- "commandPositionPeriodic": "Informe Periódico",
- "commandPositionStop": "Detener Informe",
- "commandEngineStop": "Apagar motor",
- "commandEngineResume": "Desbloquear Encendido de Motor",
- "commandAlarmArm": "Armar Alarma",
- "commandAlarmDisarm": "Desarmar Alarma",
- "commandAlarmDismiss": "Descartar Alarma",
- "commandSetTimezone": "Establecer Zona Horaria",
- "commandRequestPhoto": "Solicitar Foto",
- "commandPowerOff": "Apagar dispositivo",
- "commandRebootDevice": "Reiniciar dispositivo",
- "commandFactoryReset": "Valores de fábrica",
- "commandSendSms": "Enviar SMS",
- "commandSendUssd": "Enviar USSD",
- "commandSosNumber": "Establecer el número SOS",
- "commandSilenceTime": "Establecer horario de silencio",
- "commandSetPhonebook": "Establecer contacto",
- "commandVoiceMessage": "Mensaje de voz",
- "commandOutputControl": "Control de Salidas",
- "commandVoiceMonitoring": "Monitoreo de Voz",
- "commandSetAgps": "Establecer AGPS",
- "commandSetIndicator": "Establecer indicador",
- "commandConfiguration": "Configuración",
- "commandGetVersion": "Obtener Versión",
- "commandFirmwareUpdate": "Actualizar Firmware",
- "commandSetConnection": "Establecer Conexión",
- "commandSetOdometer": "Establecer Odómetro",
- "commandGetModemStatus": "Obtener Estatus de Módem",
- "commandGetDeviceStatus": "Obtener Estatus de Dispositivo",
- "commandSetSpeedLimit": "Establecer Límite de Velocidad",
- "commandModePowerSaving": "Modo Ahorro de Energía",
- "commandModeDeepSleep": "Modo Ahorro de Energía Profundo",
- "commandAlarmGeofence": "Establecer Alarma de Geo-Zona",
- "commandAlarmBattery": "Establecer Alarma de Batería",
- "commandAlarmSos": "Establecer Alarma de SOS",
- "commandAlarmRemove": "Establecer Alarma de Desmontaje",
- "commandAlarmClock": "Establecer Alarma de Hora",
- "commandAlarmSpeed": "Establecer Alarma de Velocidad",
- "commandAlarmFall": "Establecer Alarma de Caída",
- "commandAlarmVibration": "Establecer Alarma de Vibración",
- "commandFrequency": "Frequencia",
- "commandTimezone": "Compensación de zona horaria",
- "commandMessage": "Mensaje",
- "commandRadius": "Radio",
- "commandEnable": "Activado",
- "commandData": "Datos",
- "commandIndex": "Índice",
- "commandPhone": "Número de Teléfono",
- "commandServer": "Servidor",
- "commandPort": "Puerto",
- "eventAll": "Todos los eventos",
- "eventDeviceOnline": "Dispositivo en Línea",
- "eventDeviceUnknown": "Dispositivo en estado Desconocido",
- "eventDeviceOffline": "Dispositivo Fuera de Línea",
- "eventDeviceInactive": "Dispositivo Inactivo",
- "eventQueuedCommandSent": "Comando en cola enviado",
- "eventDeviceMoving": "Dispositivo en Movimiento",
- "eventDeviceStopped": "Dispositivo Detenido",
- "eventDeviceOverspeed": "Excedido el límite de Velocidad",
- "eventDeviceFuelDrop": "Perdida de Combustible ",
- "eventDeviceFuelIncrease": "Incremento de combustible",
- "eventCommandResult": "Resultado del comando",
- "eventGeofenceEnter": "Entrada en la Geo-Zona",
- "eventGeofenceExit": "Salida de la Geo-Zona",
- "eventAlarm": "Alarma ",
- "eventIgnitionOn": "Llave encendido ON",
- "eventIgnitionOff": "Llave encendido OFF",
- "eventMaintenance": "Se requiere mantenimiento",
- "eventTextMessage": "Mensaje de texto recibido",
- "eventDriverChanged": "El conductor ha cambiado",
- "eventMedia": "Media",
- "eventsScrollToLast": "Desplazarse hasta el último",
- "eventsSoundEvents": "Sonido para eventos",
- "eventsSoundAlarms": "Sonido para alarmas",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibración",
- "alarmMovement": "Movimiento",
- "alarmLowspeed": "Baja Velocidad",
- "alarmOverspeed": "Exceso de Velocidad ",
- "alarmFallDown": "Alarma de caída",
- "alarmLowPower": "Energía baja",
- "alarmLowBattery": "Batería Baja",
- "alarmFault": "Alarma de fallo",
- "alarmPowerOff": "Apagado",
- "alarmPowerOn": "Encendido",
- "alarmDoor": "Puerta",
- "alarmLock": "Bloqueado",
- "alarmUnlock": "Desbloquear",
- "alarmGeofence": "Geo-Zona",
- "alarmGeofenceEnter": "El Dispositivo ha entrado a la Geo-Zona",
- "alarmGeofenceExit": "El Dispositivo ha salido de la Geo-Zona",
- "alarmGpsAntennaCut": "Antena del GPS Cortada ",
- "alarmAccident": "Accidente",
- "alarmTow": "Grúa de arrastre",
- "alarmIdle": "Reposo",
- "alarmHighRpm": "Altas revoluciones",
- "alarmHardAcceleration": "Aceleración brusca",
- "alarmHardBraking": "Frenada extrema",
- "alarmHardCornering": "Giro brusco",
- "alarmLaneChange": "Cambio de carril",
- "alarmFatigueDriving": "Conducción fatigosa",
- "alarmPowerCut": "Energía desconectada",
- "alarmPowerRestored": "Energía restaurada",
- "alarmJamming": "Interferencia",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Aparcamiento",
- "alarmBonnet": "Capó",
- "alarmFootBrake": "Freno de pie",
- "alarmFuelLeak": "Fuga de combustible",
- "alarmTampering": "Manipulación",
- "alarmRemoving": "Eliminando",
- "notificationType": "Tipo de Notificación",
- "notificationAlways": "Todos los dispositivos",
- "notificationNotificators": "Canales",
- "notificatorCommand": "Comando",
- "notificatorWeb": "Web",
- "notificatorMail": "Correo",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Repetición Ruta",
- "reportCombined": "Combinado",
- "reportRoute": "Ruta",
- "reportEvents": "Eventos",
- "reportTrips": "Viajes",
- "reportStops": "Paradas",
- "reportSummary": "Resumen",
- "reportDaily": "Resumen diario",
- "reportChart": "Gráfica",
- "reportConfigure": "Configurar",
- "reportEventTypes": "Tipos de evento",
- "reportChartType": "Tipo de gráfica",
- "reportShowMarkers": "Mostrar marcadores",
- "reportExport": "Exportar",
- "reportEmail": "Informe por correo",
- "reportSchedule": "Planificación",
- "reportPeriod": "Período",
- "reportCustom": "Personalizado",
- "reportToday": "Hoy",
- "reportYesterday": "Ayer",
- "reportThisWeek": "Semana Actual",
- "reportPreviousWeek": "Semana Anterior",
- "reportThisMonth": "Mes Actual",
- "reportPreviousMonth": "Mes Anterior",
- "reportDeviceName": "Nombre",
- "reportAverageSpeed": "Velocidad media",
- "reportMaximumSpeed": "Velocidad máxima",
- "reportEngineHours": "Horas motor",
- "reportDuration": "Duración",
- "reportStartDate": "Fecha de inicio",
- "reportStartTime": "Hora de Inicio",
- "reportStartAddress": "Dirección de Inicio",
- "reportEndTime": "Hora de Fin",
- "reportEndAddress": "Dirección de Fin",
- "reportSpentFuel": "Combustible consumido",
- "reportStartOdometer": "Odómetro inicial",
- "reportEndOdometer": "Odómetro final",
- "statisticsTitle": "Estadísticas",
- "statisticsCaptureTime": "Fecha de captura",
- "statisticsActiveUsers": "Usuarios activos",
- "statisticsActiveDevices": "Dispositivos activos",
- "statisticsRequests": "Peticiones",
- "statisticsMessagesReceived": "Mensajes recibidos",
- "statisticsMessagesStored": "Mensajes almacenados",
- "statisticsGeocoder": "Solicitudes al codificador geográfico",
- "statisticsGeolocation": "Solicitudes de geolocalización",
- "categoryArrow": "Flecha",
- "categoryDefault": "Prederminado",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicicleta",
- "categoryBoat": "Barco",
- "categoryBus": "Autobús",
- "categoryCar": "Automóvil",
- "categoryCamper": "Camper",
- "categoryCrane": "Grúa",
- "categoryHelicopter": "Helicóptero",
- "categoryMotorcycle": "Motocicleta",
- "categoryOffroad": "Todoterreno",
- "categoryPerson": "Persona",
- "categoryPickup": "Pickup",
- "categoryPlane": "Avión",
- "categoryShip": "Barco",
- "categoryTractor": "Tractor",
- "categoryTrain": "Trén",
- "categoryTram": "Tranvía",
- "categoryTrolleybus": "Trolebús",
- "categoryTruck": "Camión",
- "categoryVan": "Furgoneta",
- "categoryScooter": "Moto",
- "maintenanceStart": "Iniciar",
- "maintenancePeriod": "Período"
-} \ No newline at end of file
diff --git a/web/l10n/fa.json b/web/l10n/fa.json
deleted file mode 100644
index 3507681c..00000000
--- a/web/l10n/fa.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "در حال بارگزارى ...",
- "sharedHide": "مخفی",
- "sharedSave": "ذخيره",
- "sharedUpload": "Upload",
- "sharedSet": "تنظیم",
- "sharedCancel": "انصراف",
- "sharedCopy": "Copy",
- "sharedAdd": "اضافه كردن",
- "sharedEdit": "ویرایش",
- "sharedRemove": "پاک کردن",
- "sharedRemoveConfirm": "پاک کردن آیتم",
- "sharedNoData": "داده ای نیست",
- "sharedSubject": "Subject",
- "sharedYes": "بلی",
- "sharedNo": "خیر",
- "sharedKm": "Km",
- "sharedMi": "Mile",
- "sharedNmi": "مایل دریایی",
- "sharedMeters": "متر",
- "sharedFeet": "فوت",
- "sharedKn": "گره دریایی",
- "sharedKmh": "Km/h",
- "sharedMph": "M/h",
- "sharedHour": "ساعت",
- "sharedMinute": "دقيقه",
- "sharedSecond": "ثانيه",
- "sharedDays": "روز",
- "sharedHours": "ساعت",
- "sharedMinutes": "دقیقه",
- "sharedDecimalDegrees": "درجه اعشار",
- "sharedDegreesDecimalMinutes": "درجه اعشار دقیقه",
- "sharedDegreesMinutesSeconds": "درجه اعشار ثانیه",
- "sharedName": "نام",
- "sharedDescription": "توضیحات",
- "sharedSearch": "جستجو",
- "sharedIconScale": "اندازه آیکن",
- "sharedGeofence": "حصار جغرافیایی",
- "sharedGeofences": "حصارهای جغرافیایی",
- "sharedCreateGeofence": "ایجاد جغرافیا",
- "sharedNotifications": "رویدادها",
- "sharedNotification": "اطلاعیه",
- "sharedAttributes": "ویژگی ها",
- "sharedAttribute": "ویژگی",
- "sharedDrivers": "رانندگان",
- "sharedDriver": "راننده",
- "sharedArea": "محدوده",
- "sharedSound": "صدای هشدار",
- "sharedType": "نوع خط",
- "sharedDistance": "طول مسیر",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "گالن",
- "sharedLiter": "لیتر",
- "sharedImpGallon": "گالن UK",
- "sharedUsGallon": "گالن US",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "دریافت نقشه وضعیت",
- "sharedComputedAttribute": "ویژگی محاسبه شده",
- "sharedComputedAttributes": "ویژگیهای محاسبه شده",
- "sharedCheckComputedAttribute": "بررسی ویژگی محاسبه شده",
- "sharedExpression": "اصطلاح",
- "sharedDevice": "دستگاه",
- "sharedTest": "آزمایش",
- "sharedTestNotification": "ارسال تست اخطار",
- "sharedTestNotificators": "آزمایش کانال ها",
- "sharedTestExpression": "تست اصطلاح",
- "sharedCalendar": "تقویم",
- "sharedCalendars": "تقویمها",
- "sharedFile": "فایل",
- "sharedSearchDevices": "جستجوی دستگاهها",
- "sharedSortBy": "مرتب سازی",
- "sharedFilterMap": "فیلتر بر روی نقشه",
- "sharedSelectFile": "انتخاب فایل",
- "sharedPhone": "تلفن",
- "sharedRequired": "ضروری",
- "sharedPreferences": "تنظیمات",
- "sharedPermissions": "دسترسی ها",
- "sharedConnections": "اتصالات",
- "sharedExtra": "بیشتر",
- "sharedPrimary": "اولیه",
- "sharedSecondary": "ثانویه",
- "sharedTypeString": "رشته",
- "sharedTypeNumber": "عدد",
- "sharedTypeBoolean": "True/False",
- "sharedTimezone": "منطقه زمانی",
- "sharedInfoTitle": "اطلاعات",
- "sharedSavedCommand": "دستور ذخیره شده",
- "sharedSavedCommands": "دستورات ذخیره شده",
- "sharedNew": "جدید...",
- "sharedShowAddress": "نمایش آدرس",
- "sharedShowDetails": "جزئیات بیشتر",
- "sharedDisabled": "غیرفعال شده",
- "sharedMaintenance": "تعمیر و نگهداری",
- "sharedDeviceAccumulators": "باطری",
- "sharedAlarms": "هشدارها",
- "sharedLocation": "مکان",
- "sharedImport": "وارد كردن",
- "sharedColumns": "ستونها",
- "sharedDropzoneText": "یک فایل را در اینجا بکشید و رها کنید یا کلیک کنید",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "ساده",
- "calendarRecurrence": "عکس العمل",
- "calendarOnce": "یکبار",
- "calendarDaily": "روزانه",
- "calendarWeekly": "هفتگی",
- "calendarMonthly": "ماهانه",
- "calendarDays": "روزها",
- "calendarSunday": "یکشنبه",
- "calendarMonday": "دوشنبه",
- "calendarTuesday": "سه شنبه",
- "calendarWednesday": "چهارشنبه",
- "calendarThursday": "پنجشنبه",
- "calendarFriday": "جمعه",
- "calendarSaturday": "شنبه",
- "attributeShowGeofences": "نمایش حصار مجازی",
- "attributeSpeedLimit": "محدودیت سرعت",
- "attributeFuelDropThreshold": "حد اتمام سوخت",
- "attributeFuelIncreaseThreshold": "حد تکمیل سوخت",
- "attributePolylineDistance": "مسافت چند مسیری",
- "attributeReportIgnoreOdometer": "گزارش : بدون کیلومتر شمار",
- "attributeWebReportColor": "وب : گزارش رنگ",
- "attributeDevicePassword": "رمز عبور ردیاب",
- "attributeDeviceImage": "عکس دستگاه",
- "attributeDeviceInactivityStart": "آغاز عدم فعالیت دستگاه",
- "attributeDeviceInactivityPeriod": "دوره عدم فعالیت دستگاه",
- "attributeProcessingCopyAttributes": "در حال پردازش : کپی ویژگیها",
- "attributeColor": "رنگ",
- "attributeWebLiveRouteLength": "وب : طول جاده آنلاین",
- "attributeWebSelectZoom": "وب : زوم با انتخاب",
- "attributeWebMaxZoom": "بیشترین زوم",
- "attributeTelegramChatId": "آی دی تلگرام",
- "attributePushoverUserKey": "Pushover کلید کاربری",
- "attributePushoverDeviceNames": "Pushover نام دستگاه",
- "attributeMailSmtpHost": "ایمیل : هاست SMTP",
- "attributeMailSmtpPort": "ایمیل : پورت SMTP",
- "attributeMailSmtpStarttlsEnable": "ایمیل : SMTP STARTTLS فعال",
- "attributeMailSmtpStarttlsRequired": "ایمیل : SMTP STARTTLS ضروری است",
- "attributeMailSmtpSslEnable": "ایمیل : SMTP SSL فعال",
- "attributeMailSmtpSslTrust": "ایمیل : SMTP SSL معتبر",
- "attributeMailSmtpSslProtocols": "ایمیل : پروتکلهای SMTP SSL",
- "attributeMailSmtpFrom": "ایمیل : SMTP ازطرف",
- "attributeMailSmtpAuth": "ایمیل : معتبر سازی SMTP فعال",
- "attributeMailSmtpUsername": "ایمیل : نام کاربری SMTP",
- "attributeMailSmtpPassword": "ایمیل : رمز عبور SMTP",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: ویژگی ها را غیرفعال کنید",
- "attributeUiDisableGroups": "UI: غیر فعال کردن گروه ها",
- "attributeUiDisableEvents": "UI: غیر فعال کردن رویدادها",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "غیرفعالسازی رانندگان",
- "attributeUiDisableComputedAttributes": "غیرفعالسازی محاسبات",
- "attributeUiDisableCalendars": "غیرفعالسازی تقویم",
- "attributeUiDisableMaintenance": "غیر فعال کردن تعمییرات",
- "attributeUiHidePositionAttributes": "پنهان کردن ویژگی های موقعیت",
- "attributeUiDisableLoginLanguage": "UI: انتخاب زبان در هنگام ورود را غیرفعال کنید",
- "attributeNotificationTokens": "اخطار توکن",
- "attributePopupInfo": "اطلاعات Popup",
- "errorTitle": "خطا",
- "errorGeneral": "نقض پارامترها یا محدودیت ها نامعتبر است",
- "errorConnection": "خطا در اتصال",
- "errorSocket": "ایراد اتصال سوکت وب",
- "errorZero": "نمیتواند صفر باشد",
- "userEmail": "ایمیل",
- "userPassword": "رمز عبور",
- "userAdmin": "مدیر",
- "userRemember": "به یاد آوردن",
- "userExpirationTime": "انقضاء",
- "userDeviceLimit": "محدودیت دستگاه",
- "userUserLimit": "محدودیت کاربر",
- "userDeviceReadonly": "دستگاه فقط خواندنی",
- "userLimitCommands": "دستورات محدود",
- "userDisableReports": "گزارشات غیرفعال",
- "userFixedEmail": "عدم تغییر ایمیل",
- "userToken": "رمز یکبار",
- "userDeleteAccount": "حذف اکانت",
- "userTemporary": "Temporary",
- "loginTitle": "ورود",
- "loginLanguage": "انتخاب زبان",
- "loginReset": "بازیابی رمز عبور",
- "loginRegister": "ثبت نام",
- "loginLogin": "ورود",
- "loginOpenId": "با OpenID وارد شوید",
- "loginFailed": "نام كاربرى يا گذرواژه اشتباه است",
- "loginCreated": "ثبت نام با موفقيت انجام شد",
- "loginResetSuccess": "ایمیلتان را چک کنید",
- "loginUpdateSuccess": "رمز جدید اعمال شد",
- "loginLogout": "خروج",
- "loginLogo": "لوگو",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "دستگاه ها و وضعیت",
- "deviceSelected": "دستگاه انتخاب شده",
- "deviceTitle": "دستگاه ها",
- "devicePrimaryInfo": "عنوان دستگاه",
- "deviceSecondaryInfo": "جزئیات دستگاه",
- "deviceIdentifier": "سريال دستگاه",
- "deviceModel": "مدل",
- "deviceContact": "تماس",
- "deviceCategory": "دسته بندی",
- "deviceLastUpdate": "آخرين بروزرسانى",
- "deviceCommand": "فرمان",
- "deviceFollow": "تعقیب",
- "deviceTotalDistance": "کل مسافت",
- "deviceStatus": "وضعیت",
- "deviceStatusOnline": "آنلاین",
- "deviceStatusOffline": "آفلاین",
- "deviceStatusUnknown": "نامعلوم",
- "deviceRegisterFirst": "اولین دستگاه خود را ثبت کنید",
- "deviceIdentifierHelp": "IEMI ، شماره سریال یا شناسه دیگر باید با گزارش های دستگاه شناسه به سرور مطابقت داشته باشد.",
- "deviceShare": "Share Device",
- "groupDialog": "گروه",
- "groupParent": "گروه",
- "groupNoGroup": "بدون گروه",
- "settingsTitle": "تنظيمات",
- "settingsUser": "حساب كاربرى",
- "settingsGroups": "گروه ها",
- "settingsServer": "سرور",
- "settingsUsers": "کاربر",
- "settingsDistanceUnit": "واحد مسافت",
- "settingsAltitudeUnit": "واحد ارتفاع",
- "settingsSpeedUnit": "واحد سرعت",
- "settingsVolumeUnit": "واحد حجم",
- "settingsTwelveHourFormat": "فرمت ساعت : 12 ساعتی",
- "settingsCoordinateFormat": "فرمت مختصاتی",
- "settingsServerVersion": "نسخه سرور",
- "settingsAppVersion": "نسخه برنامه",
- "settingsConnection": "ارتباط",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "گزارشات ",
- "reportScheduled": "گزارش های برنامه ریزی شده",
- "reportDevice": "دستگاه",
- "reportGroup": "گروه",
- "reportFrom": "از",
- "reportTo": "تا",
- "reportShow": "نمایش",
- "reportClear": "خالی کردن",
- "linkGoogleMaps": "نقشه گوگل",
- "linkAppleMaps": "نقشه اپل",
- "linkStreetView": "نمای خیابان",
- "positionFixTime": "زمان ثابت",
- "positionDeviceTime": "زمان دستگاه",
- "positionServerTime": "زمان سرور",
- "positionValid": "معتبر",
- "positionAccuracy": "دقت",
- "positionLatitude": "عرض جغرافيايى",
- "positionLongitude": "طول جغرافيايى",
- "positionAltitude": "ارتفاع",
- "positionSpeed": "سرعت",
- "positionCourse": "دوره",
- "positionAddress": "آدرس",
- "positionProtocol": "پروتکل",
- "positionDistance": "مسافت",
- "positionRpm": "دور / دقیقه",
- "positionFuel": "سوخت",
- "positionPower": "روشن بودن",
- "positionBattery": "باطری",
- "positionRaw": "خالص",
- "positionIndex": "شاخص",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "ماهواره ها",
- "positionSatVisible": "ماهواره های قابل مشاهده",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "رومینگ",
- "positionEvent": "رویداد",
- "positionAlarm": "هشدار",
- "positionStatus": "وضعیت",
- "positionOdometer": "کیلومتر شمار",
- "positionServiceOdometer": "سرویس کیلومتر شمار",
- "positionTripOdometer": "کیلومتر شمار مسافت",
- "positionHours": "ساعت",
- "positionSteps": "مراحل",
- "positionInput": "ورود",
- "positionHeartRate": "ضربان قلب",
- "positionOutput": "خروج",
- "positionBatteryLevel": "وضعیت باطری",
- "positionFuelConsumption": "مصرف سوخت",
- "positionRfid": "RFID",
- "positionVersionFw": "ورژن فلش",
- "positionVersionHw": "ورژن سخت افزار",
- "positionIgnition": "روشن بودن",
- "positionFlags": "نشانها",
- "positionCharge": "شارژ",
- "positionIp": "IP",
- "positionArchive": "آرشیو",
- "positionVin": "VIN",
- "positionApproximate": "تقریبی",
- "positionThrottle": "دریچه گاز",
- "positionMotion": "حرکت",
- "positionArmed": "مسلح",
- "positionAcceleration": "شتاب",
- "positionTemp": "درجه حرارت",
- "positionDeviceTemp": "دمای دستگاه",
- "positionCoolantTemp": "دمای مایع خنک کننده",
- "positionOperator": "اپراتور",
- "positionCommand": "کد دستوری",
- "positionBlocked": "بلوکه",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "سرعت OBD",
- "positionObdOdometer": "کیلومتر شمار ODB",
- "positionDrivingTime": "زمان رانندگی",
- "positionDriverUniqueId": "کد شناسایی راننده",
- "positionCard": "کارت",
- "positionImage": "تصویر",
- "positionVideo": "ویدیو",
- "positionAudio": "صدا",
- "serverTitle": "تنظیمات سرور",
- "serverZoom": "بزرگنمایی",
- "serverRegistration": "ثبت نام",
- "serverReadonly": "فقط خواندنی",
- "serverForceSettings": "تنظیمات اجباری",
- "serverAnnouncement": "اطلاعیه",
- "serverName": "نام سرور",
- "serverDescription": "توضیحات سرور",
- "serverColorPrimary": "رنگ اصلی",
- "serverColorSecondary": "رنگ ثانویه",
- "serverLogo": "عکس لوگو",
- "serverLogoInverted": "معکوس سازی رنگ لوگو",
- "serverChangeDisable": "غیرفعال کردن تغییر سرور",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "نقشه",
- "mapActive": "نقشه های فعال",
- "mapOverlay": "لایه نقشه",
- "mapOverlayCustom": "لایه سفارشی",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API کلید",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather فشار",
- "mapOpenWeatherWind": "OpenWeather باد",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "لایه های نقشه",
- "mapCustom": "سفارشی (XYZ)",
- "mapCustomArcgis": "سفارشی (ArcGIS)",
- "mapCustomLabel": "نقشه اختیاری",
- "mapCarto": "نقشه کارتو",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google جاده",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google ماهواره",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing کلید نقشه",
- "mapBingRoad": "Bing نقشه جاده",
- "mapBingAerial": "Bing نقشه هوایی",
- "mapBingHybrid": "Bing نقشه هیبریدی",
- "mapBaidu": "Baidu چین",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex نقشه",
- "mapYandexSat": "Yandex ماهواره",
- "mapWikimedia": "ویکی مدیا",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox توکن دسترسی",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler کلید API",
- "mapLocationIqStreets": "LocationIQ Streets نقشه",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ توکن دسترسی",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom جریان ترافیک",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom کلید API",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite نقشه",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "چند ضلعی",
- "mapShapeCircle": "دایره ",
- "mapShapePolyline": "چند خطی",
- "mapLiveRoutes": "تعقیب مسیر",
- "mapDirection": "نمایش جهت",
- "mapCurrentLocation": "موقعیت فعلی",
- "mapPoiLayer": "لایه POI",
- "mapClustering": "خوشه بندی نشانگرها",
- "mapOnSelect": "نمایش نقشه در انتخاب",
- "mapDefault": "نقشه پیش فرض",
- "stateTitle": "وضعیت",
- "stateName": "ویژگی",
- "stateValue": "مقدار",
- "commandTitle": "ارسال دستور به دستگاه",
- "commandSend": "ارسال",
- "commandSent": "ارسال دستور",
- "commandQueued": "دستور در صف",
- "commandUnit": "واحد",
- "commandCustom": "دستور سفارشی",
- "commandDeviceIdentification": "شناسایی دستگاه",
- "commandPositionSingle": "گزارش ساده",
- "commandPositionPeriodic": "گزارشات چندوضعیتی",
- "commandPositionStop": "توقف گزارش",
- "commandEngineStop": "توقف موتور",
- "commandEngineResume": "ادامه موتور",
- "commandAlarmArm": "آلارم فعال",
- "commandAlarmDisarm": "آلارم غیر فعال",
- "commandAlarmDismiss": "رد کردن هشدار",
- "commandSetTimezone": "تنظیم منطقه زمانی",
- "commandRequestPhoto": "درخواست عکس",
- "commandPowerOff": "خاموش شدن دستگاه",
- "commandRebootDevice": "ریست کردن دستگاه",
- "commandFactoryReset": "ریست تنظیم کارخانه",
- "commandSendSms": "ارسال پیام کوتاه",
- "commandSendUssd": "USSD ارسال کد",
- "commandSosNumber": "شماره SOS را تنظیم کنید",
- "commandSilenceTime": "تنظیم زمان سکوت",
- "commandSetPhonebook": "تنظیم دفترچه تلفن",
- "commandVoiceMessage": "پیام صوتی",
- "commandOutputControl": "تنظیمات خروجی ",
- "commandVoiceMonitoring": "کنترل صوتی",
- "commandSetAgps": "تنظیم AGPS",
- "commandSetIndicator": "ایجاد شاخص",
- "commandConfiguration": "پیکر بندی",
- "commandGetVersion": "دریافت نگارش",
- "commandFirmwareUpdate": "به روز رسانی فریمور",
- "commandSetConnection": "تنظیم ارتباط",
- "commandSetOdometer": "تنظیم کیلومتر شمار",
- "commandGetModemStatus": "دریافت وضعیت مودم",
- "commandGetDeviceStatus": "دریافت وضعیت دستگاه",
- "commandSetSpeedLimit": "تنظیم محدودیت سرعت",
- "commandModePowerSaving": "حالت کم مصرف",
- "commandModeDeepSleep": "حالت خواب عمیق",
- "commandAlarmGeofence": "تنظیم هشدار محدوده جغرافیایی",
- "commandAlarmBattery": "تنظیم هشدار باتری",
- "commandAlarmSos": "تنظیم هشدار کمک",
- "commandAlarmRemove": "تنظیم حذف هشدار",
- "commandAlarmClock": "تنظیم ساعت هشدار",
- "commandAlarmSpeed": "تنظیم هشدار سرعت",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "تاخیر ارسال",
- "commandTimezone": "فاصله زمانی مبدا",
- "commandMessage": "پیام",
- "commandRadius": "شعاع",
- "commandEnable": "فعال",
- "commandData": "دیتا",
- "commandIndex": "فهرست",
- "commandPhone": "شماره تلفن",
- "commandServer": "سرور",
- "commandPort": "پورت",
- "eventAll": "همه رویدادها",
- "eventDeviceOnline": "وضعیت آنلاین",
- "eventDeviceUnknown": "وضعیت نامعلوم",
- "eventDeviceOffline": "وضعیت آفلاین",
- "eventDeviceInactive": "دستگاه غیرفعال",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "حرکت دستگاه",
- "eventDeviceStopped": "دستگاه متوقف شد",
- "eventDeviceOverspeed": "سرعت از حد مجاز فراتر رفت",
- "eventDeviceFuelDrop": "افت سوخت",
- "eventDeviceFuelIncrease": "افزایش سوخت",
- "eventCommandResult": "نتیجه ارسال دستور",
- "eventGeofenceEnter": "ورود محدوده جغرافیایی",
- "eventGeofenceExit": "خروج محدوده جغرافیایی",
- "eventAlarm": "هشدار",
- "eventIgnitionOn": "سویچ روشن",
- "eventIgnitionOff": "سوئیچ خاموش",
- "eventMaintenance": "نیاز به تعمیر",
- "eventTextMessage": "پیامک دریافت شد",
- "eventDriverChanged": "تعویض راننده",
- "eventMedia": "مدیا",
- "eventsScrollToLast": "اسکرول تا آخر",
- "eventsSoundEvents": "رویدادهای صدا",
- "eventsSoundAlarms": "هشدار صوتی",
- "alarmGeneral": "اصلی",
- "alarmSos": "درخواست کمک",
- "alarmVibration": "لرزش",
- "alarmMovement": "جابجایی",
- "alarmLowspeed": "سرعت کم",
- "alarmOverspeed": "سرعت بالا",
- "alarmFallDown": "سقوط",
- "alarmLowPower": "انرژی کم",
- "alarmLowBattery": "باطری کم",
- "alarmFault": "نقص",
- "alarmPowerOff": "خاموش",
- "alarmPowerOn": "روشن",
- "alarmDoor": "درب",
- "alarmLock": "قفل",
- "alarmUnlock": "باز کردن",
- "alarmGeofence": "محدوده جغرافیایی",
- "alarmGeofenceEnter": "ورود محدوده جغرافیایی",
- "alarmGeofenceExit": "خروج محدوده جغرافیایی",
- "alarmGpsAntennaCut": "قطع آنتن GPS",
- "alarmAccident": "تصادف",
- "alarmTow": "یدک کش",
- "alarmIdle": "بیکار",
- "alarmHighRpm": "دورموتور بالا",
- "alarmHardAcceleration": "شتاب تند",
- "alarmHardBraking": "ترمز تند",
- "alarmHardCornering": "زاویه شدید",
- "alarmLaneChange": "تغییر مسیر",
- "alarmFatigueDriving": "رانندگی خسته",
- "alarmPowerCut": "قطع ولتاژ",
- "alarmPowerRestored": "برگشت ولتاژ",
- "alarmJamming": "مسدود",
- "alarmTemperature": "دما",
- "alarmParking": "پارکینگ",
- "alarmBonnet": "صندوق",
- "alarmFootBrake": "پدال ترمز",
- "alarmFuelLeak": "نشت باک",
- "alarmTampering": "دستکاری",
- "alarmRemoving": "حذف",
- "notificationType": "تعیین نوع رویداد ",
- "notificationAlways": "همه ردیابها",
- "notificationNotificators": "کانال ها",
- "notificatorCommand": "فرمان",
- "notificatorWeb": "وب",
- "notificatorMail": "ایمیل",
- "notificatorSms": "پیامک",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "تلگرام",
- "notificatorPushover": "Pushover",
- "reportReplay": "بازپخش",
- "reportCombined": "ترکیب شده",
- "reportRoute": "مسیر های پیموده شده ",
- "reportEvents": "رویداد ها",
- "reportTrips": "مسافرتها",
- "reportStops": "توقفها",
- "reportSummary": "خلاصه وضعیت ",
- "reportDaily": "وقایع روزانه",
- "reportChart": "نمودار",
- "reportConfigure": "تنظیمات",
- "reportEventTypes": "نوع رویدادها",
- "reportChartType": "نوع نمودار",
- "reportShowMarkers": "نمایش علامتها",
- "reportExport": "خروجی فایل",
- "reportEmail": "گزارش پست الکترونیکی",
- "reportSchedule": "برنامه زمانی",
- "reportPeriod": "بازه",
- "reportCustom": "سفارشی",
- "reportToday": "امروز",
- "reportYesterday": "دیروز",
- "reportThisWeek": "هفته جاری",
- "reportPreviousWeek": "هفته قبلی",
- "reportThisMonth": "ماه جاری",
- "reportPreviousMonth": "ماه قبلی",
- "reportDeviceName": "نام دستگاه ",
- "reportAverageSpeed": "سرعت میانگین",
- "reportMaximumSpeed": "حداکثر سرعت",
- "reportEngineHours": "مدت زمان روشن بودن وسیله",
- "reportDuration": "مسافت",
- "reportStartDate": "تاریخ آغاز",
- "reportStartTime": "زمان شروع",
- "reportStartAddress": "آدرس شروع",
- "reportEndTime": "زمان پایانی",
- "reportEndAddress": "آدرس پایانی",
- "reportSpentFuel": "مصرف سوخت",
- "reportStartOdometer": "شروع کیلومترشمار",
- "reportEndOdometer": "پایان کیلومتر شمار",
- "statisticsTitle": "گزارشات",
- "statisticsCaptureTime": "زمان ضبط",
- "statisticsActiveUsers": "کاربران فعال",
- "statisticsActiveDevices": "ردیابهای فعال",
- "statisticsRequests": "درخواستها",
- "statisticsMessagesReceived": "پیامهای دریافتی",
- "statisticsMessagesStored": "پیامها ذخیره",
- "statisticsGeocoder": "درخواست محدوده",
- "statisticsGeolocation": "درخواستهای محدوده",
- "categoryArrow": "فلش",
- "categoryDefault": "پیش فرض",
- "categoryAnimal": "حیوان",
- "categoryBicycle": "دوچرخه",
- "categoryBoat": "قایق",
- "categoryBus": "اتوبوس",
- "categoryCar": "خودرو",
- "categoryCamper": "Camper",
- "categoryCrane": "جرثقیل",
- "categoryHelicopter": "هلی کوپتر",
- "categoryMotorcycle": "موتورسیکلت",
- "categoryOffroad": "شاسی بلند",
- "categoryPerson": "شخص",
- "categoryPickup": "وانت",
- "categoryPlane": "هواپیما",
- "categoryShip": "کشتی",
- "categoryTractor": "تراکتور",
- "categoryTrain": "قطار",
- "categoryTram": "تراموا",
- "categoryTrolleybus": "تریلر",
- "categoryTruck": "تریلی",
- "categoryVan": "ون",
- "categoryScooter": "اسکوتر",
- "maintenanceStart": "شروع",
- "maintenancePeriod": "بازه"
-} \ No newline at end of file
diff --git a/web/l10n/fi.json b/web/l10n/fi.json
deleted file mode 100644
index f5459166..00000000
--- a/web/l10n/fi.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Ladataan...",
- "sharedHide": "Piilota",
- "sharedSave": "Tallenna",
- "sharedUpload": "Lataa palvelimelle",
- "sharedSet": "Aseta",
- "sharedCancel": "Peruuta",
- "sharedCopy": "Kopioi",
- "sharedAdd": "Lisää",
- "sharedEdit": "Muokkaa",
- "sharedRemove": "Poista",
- "sharedRemoveConfirm": "Poista kohde?",
- "sharedNoData": "Ei dataa",
- "sharedSubject": "Subject",
- "sharedYes": "Kyllä",
- "sharedNo": "Ei",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Tunti",
- "sharedMinute": "Minuutti",
- "sharedSecond": "Sekunti",
- "sharedDays": "päivää",
- "sharedHours": "tuntia",
- "sharedMinutes": "minuuttia",
- "sharedDecimalDegrees": "Desimaaliasteet",
- "sharedDegreesDecimalMinutes": "Asteet ja desimaaliminuutit",
- "sharedDegreesMinutesSeconds": "Asteet, minuutit ja sekunnit",
- "sharedName": "Nimi",
- "sharedDescription": "Kuvaus",
- "sharedSearch": "Haku",
- "sharedIconScale": "Kuvakkeiden skaalaus",
- "sharedGeofence": "Geoaita",
- "sharedGeofences": "Geoaidat",
- "sharedCreateGeofence": "Luo geoaita",
- "sharedNotifications": "Ilmoitukset",
- "sharedNotification": "Ilmoitus",
- "sharedAttributes": "Ominaisuudet",
- "sharedAttribute": "Ominaisuus",
- "sharedDrivers": "Kuljettajat",
- "sharedDriver": "Kuljettaja",
- "sharedArea": "Alue",
- "sharedSound": "Ilmoitusääni",
- "sharedType": "Tyyppi",
- "sharedDistance": "Matka",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gallona",
- "sharedLiter": "Litra",
- "sharedImpGallon": "Brittiläinen gallona",
- "sharedUsGallon": "Amerikkalainen gallona",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Hae kartan tila",
- "sharedComputedAttribute": "Laskettu ominaisuus",
- "sharedComputedAttributes": "Lasketut ominaisuudet",
- "sharedCheckComputedAttribute": "Tarkista laskettu ominaisuus",
- "sharedExpression": "Lauseke",
- "sharedDevice": "Laite",
- "sharedTest": "Testaa",
- "sharedTestNotification": "Lähetä testi-ilmoitus",
- "sharedTestNotificators": "Testaa kanavia",
- "sharedTestExpression": "Testaa lauseke",
- "sharedCalendar": "Kalenteri",
- "sharedCalendars": "Kalenterit",
- "sharedFile": "Tiedosto",
- "sharedSearchDevices": "Etsi laitteita",
- "sharedSortBy": "Lajittele",
- "sharedFilterMap": "Suodata kartalla",
- "sharedSelectFile": "Valitse tiedosto",
- "sharedPhone": "Puhelin",
- "sharedRequired": "Vaadittavat",
- "sharedPreferences": "Asetukset",
- "sharedPermissions": "Käyttöoikeudet",
- "sharedConnections": "Yhteydet",
- "sharedExtra": "Ekstra",
- "sharedPrimary": "Ensisijainen",
- "sharedSecondary": "Toissijainen",
- "sharedTypeString": "Merkkijono",
- "sharedTypeNumber": "Numero",
- "sharedTypeBoolean": "Totuusarvo",
- "sharedTimezone": "Aikavyöhyke",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Tallennettu komento",
- "sharedSavedCommands": "Tallennetut komennot",
- "sharedNew": "Uusi...",
- "sharedShowAddress": "Näytä osoite",
- "sharedShowDetails": "Lisätietoja",
- "sharedDisabled": "Poistettu käytöstä",
- "sharedMaintenance": "Huolto",
- "sharedDeviceAccumulators": "Laskurit",
- "sharedAlarms": "Hälytykset",
- "sharedLocation": "Sijainti",
- "sharedImport": "Tuo",
- "sharedColumns": "Sarakkeet",
- "sharedDropzoneText": "Vedä ja pudota tiedosto tähän tai klikkaa",
- "sharedLogs": "Lokit",
- "sharedLink": "Link",
- "calendarSimple": "Yksinkertainen",
- "calendarRecurrence": "Toisto",
- "calendarOnce": "Kerran",
- "calendarDaily": "Päivittäin",
- "calendarWeekly": "Viikoittain",
- "calendarMonthly": "Kuukausittain",
- "calendarDays": "Päivät",
- "calendarSunday": "Sunnuntai",
- "calendarMonday": "Maanantai",
- "calendarTuesday": "Tiistai",
- "calendarWednesday": "Keskiviikko",
- "calendarThursday": "Torstai",
- "calendarFriday": "Perjantai",
- "calendarSaturday": "Lauantai",
- "attributeShowGeofences": "Näytä geoaita",
- "attributeSpeedLimit": "Nopeusrajoitus",
- "attributeFuelDropThreshold": "Polttoaineen vähenemisen raja-arvo",
- "attributeFuelIncreaseThreshold": "Polttoaineen lisäämisen raja-arvo",
- "attributePolylineDistance": "Etäisyys murtoviivaan",
- "attributeReportIgnoreOdometer": "Raportti: Älä huomioi matkamittaria",
- "attributeWebReportColor": "Web: Raportin väri",
- "attributeDevicePassword": "Laitteen salasana",
- "attributeDeviceImage": "Laitteen kuva",
- "attributeDeviceInactivityStart": "Laitteen epäaktiivisuuden alku",
- "attributeDeviceInactivityPeriod": "Laitteen epäaktiivisuuden jakso",
- "attributeProcessingCopyAttributes": "Laskenta: Kopioi ominaisuudet",
- "attributeColor": "Väri",
- "attributeWebLiveRouteLength": "Web: Live-reitin pituus",
- "attributeWebSelectZoom": "Web: Lähennys valittaessa",
- "attributeWebMaxZoom": "Web: Suurin lähennys",
- "attributeTelegramChatId": "Telegram keskustelu ID",
- "attributePushoverUserKey": "Pushover käyttäjäavain",
- "attributePushoverDeviceNames": "Pushover laitteiden nimet",
- "attributeMailSmtpHost": "Email: SMTP-isäntäpalvelin",
- "attributeMailSmtpPort": "Email: SMTP-portti",
- "attributeMailSmtpStarttlsEnable": "Email: SMTP STARTTLS:n aktivointi",
- "attributeMailSmtpStarttlsRequired": "Email: SMTP STARTTLS vaaditaan",
- "attributeMailSmtpSslEnable": "Email: SMTP SSL:n aktivointi",
- "attributeMailSmtpSslTrust": "Email: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Email: SMTP SSL -protokollat",
- "attributeMailSmtpFrom": "Email: SMTP-lähettäjä",
- "attributeMailSmtpAuth": "Email: SMTP-tunnistautumisen aktivointi",
- "attributeMailSmtpUsername": "Email: SMTP-käyttäjätunnus",
- "attributeMailSmtpPassword": "Email: SMTP-salasana",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Piilota ominaisuudet",
- "attributeUiDisableGroups": "UI: Piilota ryhmät",
- "attributeUiDisableEvents": "UI: Piilota tapahtumat",
- "attributeUiDisableVehicleFeatures": "UI: Piilota ajoneuvon omainaisuudet",
- "attributeUiDisableDrivers": "UI: Piilota kuljettajat",
- "attributeUiDisableComputedAttributes": "UI: Piilota lasketut ominaisuudet",
- "attributeUiDisableCalendars": "UI: Piilota kalenterit",
- "attributeUiDisableMaintenance": "UI: Piilota huolto",
- "attributeUiHidePositionAttributes": "UI: Piilota sijainnin ominaisuudet",
- "attributeUiDisableLoginLanguage": "UI: Piilota kielivalinta kirjautumisesta",
- "attributeNotificationTokens": "Ilmoitustunnukset",
- "attributePopupInfo": "Popup tiedot",
- "errorTitle": "Virhe",
- "errorGeneral": "Epäkelvot parametrit tai rajoitteiden rikkomus",
- "errorConnection": "Yhteysvirhe",
- "errorSocket": "WebSocket-yhteysvirhe",
- "errorZero": "Ei voi olla nolla",
- "userEmail": "Sähköposti",
- "userPassword": "Salasana",
- "userAdmin": "Ylläpito",
- "userRemember": "Muista",
- "userExpirationTime": "Vanheneminen",
- "userDeviceLimit": "Laiteraja",
- "userUserLimit": "Käyttäjäraja",
- "userDeviceReadonly": "Laitteet vain luettavissa",
- "userLimitCommands": "Rajoita komentoja",
- "userDisableReports": "Poista raportit käytöstä",
- "userFixedEmail": "Ei sähköpostiosoitteen vaihtoa",
- "userToken": "Todennustunnus",
- "userDeleteAccount": "Poista tili",
- "userTemporary": "Temporary",
- "loginTitle": "Kirjaudu",
- "loginLanguage": "Kieli",
- "loginReset": "Nollaa salasana",
- "loginRegister": "Rekisteröidy",
- "loginLogin": "Kirjaudu",
- "loginOpenId": "Kirjaudu OpenID:llä",
- "loginFailed": "Virheellinen sähköposti tai salasana",
- "loginCreated": "Uusi käyttäjä on rekisteröity",
- "loginResetSuccess": "Tarkista sähköpostisi",
- "loginUpdateSuccess": "Uusi salasana asetettu",
- "loginLogout": "Kirjaudu ulos",
- "loginLogo": "Logo",
- "loginTotpCode": "Kertakäyttö salasana koodi",
- "loginTotpKey": "Kertakäyttö salasanan avain",
- "devicesAndState": "Laitteet ja Tilat",
- "deviceSelected": "Valitse laite",
- "deviceTitle": "Laitteet",
- "devicePrimaryInfo": "Laitteen nimi",
- "deviceSecondaryInfo": "Laitteen tiedot",
- "deviceIdentifier": "Tunniste",
- "deviceModel": "Malli",
- "deviceContact": "Yhteyshenkilö",
- "deviceCategory": "Kategoria",
- "deviceLastUpdate": "Viimeisin päivitys",
- "deviceCommand": "Komento",
- "deviceFollow": "Seuraa",
- "deviceTotalDistance": "Kokonaismatka",
- "deviceStatus": "Tila",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Tuntematon",
- "deviceRegisterFirst": "Rekisteröi ensimmäinen laitteesi",
- "deviceIdentifierHelp": "IMEI, sarjanumeo tai muu id. ID:n pitää täsmätä laitteen lähettämään tunnisteeseen.",
- "deviceShare": "Jaa laitteen sijainti",
- "groupDialog": "Ryhmä",
- "groupParent": "Ryhmä",
- "groupNoGroup": "Ei ryhmää",
- "settingsTitle": "Asetukset",
- "settingsUser": "Tili",
- "settingsGroups": "Ryhmät",
- "settingsServer": "Palvelin",
- "settingsUsers": "Käyttäjät",
- "settingsDistanceUnit": "Matkayksikkö",
- "settingsAltitudeUnit": "Korkeusyksikkö",
- "settingsSpeedUnit": "Nopeusyksikkö",
- "settingsVolumeUnit": "Tilavuusyksikkö",
- "settingsTwelveHourFormat": "12-tunnin formaatti",
- "settingsCoordinateFormat": "Koordinaattien formaatti",
- "settingsServerVersion": "Palvelin versio",
- "settingsAppVersion": "Sovellus versio",
- "settingsConnection": "Yhteys",
- "settingsDarkMode": "Tumma tila",
- "settingsTotpEnable": "Ota käyttöön kertakäyttö salasana",
- "settingsTotpForce": "Pakota kertakäyttöinen salasana",
- "settingsServiceWorkerUpdateInterval": "Palvelun päivitysväli",
- "settingsUpdateAvailable": "Päivitys saatavilla",
- "settingsSupport": "Tuki",
- "reportTitle": "Raportit",
- "reportScheduled": "Ajastetut raportit",
- "reportDevice": "Laite",
- "reportGroup": "Ryhmä",
- "reportFrom": "Mistä",
- "reportTo": "Mihin",
- "reportShow": "Näytä",
- "reportClear": "Tyhjennä",
- "linkGoogleMaps": "Google kartat",
- "linkAppleMaps": "Apple kartat",
- "linkStreetView": "Katunäkymä",
- "positionFixTime": "Sijaintiaika",
- "positionDeviceTime": "Laitteen aika",
- "positionServerTime": "Palvelimen aika",
- "positionValid": "Kelvollinen",
- "positionAccuracy": "Tarkkuus",
- "positionLatitude": "Leveysaste",
- "positionLongitude": "Pituusaste",
- "positionAltitude": "Korkeus",
- "positionSpeed": "Nopeus",
- "positionCourse": "Suunta",
- "positionAddress": "Osoite",
- "positionProtocol": "Protokolla",
- "positionDistance": "Matka",
- "positionRpm": "RPM",
- "positionFuel": "Polttoaine",
- "positionPower": "Virta",
- "positionBattery": "Akku",
- "positionRaw": "Raaka",
- "positionIndex": "Indeksi",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelliitteja",
- "positionSatVisible": "Näkyviä satelliitteja",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Verkkovierailu",
- "positionEvent": "Tapahtuma",
- "positionAlarm": "Hälytys",
- "positionStatus": "Tila",
- "positionOdometer": "Matkamittari",
- "positionServiceOdometer": "Huollon matkamittari",
- "positionTripOdometer": "Trippimittari",
- "positionHours": "Tuntia",
- "positionSteps": "Askeleita",
- "positionInput": "Sisääntulo",
- "positionHeartRate": "Syke",
- "positionOutput": "Ulostulo",
- "positionBatteryLevel": "Akun varaus",
- "positionFuelConsumption": "Polttoaineen kulutus",
- "positionRfid": "RFID",
- "positionVersionFw": "Laiteohjelmiston versio",
- "positionVersionHw": "Laitteiston versio",
- "positionIgnition": "Virta (sytytys)",
- "positionFlags": "Liput",
- "positionCharge": "Lataus",
- "positionIp": "IP-osoite",
- "positionArchive": "Arkisto",
- "positionVin": "VIN",
- "positionApproximate": "Likimääräinen",
- "positionThrottle": "Kaasupoljin",
- "positionMotion": "Liike",
- "positionArmed": "Hälytys kytketty",
- "positionAcceleration": "Kiihtyvyys",
- "positionTemp": "Lämpötila",
- "positionDeviceTemp": "Laitteen lämpötila",
- "positionCoolantTemp": "Jäähdytysnesteen lämpötila",
- "positionOperator": "Operaattori",
- "positionCommand": "Komento",
- "positionBlocked": "Estetty",
- "positionDtcs": "DTC:t",
- "positionObdSpeed": "OBD-nopeus",
- "positionObdOdometer": "OBD-matkamittari",
- "positionDrivingTime": "Ajoaika",
- "positionDriverUniqueId": "Kuljettajan ID",
- "positionCard": "Kortti",
- "positionImage": "Kuva",
- "positionVideo": "Video",
- "positionAudio": "Ääni",
- "serverTitle": "Palvelinasetukset",
- "serverZoom": "Lähennys",
- "serverRegistration": "Rekisteröinti",
- "serverReadonly": "Vain luku",
- "serverForceSettings": "Pakota asetukset",
- "serverAnnouncement": "Ilmoitus",
- "serverName": "Palvelimen nimi",
- "serverDescription": "Palvelimen kuvaus",
- "serverColorPrimary": "Ensisijainen väri",
- "serverColorSecondary": "Toissijainen väri",
- "serverLogo": "Logo kuva",
- "serverLogoInverted": "Logo kuva negatiivinen",
- "serverChangeDisable": "Estä palvelimen vaihto",
- "serverDisableShare": "Estä laitteen jakaminen",
- "mapTitle": "Kartta",
- "mapActive": "Aktiiviset kartat",
- "mapOverlay": "Karttapäällys",
- "mapOverlayCustom": "Oma karttapäällys",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API-avain",
- "mapOpenWeatherClouds": "OpenWeather pilvet",
- "mapOpenWeatherPrecipitation": "OpenWeather sade",
- "mapOpenWeatherPressure": "OpenWeather ilmanpaine",
- "mapOpenWeatherWind": "OpenWeather tuuli",
- "mapOpenWeatherTemperature": "OpenWeather lämpötila",
- "mapLayer": "Karttataso",
- "mapCustom": "Oma kartta (XYZ)",
- "mapCustomArcgis": "Oma kartta (ArcGIS)",
- "mapCustomLabel": "Oma kartta",
- "mapCarto": "Carto-pohjakartat",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google katukartta",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google ilmakuva",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps -avain",
- "mapBingRoad": "Bing Maps -tiet",
- "mapBingAerial": "Bing Maps -ilmakuva",
- "mapBingHybrid": "Bing Maps -hybridi",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex-kartta",
- "mapYandexSat": "Yandex-satelliittikuva",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox kadut",
- "mapMapboxStreetsDark": "Mapbox Streets tumma",
- "mapMapboxOutdoors": "Mapbox ulkoilu",
- "mapMapboxSatellite": "Mapbox satelliitti",
- "mapMapboxKey": "Mapbox pääsyavain",
- "mapMapTilerBasic": "MapTile perus",
- "mapMapTilerHybrid": "MapTiler hybrid",
- "mapMapTilerKey": "MapTiler API-avain",
- "mapLocationIqStreets": "LocationIQ kadut",
- "mapLocationIqDark": "LocationIQ tumma",
- "mapLocationIqKey": "LocationIQ pääsyavain",
- "mapTomTomBasic": "TomTom perus",
- "mapTomTomFlow": "TomTom liikenne",
- "mapTomTomIncidents": "TomTom liikenneonnettomuudet",
- "mapTomTomKey": "TomTom API-avain",
- "mapHereBasic": "Here perus",
- "mapHereHybrid": "Here hybrid",
- "mapHereSatellite": "Here satellitti",
- "mapHereFlow": "Here liikenne",
- "mapHereKey": "Here API-avain",
- "mapShapePolygon": "Monikulmio",
- "mapShapeCircle": "Ympyrä",
- "mapShapePolyline": "Murtoviiva",
- "mapLiveRoutes": "Live-reitit",
- "mapDirection": "Näytä suunta",
- "mapCurrentLocation": "Nykyinen sijainti",
- "mapPoiLayer": "Kohdepistetaso",
- "mapClustering": "Merkkien ryvästäminen",
- "mapOnSelect": "Näytä kartta valittaessa",
- "mapDefault": "Oletus kartta",
- "stateTitle": "Tila",
- "stateName": "Ominaisuus",
- "stateValue": "Arvo",
- "commandTitle": "Komento",
- "commandSend": "Lähetä",
- "commandSent": "Komento lähetetty",
- "commandQueued": "Komento jonossa",
- "commandUnit": "Yksikkö",
- "commandCustom": "Oma komento",
- "commandDeviceIdentification": "Laitteen tunnistus",
- "commandPositionSingle": "Yksittäinen raportointi",
- "commandPositionPeriodic": "Määräaikaisraportointi",
- "commandPositionStop": "Lopeta raportointi",
- "commandEngineStop": "Sammuta moottori",
- "commandEngineResume": "Palauta moottori",
- "commandAlarmArm": "Hälytys päälle",
- "commandAlarmDisarm": "Hälytys pois",
- "commandAlarmDismiss": "Hylkää hälytys",
- "commandSetTimezone": "Aseta aikavyöhyke",
- "commandRequestPhoto": "Pyydä kuva",
- "commandPowerOff": "Sammuta laite",
- "commandRebootDevice": "Käynnistä laite uudelleen",
- "commandFactoryReset": "Tehdasasetusten palautus",
- "commandSendSms": "Lähetä tekstiviesti",
- "commandSendUssd": "Lähetä USSD",
- "commandSosNumber": "Aseta SOS-numero",
- "commandSilenceTime": "Aseta hiljainen aika",
- "commandSetPhonebook": "Aseta osoitekirja",
- "commandVoiceMessage": "Ääniviesti",
- "commandOutputControl": "Ulostulon ohjaus",
- "commandVoiceMonitoring": "Äänitarkkailu",
- "commandSetAgps": "Aseta AGPS",
- "commandSetIndicator": "Aseta indikaattori",
- "commandConfiguration": "Konfigurointi",
- "commandGetVersion": "Pyydä versio",
- "commandFirmwareUpdate": "Päivitä laiteohjelmisto",
- "commandSetConnection": "Aseta yhteys",
- "commandSetOdometer": "Aseta matkamittari",
- "commandGetModemStatus": "Pyydä modeemin tila",
- "commandGetDeviceStatus": "Pyydä laitteen tila",
- "commandSetSpeedLimit": "Aseta nopeusrajoitus",
- "commandModePowerSaving": "Virransäästötila",
- "commandModeDeepSleep": "Syväunitila",
- "commandAlarmGeofence": "Aseta geoaitahälytys",
- "commandAlarmBattery": "Aseta akkuhälytys",
- "commandAlarmSos": "Aseta SOS-hälytys",
- "commandAlarmRemove": "Aseta poistettu hälytys",
- "commandAlarmClock": "Aseta aikahälytys",
- "commandAlarmSpeed": "Aseta nopeushälytys",
- "commandAlarmFall": "Aseta kaatumishälytys",
- "commandAlarmVibration": "Aseta tärinähälytys",
- "commandFrequency": "Taajuus",
- "commandTimezone": "Aikavyöhykkeen poikkeama",
- "commandMessage": "Viesti",
- "commandRadius": "Säde",
- "commandEnable": "Ota käyttöön",
- "commandData": "Tieto",
- "commandIndex": "Indeksi",
- "commandPhone": "Puhelinnumero",
- "commandServer": "Palvelin",
- "commandPort": "Portti",
- "eventAll": "Kaikki tapahtumat",
- "eventDeviceOnline": "Tila online",
- "eventDeviceUnknown": "Tila tuntematon",
- "eventDeviceOffline": "Tila offline",
- "eventDeviceInactive": "Laite epäaktiivinen",
- "eventQueuedCommandSent": "Jonossa oleva komento lähetetty",
- "eventDeviceMoving": "Laite liikkuu",
- "eventDeviceStopped": "Laite pysähtynyt",
- "eventDeviceOverspeed": "Nopeusrajoitus ylitetty",
- "eventDeviceFuelDrop": "Polttoaineen väheneminen",
- "eventDeviceFuelIncrease": "Polttoaineen lisääminen",
- "eventCommandResult": "Komennon tulos",
- "eventGeofenceEnter": "Laite saapui geoaitaan",
- "eventGeofenceExit": "Laite poistui geoaidasta",
- "eventAlarm": "Hälytykset",
- "eventIgnitionOn": "Sytytysvirta päällä",
- "eventIgnitionOff": "Sytytysvirta pois päältä",
- "eventMaintenance": "Huoltoa tarvitaan",
- "eventTextMessage": "Tekstiviesti vastaanotettu",
- "eventDriverChanged": "Kuljettaja vaihtunut",
- "eventMedia": "Media",
- "eventsScrollToLast": "Vieritä viimeiseen",
- "eventsSoundEvents": "Ääni tapahtumat",
- "eventsSoundAlarms": "Ääni hälytykset",
- "alarmGeneral": "Yleinen",
- "alarmSos": "SOS",
- "alarmVibration": "Tärinä",
- "alarmMovement": "Liike",
- "alarmLowspeed": "Alhainen nopeus",
- "alarmOverspeed": "Ylinopeus",
- "alarmFallDown": "Kaatuminen",
- "alarmLowPower": "Alhainen virta",
- "alarmLowBattery": "Alhainen akun varaus",
- "alarmFault": "Vikaantuminen",
- "alarmPowerOff": "Virran sammutus",
- "alarmPowerOn": "Virran käynnistys",
- "alarmDoor": "Ovi",
- "alarmLock": "Lukittu",
- "alarmUnlock": "Lukitus avattu",
- "alarmGeofence": "Geoaita",
- "alarmGeofenceEnter": "Geoaitaan saapuminen",
- "alarmGeofenceExit": "Geoaidasta poistuminen",
- "alarmGpsAntennaCut": "GPS antennivika",
- "alarmAccident": "Onnettomuus",
- "alarmTow": "Hinaus",
- "alarmIdle": "Tyhjäkäynti",
- "alarmHighRpm": "Korkea kierrosluku",
- "alarmHardAcceleration": "Nopea kiihdytys",
- "alarmHardBraking": "Nopea jarrutus",
- "alarmHardCornering": "Kova käännös",
- "alarmLaneChange": "Kaistan vaihto",
- "alarmFatigueDriving": "Väsyneenä ajaminen",
- "alarmPowerCut": "Sähkökatko",
- "alarmPowerRestored": "Sähkökatkon loppuminen",
- "alarmJamming": "Häirintä",
- "alarmTemperature": "Lämpötila",
- "alarmParking": "Pysäköinti",
- "alarmBonnet": "Konepelti",
- "alarmFootBrake": "Jalkajarru",
- "alarmFuelLeak": "Polttoainevuoto",
- "alarmTampering": "Peukalointi",
- "alarmRemoving": "Siirto",
- "notificationType": "Ilmoituksen tyyppi",
- "notificationAlways": "Kaikki laitteet",
- "notificationNotificators": "Kanavat",
- "notificatorCommand": "Komento",
- "notificatorWeb": "Web",
- "notificatorMail": "Sähköposti",
- "notificatorSms": "Tekstiviesti",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Toista",
- "reportCombined": "Yhdistelmä",
- "reportRoute": "Reitti",
- "reportEvents": "Tapahtumat",
- "reportTrips": "Matkat",
- "reportStops": "Pysähdykset",
- "reportSummary": "Yhteenveto",
- "reportDaily": "Päivittäinen yhteenveto",
- "reportChart": "Kuvaaja",
- "reportConfigure": "Konfiguroi",
- "reportEventTypes": "Tapahtumatyypit",
- "reportChartType": "Kuvaajatyypit",
- "reportShowMarkers": "Näytä merkit",
- "reportExport": "Vie",
- "reportEmail": "Sähköpostiraportti",
- "reportSchedule": "Ajastettu",
- "reportPeriod": "Jakso",
- "reportCustom": "Oma",
- "reportToday": "Tänään",
- "reportYesterday": "Eilen",
- "reportThisWeek": "Tällä viikolla",
- "reportPreviousWeek": "Viime viikolla",
- "reportThisMonth": "Tässä kuussa",
- "reportPreviousMonth": "Viime kuussa",
- "reportDeviceName": "Laitteen nimi",
- "reportAverageSpeed": "Keskinopeus",
- "reportMaximumSpeed": "Suurin nopeus",
- "reportEngineHours": "Käyttötunnit",
- "reportDuration": "Kesto",
- "reportStartDate": "Aloituspäivä",
- "reportStartTime": "Aloitusaika",
- "reportStartAddress": "Aloitusosoite",
- "reportEndTime": "Lopetusaika",
- "reportEndAddress": "Lopetusosoite",
- "reportSpentFuel": "Käytetty polttoaine",
- "reportStartOdometer": "Matkamittari alussa",
- "reportEndOdometer": "Matkamittari lopussa",
- "statisticsTitle": "Tilastot",
- "statisticsCaptureTime": "Tarkasteluaika",
- "statisticsActiveUsers": "Aktiivisia käyttäjiä",
- "statisticsActiveDevices": "Aktiivisia laitteita",
- "statisticsRequests": "Pyyntöjä",
- "statisticsMessagesReceived": "Viestejä vastaanotettu",
- "statisticsMessagesStored": "Viestejä tallennettu",
- "statisticsGeocoder": "Geokoodauspyyntöjä",
- "statisticsGeolocation": "Sijaintipyyntöjä",
- "categoryArrow": "Nuoli",
- "categoryDefault": "Oletus",
- "categoryAnimal": "Eläin",
- "categoryBicycle": "Polkupyörä",
- "categoryBoat": "Vene",
- "categoryBus": "Bussi",
- "categoryCar": "Auto",
- "categoryCamper": "Matkailuajoneuvo",
- "categoryCrane": "Nosturi",
- "categoryHelicopter": "Helikopteri",
- "categoryMotorcycle": "Moottoripyörä",
- "categoryOffroad": "Maastoajoneuvo",
- "categoryPerson": "Henkilö",
- "categoryPickup": "Lava-auto",
- "categoryPlane": "Lentokone",
- "categoryShip": "Laiva",
- "categoryTractor": "Traktori",
- "categoryTrain": "Juna",
- "categoryTram": "Raitiovaunu",
- "categoryTrolleybus": "Johdinauto",
- "categoryTruck": "Kuorma-auto",
- "categoryVan": "Pakettiauto",
- "categoryScooter": "Potkulauta",
- "maintenanceStart": "Alku",
- "maintenancePeriod": "Huoltoväli"
-} \ No newline at end of file
diff --git a/web/l10n/fr.json b/web/l10n/fr.json
deleted file mode 100644
index 1e9147ae..00000000
--- a/web/l10n/fr.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Chargement...",
- "sharedHide": "Cacher",
- "sharedSave": "Enregistrer",
- "sharedUpload": "Upload",
- "sharedSet": "Régler",
- "sharedCancel": "Annuler",
- "sharedCopy": "Copy",
- "sharedAdd": "Ajouter",
- "sharedEdit": "Editer",
- "sharedRemove": "Effacer",
- "sharedRemoveConfirm": "Effacer objet?",
- "sharedNoData": "Aucune donnée",
- "sharedSubject": "Subject",
- "sharedYes": "Oui",
- "sharedNo": "Non",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "nd",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Heure",
- "sharedMinute": "Minute",
- "sharedSecond": "Seconde",
- "sharedDays": "jours",
- "sharedHours": "heures",
- "sharedMinutes": "minutes",
- "sharedDecimalDegrees": "Degrés Décimaux",
- "sharedDegreesDecimalMinutes": "Degrés Décimaux Minutes",
- "sharedDegreesMinutesSeconds": "Degrés Minutes Secondes",
- "sharedName": "Nom",
- "sharedDescription": "Description",
- "sharedSearch": "Recherche",
- "sharedIconScale": "Echelle des icônes",
- "sharedGeofence": "Périmètre virtuel",
- "sharedGeofences": "Périmètres virtuels",
- "sharedCreateGeofence": "Créé un périmètre virtuel",
- "sharedNotifications": "Notifications",
- "sharedNotification": "Notification",
- "sharedAttributes": "Attributs",
- "sharedAttribute": "Attribut",
- "sharedDrivers": "Pilotes",
- "sharedDriver": "Pilote",
- "sharedArea": "Aire",
- "sharedSound": "Son de notification",
- "sharedType": "Type",
- "sharedDistance": "Distance",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Litre",
- "sharedImpGallon": "Gallon impérial",
- "sharedUsGallon": "Gallon US",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "État de la carte",
- "sharedComputedAttribute": "Attribut calculé",
- "sharedComputedAttributes": "Attributs calculés",
- "sharedCheckComputedAttribute": "Verifier l'attribut calculé",
- "sharedExpression": "Expression",
- "sharedDevice": "Appareil",
- "sharedTest": "Test",
- "sharedTestNotification": "Test d'envoi de notification",
- "sharedTestNotificators": "Test canaux",
- "sharedTestExpression": "Test expression",
- "sharedCalendar": "Calendrier",
- "sharedCalendars": "Calendriers",
- "sharedFile": "Fichier",
- "sharedSearchDevices": "Recherche appareils",
- "sharedSortBy": "Trier par",
- "sharedFilterMap": "Filtrer sur la carte",
- "sharedSelectFile": "Sélectionner un fichier",
- "sharedPhone": "Téléphone",
- "sharedRequired": "Requis",
- "sharedPreferences": "Préférences",
- "sharedPermissions": "Permissions",
- "sharedConnections": "Connexions",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primaire",
- "sharedSecondary": "Secondaire",
- "sharedTypeString": "Chaîne de caractères",
- "sharedTypeNumber": "Nombre",
- "sharedTypeBoolean": "Booléen",
- "sharedTimezone": "Fuseau horaire",
- "sharedInfoTitle": "Information",
- "sharedSavedCommand": "Commande sauvegardée",
- "sharedSavedCommands": "Commandes sauvegardées",
- "sharedNew": "Nouveau",
- "sharedShowAddress": "Montrer adresse",
- "sharedShowDetails": "Plus de détails",
- "sharedDisabled": "Désactivé",
- "sharedMaintenance": "Entretien",
- "sharedDeviceAccumulators": "Accumulateurs",
- "sharedAlarms": "Alarmes",
- "sharedLocation": "Localisation",
- "sharedImport": "Importer",
- "sharedColumns": "Colonnes",
- "sharedDropzoneText": "Glissez et déposez un fichier ici ou cliquez",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Récurrence",
- "calendarOnce": "Une fois",
- "calendarDaily": "Journalier",
- "calendarWeekly": "Hebdomadaire",
- "calendarMonthly": "Mensuel",
- "calendarDays": "Jours",
- "calendarSunday": "Dimanche",
- "calendarMonday": "Lundi",
- "calendarTuesday": "Mardi",
- "calendarWednesday": "Mercredi",
- "calendarThursday": "Jeudi",
- "calendarFriday": "Vendredi",
- "calendarSaturday": "Samedi",
- "attributeShowGeofences": "Afficher les périmètres virtuels",
- "attributeSpeedLimit": "Limite de vitesse",
- "attributeFuelDropThreshold": "Seuil perte de carburant",
- "attributeFuelIncreaseThreshold": "Seuil ajout de carburant",
- "attributePolylineDistance": "Distance polyligne",
- "attributeReportIgnoreOdometer": "Rapport: Ignorer l'odomètre",
- "attributeWebReportColor": "Web: couleur du rapport",
- "attributeDevicePassword": "Mot de passe de l'appareil",
- "attributeDeviceImage": "Image de l'appareil",
- "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",
- "attributeWebSelectZoom": "Web: Zoomer à la sélection",
- "attributeWebMaxZoom": "Web: Zoom maximum",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover Clé Utilisateur",
- "attributePushoverDeviceNames": "Pushover Noms d'appareils",
- "attributeMailSmtpHost": "Mail: Hôte SMTP",
- "attributeMailSmtpPort": "Mail: Port SMTP",
- "attributeMailSmtpStarttlsEnable": "Mail: Activer SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "Mail: Requérir SMTP STARTTLS",
- "attributeMailSmtpSslEnable": "Mail: Activer SMTP SSL",
- "attributeMailSmtpSslTrust": "Mail: Trust SMTP SSL",
- "attributeMailSmtpSslProtocols": "Mail: Protocoles SMTP SSL",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: Activer l'authentification",
- "attributeMailSmtpUsername": "Mail: Nom d'utilisateur",
- "attributeMailSmtpPassword": "Mail: Mot de passe",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Désactiver les attributs",
- "attributeUiDisableGroups": "UI: Désactiver groupes",
- "attributeUiDisableEvents": "UI: Désactiver évènements",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "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",
- "attributeUiHidePositionAttributes": "UI: Cacher Attributs de Position",
- "attributeUiDisableLoginLanguage": "UI: Désactiver choix des languges",
- "attributeNotificationTokens": "Jeton de notification",
- "attributePopupInfo": "Informations dans popup",
- "errorTitle": "Erreur",
- "errorGeneral": "Paramètres invalides ou violation de contrainte",
- "errorConnection": "Erreur de connexion",
- "errorSocket": "Erreur de connexion au socket web",
- "errorZero": "Ne peut être zéro",
- "userEmail": "Email",
- "userPassword": "Mot de Passe",
- "userAdmin": "Admin",
- "userRemember": "Rappel",
- "userExpirationTime": "Expiration",
- "userDeviceLimit": "Limite de l'appareil",
- "userUserLimit": "Limite d'utilisateurs",
- "userDeviceReadonly": "Appareil - Lecture seule",
- "userLimitCommands": "Commandes de limite",
- "userDisableReports": "Désactiver les rapports",
- "userFixedEmail": "Changement d'email bloqué",
- "userToken": "Jeton",
- "userDeleteAccount": "Supprimer le compte",
- "userTemporary": "Temporary",
- "loginTitle": "Identification",
- "loginLanguage": "Langue",
- "loginReset": "Réinitialiser le mot de passe",
- "loginRegister": "Inscription",
- "loginLogin": "Se connecter",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Adresse email ou mot de passe incorrect",
- "loginCreated": "Nouvel utilisateur enregistré",
- "loginResetSuccess": "Vérifiez vos emails",
- "loginUpdateSuccess": "Le nouveau mot de passe est défini",
- "loginLogout": "Déconnexion",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Appareils et État",
- "deviceSelected": "Appareil sélectionné",
- "deviceTitle": "Appareils",
- "devicePrimaryInfo": "Titre de l'appareil",
- "deviceSecondaryInfo": "Détail de l'appareil",
- "deviceIdentifier": "Identifiant",
- "deviceModel": "Modèle",
- "deviceContact": "Contact",
- "deviceCategory": "Catégorie",
- "deviceLastUpdate": "Dernière mise à jour",
- "deviceCommand": "Commande",
- "deviceFollow": "Suivre",
- "deviceTotalDistance": "Distance totale",
- "deviceStatus": "Statut",
- "deviceStatusOnline": "En ligne",
- "deviceStatusOffline": "Hors ligne",
- "deviceStatusUnknown": "Inconnu",
- "deviceRegisterFirst": "Enregistrez votre premier appareil",
- "deviceIdentifierHelp": "IMEI, numéro de série ou autre id. Cela doit correspondre à l'identifiant avec lequel l'appareil envoie ses données au serveur.",
- "deviceShare": "Share Device",
- "groupDialog": "Groupe",
- "groupParent": "Groupe",
- "groupNoGroup": "Sans groupe",
- "settingsTitle": "Paramètres",
- "settingsUser": "Compte",
- "settingsGroups": "Groupes",
- "settingsServer": "Serveur",
- "settingsUsers": "Utilisateurs",
- "settingsDistanceUnit": "Unité de distance",
- "settingsAltitudeUnit": "Unité d'altitude",
- "settingsSpeedUnit": "Unité de vitesse",
- "settingsVolumeUnit": "Unité de volume",
- "settingsTwelveHourFormat": "Format d'heure - 12 heures",
- "settingsCoordinateFormat": "Format des coordonées",
- "settingsServerVersion": "Version serveur",
- "settingsAppVersion": "Version application",
- "settingsConnection": "Connexion",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Rapports",
- "reportScheduled": "Rapports programmés",
- "reportDevice": "Appareil",
- "reportGroup": "Groupe",
- "reportFrom": "De",
- "reportTo": "À",
- "reportShow": "Afficher",
- "reportClear": "Effacer",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Plans",
- "linkStreetView": "Street View",
- "positionFixTime": "Horodatage",
- "positionDeviceTime": "Heure de l'appareil",
- "positionServerTime": "Heure du serveur",
- "positionValid": "Valide",
- "positionAccuracy": "Précision",
- "positionLatitude": "Latitude",
- "positionLongitude": "Longitude",
- "positionAltitude": "Altitude",
- "positionSpeed": "Vitesse",
- "positionCourse": "Orientation",
- "positionAddress": "Adresse",
- "positionProtocol": "Protocole",
- "positionDistance": "Distance",
- "positionRpm": "t/m",
- "positionFuel": "Carburant",
- "positionPower": "Courant",
- "positionBattery": "Batterie",
- "positionRaw": "Brut",
- "positionIndex": "Index",
- "positionHdop": "Dilution de précision horizontale",
- "positionVdop": "Dilution de précision verticale",
- "positionPdop": "Dilution de précision de position",
- "positionSat": "Satellites",
- "positionSatVisible": "Satellites visibles",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Itinérance",
- "positionEvent": "Évènement",
- "positionAlarm": "Alarme",
- "positionStatus": "Statut",
- "positionOdometer": "Odomètre",
- "positionServiceOdometer": "Odomètre d'entretien",
- "positionTripOdometer": "Odomètre de voyage",
- "positionHours": "Heures",
- "positionSteps": "Etapes",
- "positionInput": "Entrée de données",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Sortie de données",
- "positionBatteryLevel": "Niveau de batterie",
- "positionFuelConsumption": "Consommation de carburant",
- "positionRfid": "RFID",
- "positionVersionFw": "Version du micrologiciel",
- "positionVersionHw": "Version du matériel",
- "positionIgnition": "Allumage",
- "positionFlags": "Drapeau",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "Numéro de chassis",
- "positionApproximate": "Approximatif",
- "positionThrottle": "Accélérateur",
- "positionMotion": "Mouvement",
- "positionArmed": "Armé",
- "positionAcceleration": "Accélération",
- "positionTemp": "Température",
- "positionDeviceTemp": "Température de l'appareil",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Opérateur",
- "positionCommand": "Commande",
- "positionBlocked": "Bloqué",
- "positionDtcs": "Code erreur",
- "positionObdSpeed": "Vitesse OBD",
- "positionObdOdometer": "Odomètre OBD",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "ID unique du pilote",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Vidéo",
- "positionAudio": "Audio",
- "serverTitle": "Paramètres de serveur",
- "serverZoom": "Zoom",
- "serverRegistration": "Inscription",
- "serverReadonly": "Lecture seule",
- "serverForceSettings": "Forcer les paramètres",
- "serverAnnouncement": "Avis",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Carte",
- "mapActive": "Cartes actives",
- "mapOverlay": "Superposition de cartes",
- "mapOverlayCustom": "Superposition personnalisée",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather Clé d'API",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Précipitations",
- "mapOpenWeatherPressure": "OpenWeather Pression",
- "mapOpenWeatherWind": "OpenWeather Vents",
- "mapOpenWeatherTemperature": "OpenWeather Températures",
- "mapLayer": "Couche cartographique",
- "mapCustom": "Personnalisé (XYZ)",
- "mapCustomArcgis": "Personnalisé (ArcGIS)",
- "mapCustomLabel": "Carte Personnalisée",
- "mapCarto": "Cartographie Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Clé d'API",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybride",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satelitte",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Jeton d'Accès",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler Clé d'API",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Jeton d'Accès",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom Clé d'API",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here Clé d'API",
- "mapShapePolygon": "Polygone",
- "mapShapeCircle": "Cercle",
- "mapShapePolyline": "Polyligne",
- "mapLiveRoutes": "Routes en direct",
- "mapDirection": "Montre la direction",
- "mapCurrentLocation": "Localisation actuelle",
- "mapPoiLayer": "Couche Point d'intérêt",
- "mapClustering": "Regroupement des marqueurs",
- "mapOnSelect": "Afficher la carte lors de la sélection",
- "mapDefault": "Carte par défaut",
- "stateTitle": "État",
- "stateName": "Paramètre",
- "stateValue": "Valeur",
- "commandTitle": "Commande",
- "commandSend": "Envoyer",
- "commandSent": "Commande envoyée",
- "commandQueued": "Commande mise en queue",
- "commandUnit": "Unité",
- "commandCustom": "Commande personnalisée",
- "commandDeviceIdentification": "Identification de l'appareil",
- "commandPositionSingle": "Rapport de position unique",
- "commandPositionPeriodic": "Périodicité du rapport de position",
- "commandPositionStop": "Arrêt du rapport de position",
- "commandEngineStop": "Arrêt moteur",
- "commandEngineResume": "Démarrage moteur",
- "commandAlarmArm": "Activer l'alarme",
- "commandAlarmDisarm": "Désactiver l'alarme",
- "commandAlarmDismiss": "Ignorer l'alarme",
- "commandSetTimezone": "Régler le fuseau horaire",
- "commandRequestPhoto": "Demander une photo",
- "commandPowerOff": "Eteindre l'appareil",
- "commandRebootDevice": "Redémarrer l'appareil",
- "commandFactoryReset": "Réinitialisation d'usine",
- "commandSendSms": "Envoyer un SMS",
- "commandSendUssd": "Envoyer un USSD",
- "commandSosNumber": "Régler le n° SOS",
- "commandSilenceTime": "Définir le temps de silence",
- "commandSetPhonebook": "Définir l'annuaire",
- "commandVoiceMessage": "Message vocal",
- "commandOutputControl": "Contrôle de la sortie",
- "commandVoiceMonitoring": "Moniteur vocal",
- "commandSetAgps": "Fixer l'AGPS",
- "commandSetIndicator": "Définir l'indicateur",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Acquérir la version",
- "commandFirmwareUpdate": "Mettre à jour le firmware",
- "commandSetConnection": "Fixer la connexion",
- "commandSetOdometer": "Fixer l'odomètre",
- "commandGetModemStatus": "Acquérir le statut du modem",
- "commandGetDeviceStatus": "Acquérir le statut du périphérique",
- "commandSetSpeedLimit": "Définir la limite de vitesse",
- "commandModePowerSaving": "Mode économie d'énergie",
- "commandModeDeepSleep": "Mode veille profonde",
- "commandAlarmGeofence": "Définir l'alarme périmètre virtuel",
- "commandAlarmBattery": "Définir l'alarme de batterie",
- "commandAlarmSos": "Définir l'alarme SOS",
- "commandAlarmRemove": "Définir l'effacement des alarmes",
- "commandAlarmClock": "Définir l'alarme de l'horloge",
- "commandAlarmSpeed": "Définir l'alarme de vitesse",
- "commandAlarmFall": "Définir l'alarme de chute",
- "commandAlarmVibration": "Définir l'alarme de vibration",
- "commandFrequency": "Fréquence",
- "commandTimezone": "Décalage horaire",
- "commandMessage": "Message",
- "commandRadius": "Rayon",
- "commandEnable": "Activer",
- "commandData": "Données",
- "commandIndex": "Index",
- "commandPhone": "Numéro de téléphone",
- "commandServer": "Serveur",
- "commandPort": "Port",
- "eventAll": "Tous les événements",
- "eventDeviceOnline": "Statut: en ligne",
- "eventDeviceUnknown": "Statut: inconnu",
- "eventDeviceOffline": "Statut: hors ligne",
- "eventDeviceInactive": "Appareil inactif",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Appareil en mouvement",
- "eventDeviceStopped": "Appareil arrêté",
- "eventDeviceOverspeed": "Vitesse limite dépassée",
- "eventDeviceFuelDrop": "Perte de carburant",
- "eventDeviceFuelIncrease": "Ajout de carburant",
- "eventCommandResult": "Résultat de la commande",
- "eventGeofenceEnter": "Entrée dans le périmètre virtuel",
- "eventGeofenceExit": "Sortie du périmètre virtuel",
- "eventAlarm": "Alarme",
- "eventIgnitionOn": "Contact mis",
- "eventIgnitionOff": "Contact coupé",
- "eventMaintenance": "Entretien requis",
- "eventTextMessage": "Message textuel reçu",
- "eventDriverChanged": "Changement de conducteur",
- "eventMedia": "Média",
- "eventsScrollToLast": "Faire défiler jusqu'à la fin",
- "eventsSoundEvents": "Son d'événements",
- "eventsSoundAlarms": "Son d'alarmes",
- "alarmGeneral": "Général",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Mouvement",
- "alarmLowspeed": "Basse vitesse",
- "alarmOverspeed": "Vitesse trop haute",
- "alarmFallDown": "Chute",
- "alarmLowPower": "Tension basse",
- "alarmLowBattery": "Batterie basse",
- "alarmFault": "Défaut",
- "alarmPowerOff": "Eteindre",
- "alarmPowerOn": "Allumer",
- "alarmDoor": "Porte",
- "alarmLock": "Verrouiller",
- "alarmUnlock": "Déverrouiller",
- "alarmGeofence": "Périmètre virtuel",
- "alarmGeofenceEnter": "Entrée dans le périmètre virtuel",
- "alarmGeofenceExit": "Sortie du périmètre virtuel",
- "alarmGpsAntennaCut": "Antenne GPS coupée",
- "alarmAccident": "Accident",
- "alarmTow": "Remorquage",
- "alarmIdle": "Au repos",
- "alarmHighRpm": "Tours par minute élevés",
- "alarmHardAcceleration": "Accélération brusque",
- "alarmHardBraking": "Freinage brusque",
- "alarmHardCornering": "Virage sec",
- "alarmLaneChange": "Changement de bande",
- "alarmFatigueDriving": "Conduite en état de fatigue",
- "alarmPowerCut": "Courant coupé",
- "alarmPowerRestored": "Courant restauré",
- "alarmJamming": "Brouillage",
- "alarmTemperature": "Température",
- "alarmParking": "Parking",
- "alarmBonnet": "Capot",
- "alarmFootBrake": "Frein à pied",
- "alarmFuelLeak": "Fuite de carburant",
- "alarmTampering": "Altération",
- "alarmRemoving": "Retrait",
- "notificationType": "Type de notification",
- "notificationAlways": "Tous les appareils",
- "notificationNotificators": "Canaux",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combinés",
- "reportRoute": "Route",
- "reportEvents": "Évènements",
- "reportTrips": "Trajets",
- "reportStops": "Arrêts",
- "reportSummary": "Résumé",
- "reportDaily": "Rapport journalier",
- "reportChart": "Graphique",
- "reportConfigure": "Configurer",
- "reportEventTypes": "Types d'évènements",
- "reportChartType": "Type de graphique",
- "reportShowMarkers": "Montrer les marqueurs",
- "reportExport": "Exporter",
- "reportEmail": "Rapport par email",
- "reportSchedule": "Programme",
- "reportPeriod": "Période",
- "reportCustom": "Personnalisé",
- "reportToday": "Aujourd'hui",
- "reportYesterday": "Hier",
- "reportThisWeek": "Cette semaine",
- "reportPreviousWeek": "La semaine dernière",
- "reportThisMonth": "Ce mois-ci",
- "reportPreviousMonth": "Le mois dernier",
- "reportDeviceName": "Nom de l'appareil",
- "reportAverageSpeed": "Vitesse moyenne",
- "reportMaximumSpeed": "Vitesse maximum",
- "reportEngineHours": "Heures du moteur",
- "reportDuration": "Durée",
- "reportStartDate": "Date de départ",
- "reportStartTime": "Heure de départ",
- "reportStartAddress": "Adresse de départ",
- "reportEndTime": "Date de fin",
- "reportEndAddress": "Adresse de fin",
- "reportSpentFuel": "Consommation de carburant",
- "reportStartOdometer": "Départ de l'odomètre",
- "reportEndOdometer": "Arrêt de l'odomètre",
- "statisticsTitle": "Statistiques",
- "statisticsCaptureTime": "Heure de capture",
- "statisticsActiveUsers": "Utilisateurs actifs",
- "statisticsActiveDevices": "Appareils actifs",
- "statisticsRequests": "Requêtes",
- "statisticsMessagesReceived": "Messages reçus",
- "statisticsMessagesStored": "Messages stockés",
- "statisticsGeocoder": "Requêtes de géocodage",
- "statisticsGeolocation": "Requêtes de géolocalisation",
- "categoryArrow": "Flèche",
- "categoryDefault": "Par défaut",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Vélo",
- "categoryBoat": "Bateau",
- "categoryBus": "Bus",
- "categoryCar": "Voiture",
- "categoryCamper": "Camper",
- "categoryCrane": "Grue",
- "categoryHelicopter": "Hélicoptère",
- "categoryMotorcycle": "Moto",
- "categoryOffroad": "Véhicule tout-terrain",
- "categoryPerson": "Personne",
- "categoryPickup": "Pickup",
- "categoryPlane": "Avion",
- "categoryShip": "Bateau",
- "categoryTractor": "Tracteur",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Camion",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Départ",
- "maintenancePeriod": "Période"
-} \ No newline at end of file
diff --git a/web/l10n/gl.json b/web/l10n/gl.json
deleted file mode 100644
index 8464e7bb..00000000
--- a/web/l10n/gl.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Cargando...",
- "sharedHide": "Agochar",
- "sharedSave": "Gardar",
- "sharedUpload": "Upload",
- "sharedSet": "Establecer",
- "sharedCancel": "Cancelar",
- "sharedCopy": "Copy",
- "sharedAdd": "Engadir",
- "sharedEdit": "Editar",
- "sharedRemove": "Eliminar",
- "sharedRemoveConfirm": "Eliminar elemento?",
- "sharedNoData": "Sen datos",
- "sharedSubject": "Subject",
- "sharedYes": "Si",
- "sharedNo": "Non",
- "sharedKm": "Km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "Nós",
- "sharedKmh": "Km/h",
- "sharedMph": "mph",
- "sharedHour": "Hora",
- "sharedMinute": "Minuto",
- "sharedSecond": "Segundo",
- "sharedDays": "días",
- "sharedHours": "horas",
- "sharedMinutes": "minutos",
- "sharedDecimalDegrees": "Graos",
- "sharedDegreesDecimalMinutes": "Minutos",
- "sharedDegreesMinutesSeconds": "Segundos",
- "sharedName": "Nome",
- "sharedDescription": "Descrición",
- "sharedSearch": "Buscar",
- "sharedIconScale": "Escala das iconas",
- "sharedGeofence": "Xeocerca",
- "sharedGeofences": "Xeocercas",
- "sharedCreateGeofence": "Crear xeocerca",
- "sharedNotifications": "Notificacións",
- "sharedNotification": "Notificación",
- "sharedAttributes": "Atributos",
- "sharedAttribute": "Atributo",
- "sharedDrivers": "Condutores",
- "sharedDriver": "Condutor",
- "sharedArea": "Área",
- "sharedSound": "Son de notificación",
- "sharedType": "Tipo",
- "sharedDistance": "Distancia",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Litro",
- "sharedImpGallon": "Imp. Galón",
- "sharedUsGallon": "Galón dos EUA",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Obter o estado do mapa",
- "sharedComputedAttribute": "Atributo calculado",
- "sharedComputedAttributes": "Atributos calculados",
- "sharedCheckComputedAttribute": "Revisar atributo calculado",
- "sharedExpression": "Expresión",
- "sharedDevice": "Dispositivo",
- "sharedTest": "Probar",
- "sharedTestNotification": "Enviar notificación de proba",
- "sharedTestNotificators": "Probar Canles",
- "sharedTestExpression": "Probar expresión",
- "sharedCalendar": "Calendario",
- "sharedCalendars": "Calendarios",
- "sharedFile": "Arquivo",
- "sharedSearchDevices": "Buscar dispositivos",
- "sharedSortBy": "Ordenar por",
- "sharedFilterMap": "Filtrar no mapa",
- "sharedSelectFile": "Seleccione Arquivo",
- "sharedPhone": "Teléfono",
- "sharedRequired": "Obrigatorio",
- "sharedPreferences": "Preferencias",
- "sharedPermissions": "Permisos",
- "sharedConnections": "Conexións",
- "sharedExtra": "Extra",
- "sharedPrimary": "Principal",
- "sharedSecondary": "Secundario",
- "sharedTypeString": "Cadena",
- "sharedTypeNumber": "Número",
- "sharedTypeBoolean": "Booleano",
- "sharedTimezone": "Fuso horario",
- "sharedInfoTitle": "Información",
- "sharedSavedCommand": "Comando gardado",
- "sharedSavedCommands": "Comandos gardados",
- "sharedNew": "Novo…",
- "sharedShowAddress": "Mostrar enderezo",
- "sharedShowDetails": "Máis detalles",
- "sharedDisabled": "Desactivado",
- "sharedMaintenance": "Mantemento",
- "sharedDeviceAccumulators": "Acumuladores",
- "sharedAlarms": "Alarmas",
- "sharedLocation": "Localización",
- "sharedImport": "Importar",
- "sharedColumns": "Columnas",
- "sharedDropzoneText": "Arrastra e solta un arquivo aquí ou fai clic",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recorrencia",
- "calendarOnce": "Unha vez",
- "calendarDaily": "A diario",
- "calendarWeekly": "Semanal",
- "calendarMonthly": "Mensual",
- "calendarDays": "Días",
- "calendarSunday": "Domingo",
- "calendarMonday": "Luns",
- "calendarTuesday": "martes",
- "calendarWednesday": "Mércores",
- "calendarThursday": "Xoves",
- "calendarFriday": "Venres",
- "calendarSaturday": "Sábado",
- "attributeShowGeofences": "Mostrar xeocercas",
- "attributeSpeedLimit": "Límite de velocidade",
- "attributeFuelDropThreshold": "Limiar de perda de combustible",
- "attributeFuelIncreaseThreshold": "Umbral de subida de combustible",
- "attributePolylineDistance": "Distancia de poliliña",
- "attributeReportIgnoreOdometer": "Informe: ignorar o odómetro",
- "attributeWebReportColor": "Web: Cor de informe",
- "attributeDevicePassword": "Contrasinal do dispositivo",
- "attributeDeviceImage": "Imaxe do dispositivo",
- "attributeDeviceInactivityStart": "Inicio da inactividade do dispositivo",
- "attributeDeviceInactivityPeriod": "Período de inactividade do dispositivo",
- "attributeProcessingCopyAttributes": "Procesamento: Copia de atributos",
- "attributeColor": "Cor",
- "attributeWebLiveRouteLength": "Web: Lonxitude da ruta en directo",
- "attributeWebSelectZoom": "Web: Zoom na selección",
- "attributeWebMaxZoom": "Web: Zoom máximo",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover nomes de dispositivos",
- "attributeMailSmtpHost": "Correo: Servidor SMTP",
- "attributeMailSmtpPort": "Correo: porto SMTP",
- "attributeMailSmtpStarttlsEnable": "Correo: Activar SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "Correo: SMTP STARTTLS necesario",
- "attributeMailSmtpSslEnable": "Correo: Activar SMTP SSL",
- "attributeMailSmtpSslTrust": "Correo: SMTP SSL de confianza",
- "attributeMailSmtpSslProtocols": "Correo: Protocolos SMTP SSL",
- "attributeMailSmtpFrom": "Correo: SMTP De",
- "attributeMailSmtpAuth": "Correo: Activar autenticación SMTP",
- "attributeMailSmtpUsername": "Correo: Nome de usuario SMTP",
- "attributeMailSmtpPassword": "Correo: Contrasinal SMTP",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "IU: Desactivar atributos",
- "attributeUiDisableGroups": "IU: Desactivar grupos",
- "attributeUiDisableEvents": "IU: Desactivar eventos",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "IU: Desactivar condutores",
- "attributeUiDisableComputedAttributes": "IU: Desactivar atributos calculados",
- "attributeUiDisableCalendars": "IU: desactivar os calendarios",
- "attributeUiDisableMaintenance": "IU: Desactivar o mantemento",
- "attributeUiHidePositionAttributes": "IU: ocultar atributos de posición",
- "attributeUiDisableLoginLanguage": "IU: desactivar o idioma de inicio de sesión",
- "attributeNotificationTokens": "Tokens de notificación",
- "attributePopupInfo": "Información emerxente",
- "errorTitle": "Erro",
- "errorGeneral": "Parámetros non válidos ou violación das restricións",
- "errorConnection": "Erro de conexión",
- "errorSocket": "Erro de conexión do socket web",
- "errorZero": "Non pode ser cero",
- "userEmail": "Email",
- "userPassword": "Contrasinal",
- "userAdmin": "Administrador",
- "userRemember": "Recordar",
- "userExpirationTime": "Caducidade",
- "userDeviceLimit": "Límite de dispositivos",
- "userUserLimit": "Límite de usuarios",
- "userDeviceReadonly": "Dispositivo só de lectura",
- "userLimitCommands": "Limitar comandos",
- "userDisableReports": "Desactivar informes",
- "userFixedEmail": "Sen cambio de correo electrónico",
- "userToken": "Token Acceso",
- "userDeleteAccount": "Eliminar conta",
- "userTemporary": "Temporary",
- "loginTitle": "Iniciar sesión",
- "loginLanguage": "Idioma",
- "loginReset": "Restablecer o contrasinal",
- "loginRegister": "Rexistrarse",
- "loginLogin": "Iniciar sesión",
- "loginOpenId": "Iniciar sesión con OpenID",
- "loginFailed": "Enderezo de correo electrónico ou contrasinal incorrectos",
- "loginCreated": "Rexistrouse un novo usuario",
- "loginResetSuccess": "Comprobe o seu correo electrónico",
- "loginUpdateSuccess": "Establécese un novo contrasinal",
- "loginLogout": "Pechar sesión",
- "loginLogo": "Logotipo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Dispositivos e estado",
- "deviceSelected": "Dispositivo seleccionado",
- "deviceTitle": "Dispositivos",
- "devicePrimaryInfo": "Título do dispositivo",
- "deviceSecondaryInfo": "Detalle do dispositivo",
- "deviceIdentifier": "Identificador",
- "deviceModel": "Modelo",
- "deviceContact": "Contacto",
- "deviceCategory": "Categoría",
- "deviceLastUpdate": "Última actualización",
- "deviceCommand": "Comando",
- "deviceFollow": "Seguir",
- "deviceTotalDistance": "Distancia total",
- "deviceStatus": "Estado",
- "deviceStatusOnline": "En liña",
- "deviceStatusOffline": "Sen conexión",
- "deviceStatusUnknown": "Descoñecido",
- "deviceRegisterFirst": "Rexistra o teu primeiro dispositivo",
- "deviceIdentifierHelp": " O IMEI, número de serie ou outro id., ten que ser igual que o identificador do dispositivo que se meteu no servidor",
- "deviceShare": "Share Device",
- "groupDialog": "Grupo",
- "groupParent": "Grupo",
- "groupNoGroup": "Sen grupo",
- "settingsTitle": "Axustes",
- "settingsUser": "Conta",
- "settingsGroups": "Grupos",
- "settingsServer": "Servidor",
- "settingsUsers": "Usuarios",
- "settingsDistanceUnit": "Unidade de Distancia",
- "settingsAltitudeUnit": "Unidade de altitude",
- "settingsSpeedUnit": "Unidade de velocidade",
- "settingsVolumeUnit": "Unidad de volumen",
- "settingsTwelveHourFormat": "Formato de 12 horas",
- "settingsCoordinateFormat": "Formato de coordenadas",
- "settingsServerVersion": "Versión do servidor",
- "settingsAppVersion": "Versión da aplicación",
- "settingsConnection": "Conexión",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Informes",
- "reportScheduled": "Informes programados",
- "reportDevice": "Dispositivo",
- "reportGroup": "Grupo",
- "reportFrom": "Dende",
- "reportTo": "Ata",
- "reportShow": "Mostrar",
- "reportClear": "Limpar",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Hora axustada",
- "positionDeviceTime": "Hora do dispositivo",
- "positionServerTime": "Hora do servidor",
- "positionValid": "Válida",
- "positionAccuracy": "Precisión",
- "positionLatitude": "Latitude",
- "positionLongitude": "Lonxitude",
- "positionAltitude": "Altitude",
- "positionSpeed": "Velocidade",
- "positionCourse": "Rumbo",
- "positionAddress": "Enderezo",
- "positionProtocol": "Protocolo",
- "positionDistance": "Distancia",
- "positionRpm": "RPM",
- "positionFuel": "Combustible",
- "positionPower": "Enerxía",
- "positionBattery": "Batería",
- "positionRaw": "Crudo",
- "positionIndex": "Índice",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satélites",
- "positionSatVisible": "Satélites visibles",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Itinerancia",
- "positionEvent": "Evento",
- "positionAlarm": "Alarma",
- "positionStatus": "Estado",
- "positionOdometer": "Odómetro",
- "positionServiceOdometer": "Odómetro de mantemento",
- "positionTripOdometer": "Odómetro de viaxe",
- "positionHours": "Horas",
- "positionSteps": "Pasos",
- "positionInput": "Entrada",
- "positionHeartRate": "Ritmo cardíaco",
- "positionOutput": "Saída",
- "positionBatteryLevel": "Nivel de batería",
- "positionFuelConsumption": "Consumo de combustible",
- "positionRfid": "RFID",
- "positionVersionFw": "Versión de firmware",
- "positionVersionHw": "Versión de hardware",
- "positionIgnition": "Encendido",
- "positionFlags": "Bandeiras",
- "positionCharge": "Carga",
- "positionIp": "IP",
- "positionArchive": "Arquivo",
- "positionVin": "VIN",
- "positionApproximate": "Aproximado",
- "positionThrottle": "Acelerador",
- "positionMotion": "Movemento",
- "positionArmed": "Armado",
- "positionAcceleration": "Aceleración",
- "positionTemp": "Temperatura",
- "positionDeviceTemp": "Temperatura do dispositivo",
- "positionCoolantTemp": "Temperatura do Refrixerante",
- "positionOperator": "Operador",
- "positionCommand": "Comando",
- "positionBlocked": "Bloqueado",
- "positionDtcs": "DTC",
- "positionObdSpeed": "Velocidade OBD",
- "positionObdOdometer": "Odómetro OBD",
- "positionDrivingTime": "Tempo conducindo",
- "positionDriverUniqueId": "ID única do condutor",
- "positionCard": "Tarxeta",
- "positionImage": "Imaxe",
- "positionVideo": "Vídeo",
- "positionAudio": "Audio",
- "serverTitle": "Axustes do servidor",
- "serverZoom": "Zoom",
- "serverRegistration": "Rexistro",
- "serverReadonly": "Só lectura",
- "serverForceSettings": "Forzar axustes",
- "serverAnnouncement": "Anuncio",
- "serverName": "Nome do servidor",
- "serverDescription": "Descrición do servidor",
- "serverColorPrimary": "Color primario",
- "serverColorSecondary": "Color secundario",
- "serverLogo": "Imaxe do logotipo",
- "serverLogoInverted": "Imaxe do logotipo con cores inversos",
- "serverChangeDisable": "Desactivar o cambio de servidor",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Mapa",
- "mapActive": "Mapas activos",
- "mapOverlay": "Superposición de mapas",
- "mapOverlayCustom": "Superposición personalizada",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Capa do mapa",
- "mapCustom": "Personalizado (XYZ)",
- "mapCustomArcgis": "Personalizado (ArcGIS)",
- "mapCustomLabel": "Mapa personalizado",
- "mapCarto": "Carto",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps - Clave",
- "mapBingRoad": "Bing Maps - Carreteras",
- "mapBingAerial": "Bing Maps - Aéreo",
- "mapBingHybrid": "Bing Maps - Híbrido",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex",
- "mapYandexSat": "Yandex Satélite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polígono",
- "mapShapeCircle": "Círculo",
- "mapShapePolyline": "Poliliña",
- "mapLiveRoutes": "Rutas en directo",
- "mapDirection": "Mostrar dirección",
- "mapCurrentLocation": "Localización actual",
- "mapPoiLayer": "Capa de PDI",
- "mapClustering": "Agrupar marcadores",
- "mapOnSelect": "Mostrar mapa na selección",
- "mapDefault": "Mapa por defecto",
- "stateTitle": "Estado",
- "stateName": "Atributo",
- "stateValue": "Valor",
- "commandTitle": "Comando",
- "commandSend": "Enviar",
- "commandSent": "Comando enviado",
- "commandQueued": "Comando en cola",
- "commandUnit": "Unidade",
- "commandCustom": "Comando personalizado",
- "commandDeviceIdentification": "Identificador do dispositivo",
- "commandPositionSingle": "Informe único",
- "commandPositionPeriodic": "Informes periódicos",
- "commandPositionStop": "Deixar de informar",
- "commandEngineStop": "Apagar motor",
- "commandEngineResume": "Desbloquear aceso de motor",
- "commandAlarmArm": "Armar alarma",
- "commandAlarmDisarm": "Desarmar alarma",
- "commandAlarmDismiss": "Descartar alarma",
- "commandSetTimezone": "Establecer fuso horario",
- "commandRequestPhoto": "Solicitar foto",
- "commandPowerOff": "Apagar o dispositivo",
- "commandRebootDevice": "Reiniciar dispositivo",
- "commandFactoryReset": "Restablecemento de fábrica",
- "commandSendSms": "Enviar SMS",
- "commandSendUssd": "Enviar USSD",
- "commandSosNumber": "Establece o número de SOS",
- "commandSilenceTime": "Establecer o horario de silencio",
- "commandSetPhonebook": "Establecer axenda telefónica",
- "commandVoiceMessage": "Mensaxe de voz",
- "commandOutputControl": "Control de saídas",
- "commandVoiceMonitoring": "Monitorización de voz",
- "commandSetAgps": "Establecer AGPS",
- "commandSetIndicator": "Establecer indicador",
- "commandConfiguration": "Configuración",
- "commandGetVersion": "Obter a versión",
- "commandFirmwareUpdate": "Actualizar o firmware",
- "commandSetConnection": "Establecer conexión",
- "commandSetOdometer": "Establecer odómetro",
- "commandGetModemStatus": "Obter o estado do módem",
- "commandGetDeviceStatus": "Obter o estado do dispositivo",
- "commandSetSpeedLimit": "Establecer límite de velocidade",
- "commandModePowerSaving": "Modo de aforro de enerxía",
- "commandModeDeepSleep": "Modo de aforro de enerxía profundo",
- "commandAlarmGeofence": "Establecer alarma de xeocerca",
- "commandAlarmBattery": "Establecer alarma de batería",
- "commandAlarmSos": "Establecer alarma de SOS",
- "commandAlarmRemove": "Establecer alarma de desmontaje",
- "commandAlarmClock": "Establecer alarma de hora",
- "commandAlarmSpeed": "Establecer alarma de velocidade",
- "commandAlarmFall": "Establecer alarma de caída",
- "commandAlarmVibration": "Establecer alarma de vibración",
- "commandFrequency": "Frecuencia",
- "commandTimezone": "Desfase de fuso horario",
- "commandMessage": "Mensaxe",
- "commandRadius": "Radio",
- "commandEnable": "Activar",
- "commandData": "Datos",
- "commandIndex": "Índice",
- "commandPhone": "Número de teléfono",
- "commandServer": "Servidor",
- "commandPort": "Porto",
- "eventAll": "Todos os eventos",
- "eventDeviceOnline": "Estado en liña",
- "eventDeviceUnknown": "Estado descoñecido",
- "eventDeviceOffline": "Estado sen conexión",
- "eventDeviceInactive": "Dispositivo inactivo",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Dispositivo en movemento",
- "eventDeviceStopped": "Dispositivo detido",
- "eventDeviceOverspeed": "Superouse o límite de velocidade",
- "eventDeviceFuelDrop": "Perda de combustible",
- "eventDeviceFuelIncrease": "Aumento de combustible",
- "eventCommandResult": "Resultado do comando",
- "eventGeofenceEnter": "Entrada na xeocerca",
- "eventGeofenceExit": "Saída da cerca xeocerca",
- "eventAlarm": "Alarma",
- "eventIgnitionOn": "Chave Encendida - ON",
- "eventIgnitionOff": "Chave apagada - OFF",
- "eventMaintenance": "Necesítase mantemento",
- "eventTextMessage": "Mensaxe de texto recibida",
- "eventDriverChanged": "O condutor cambiou",
- "eventMedia": "Medios",
- "eventsScrollToLast": "Desprazarse ata o último",
- "eventsSoundEvents": "Sonido para eventos",
- "eventsSoundAlarms": "Sonido para alarmas",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibración",
- "alarmMovement": "Movemento",
- "alarmLowspeed": "Baixa velocidade",
- "alarmOverspeed": "Exceso de velocidade",
- "alarmFallDown": "Alarma de caída",
- "alarmLowPower": "Enerxía baixa",
- "alarmLowBattery": "Batería baixa",
- "alarmFault": "Alarma de fallo",
- "alarmPowerOff": "Apagado",
- "alarmPowerOn": "Encendido",
- "alarmDoor": "Porta",
- "alarmLock": "Bloquear",
- "alarmUnlock": "Desbloquear",
- "alarmGeofence": "Xeocerca",
- "alarmGeofenceEnter": "Entrou na xeocerca",
- "alarmGeofenceExit": "Saíu da xeocerca",
- "alarmGpsAntennaCut": "Corte de antena GPS",
- "alarmAccident": "Accidente",
- "alarmTow": "Guindastre de arrastre",
- "alarmIdle": "Inactivo",
- "alarmHighRpm": "Altas RPM",
- "alarmHardAcceleration": "Aceleración brusca",
- "alarmHardBraking": "Freada brusca",
- "alarmHardCornering": "Xiro brusco",
- "alarmLaneChange": "Cambio de carril",
- "alarmFatigueDriving": "Condución con cansazo",
- "alarmPowerCut": "Corte de alimentación",
- "alarmPowerRestored": "Enerxía restablecida",
- "alarmJamming": "Interferencia",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Aparcadoiro",
- "alarmBonnet": "Capó",
- "alarmFootBrake": "Freo de pé",
- "alarmFuelLeak": "Fuga de combustible",
- "alarmTampering": "Manipulación",
- "alarmRemoving": "Eliminando",
- "notificationType": "Tipo de notificación",
- "notificationAlways": "Todos os dispositivos",
- "notificationNotificators": "Canles",
- "notificatorCommand": "Comando",
- "notificatorWeb": "Web",
- "notificatorMail": "Correo",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Repetición ruta",
- "reportCombined": "Combinado \n ",
- "reportRoute": "Ruta",
- "reportEvents": "Eventos",
- "reportTrips": "Viaxes",
- "reportStops": "Paradas",
- "reportSummary": "Resumo",
- "reportDaily": "Resumo diario",
- "reportChart": "Gráfica",
- "reportConfigure": "Configurar",
- "reportEventTypes": "Tipos de eventos",
- "reportChartType": "Tipo de gráfica",
- "reportShowMarkers": "Amosar marcadores",
- "reportExport": "Exportar",
- "reportEmail": "Informe por correo",
- "reportSchedule": "Planificación",
- "reportPeriod": "Período",
- "reportCustom": "Personalizado",
- "reportToday": "Hoxe",
- "reportYesterday": "Onte",
- "reportThisWeek": "Esta semana",
- "reportPreviousWeek": "Semana anterior",
- "reportThisMonth": "Este mes",
- "reportPreviousMonth": "Mes anterior",
- "reportDeviceName": "Nome",
- "reportAverageSpeed": "Velocidade media",
- "reportMaximumSpeed": "Velocidade máxima",
- "reportEngineHours": "Horas do motor",
- "reportDuration": "Duración",
- "reportStartDate": "Data de inicio",
- "reportStartTime": "Hora de inicio",
- "reportStartAddress": "Enderezo de inicio",
- "reportEndTime": "Hora de fin",
- "reportEndAddress": "Enderezo de fin",
- "reportSpentFuel": "Combustible gastado",
- "reportStartOdometer": "Odómetro inicial",
- "reportEndOdometer": "Odómetro final",
- "statisticsTitle": "Estatísticas",
- "statisticsCaptureTime": "Fecha de captura",
- "statisticsActiveUsers": "Usuarios activos",
- "statisticsActiveDevices": "Dispositivos activos",
- "statisticsRequests": "Peticións",
- "statisticsMessagesReceived": "Mensaxes recibidas",
- "statisticsMessagesStored": "Mensaxes almacenadas",
- "statisticsGeocoder": "Solicitudes ao xeocodificador",
- "statisticsGeolocation": "Solicitudes de xeolocalización",
- "categoryArrow": "Frecha",
- "categoryDefault": "Por defecto",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicicleta",
- "categoryBoat": "Barco",
- "categoryBus": "Autobús",
- "categoryCar": "Coche",
- "categoryCamper": "Camper",
- "categoryCrane": "Grúa",
- "categoryHelicopter": "Helicóptero",
- "categoryMotorcycle": "Motocicleta",
- "categoryOffroad": "Todoterreo",
- "categoryPerson": "Persoa",
- "categoryPickup": "Pickup",
- "categoryPlane": "Avión",
- "categoryShip": "Barco",
- "categoryTractor": "Tractor",
- "categoryTrain": "Tren",
- "categoryTram": "Tranvía",
- "categoryTrolleybus": "Trolebús",
- "categoryTruck": "Camión",
- "categoryVan": "Furgoneta",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Comezar",
- "maintenancePeriod": "Período"
-} \ No newline at end of file
diff --git a/web/l10n/he.json b/web/l10n/he.json
deleted file mode 100644
index 8a2a4eed..00000000
--- a/web/l10n/he.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "טוען...",
- "sharedHide": "הסתר",
- "sharedSave": "שמירה",
- "sharedUpload": "Upload",
- "sharedSet": "הגדרה",
- "sharedCancel": "ביטול",
- "sharedCopy": "העתקה",
- "sharedAdd": "הוספה",
- "sharedEdit": "עריכה",
- "sharedRemove": "הסרה",
- "sharedRemoveConfirm": "הסרת פריט",
- "sharedNoData": "No data",
- "sharedSubject": "נושא",
- "sharedYes": "כן",
- "sharedNo": "לא",
- "sharedKm": "ק\"מ",
- "sharedMi": "מייל",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "קשר",
- "sharedKmh": "ק\"מ/שעה",
- "sharedMph": "מייל/שעה",
- "sharedHour": "שעה",
- "sharedMinute": "דקה",
- "sharedSecond": "שנייה",
- "sharedDays": "ימים",
- "sharedHours": "שעות",
- "sharedMinutes": "דקות",
- "sharedDecimalDegrees": "מעלות עשרוניות",
- "sharedDegreesDecimalMinutes": "מעלות ודקות עשרוניות",
- "sharedDegreesMinutesSeconds": "מעלות, דקות ושניות",
- "sharedName": "שם",
- "sharedDescription": "תיאור",
- "sharedSearch": "חיפוש",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "גדר וירטואלית",
- "sharedGeofences": "גדרות וירטואליות",
- "sharedCreateGeofence": "צרו איזור מגודר",
- "sharedNotifications": "התראות",
- "sharedNotification": "התראה",
- "sharedAttributes": "תכונות",
- "sharedAttribute": "תכונה",
- "sharedDrivers": "נהגים",
- "sharedDriver": "נהג",
- "sharedArea": "איזור",
- "sharedSound": "צליל התראה",
- "sharedType": "סוג",
- "sharedDistance": "מרחק",
- "sharedHourAbbreviation": "ש'",
- "sharedMinuteAbbreviation": "דק'",
- "sharedSecondAbbreviation": "שנ'",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "ל",
- "sharedGallonAbbreviation": "גלון",
- "sharedLiter": "ליטר",
- "sharedImpGallon": "גלון",
- "sharedUsGallon": "גלון",
- "sharedLiterPerHourAbbreviation": "ליטר/ שעה",
- "sharedGetMapState": "הגדר מהמפה",
- "sharedComputedAttribute": "תכונה ממוחשבת",
- "sharedComputedAttributes": "תכונה ממוחשבת",
- "sharedCheckComputedAttribute": "בדוק תכונות ממוחשבות",
- "sharedExpression": "ביטוי",
- "sharedDevice": "התקן",
- "sharedTest": "בדיקה",
- "sharedTestNotification": "שלח הודעת בדיקה",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "יומן",
- "sharedCalendars": "יומנים",
- "sharedFile": "קובץ",
- "sharedSearchDevices": "חיפוש מכשירים",
- "sharedSortBy": "מיון לפי",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "בחר קובץ",
- "sharedPhone": "טלפון",
- "sharedRequired": "נדרש",
- "sharedPreferences": "עדיפויות",
- "sharedPermissions": "הרשאות",
- "sharedConnections": "Connections",
- "sharedExtra": "תוספת",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "מחרוזת",
- "sharedTypeNumber": "מספר",
- "sharedTypeBoolean": "בוליאני",
- "sharedTimezone": "אזור זמן",
- "sharedInfoTitle": "פרטים",
- "sharedSavedCommand": "פקודות שמורות",
- "sharedSavedCommands": "פקודות שמורות",
- "sharedNew": "חדש",
- "sharedShowAddress": "הצג כתובת",
- "sharedShowDetails": "יותר פרטים",
- "sharedDisabled": "מושבת",
- "sharedMaintenance": "תחזוקה",
- "sharedDeviceAccumulators": "מצברים",
- "sharedAlarms": "אזעקות",
- "sharedLocation": "מיקום",
- "sharedImport": "ייבוא",
- "sharedColumns": "עמודות",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "פעם אחת",
- "calendarDaily": "יומי",
- "calendarWeekly": "שבועי",
- "calendarMonthly": "חודשי",
- "calendarDays": "Days",
- "calendarSunday": "יום ראשון",
- "calendarMonday": "יום שני",
- "calendarTuesday": "יום שלישי",
- "calendarWednesday": "יום רביעי",
- "calendarThursday": "יום חמישי",
- "calendarFriday": "יום שישי",
- "calendarSaturday": "שבת",
- "attributeShowGeofences": "הצג איזורים מגודרים",
- "attributeSpeedLimit": "הגבלת מהירות",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "מרחק מצולע",
- "attributeReportIgnoreOdometer": "דוח : התעלם ממד המרחק",
- "attributeWebReportColor": "אתר : בחר צבע",
- "attributeDevicePassword": "סיסמת התקן ",
- "attributeDeviceImage": "תמונת רכב",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "עיבוד: העתקת תכונות",
- "attributeColor": "צבע",
- "attributeWebLiveRouteLength": "ממשק : אורך מסלול זמן אמת",
- "attributeWebSelectZoom": "אתר : בחר הפעלת זום",
- "attributeWebMaxZoom": "אתר : זום מקסימלי",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "כתובת שרת דואר SMTP",
- "attributeMailSmtpPort": "שרת דואר: פורט גישה ",
- "attributeMailSmtpStarttlsEnable": "אפשר מייל מאובטח באמצעות TLS",
- "attributeMailSmtpStarttlsRequired": "נדרש SMTP STARTTLS ",
- "attributeMailSmtpSslEnable": "אפשר SSL לשרת דואר",
- "attributeMailSmtpSslTrust": "דואר:SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "פרוטוקול חיבור SSL לשרת דואר",
- "attributeMailSmtpFrom": "כתובת השולח ",
- "attributeMailSmtpAuth": "אפשר אימות לSMTP",
- "attributeMailSmtpUsername": "שם משתמש SMTP ",
- "attributeMailSmtpPassword": "סיסמת SMTP",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "ממשק: בטל ארועים",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "ממשק : בטל נהגים ",
- "attributeUiDisableComputedAttributes": "ממשק : בטל תכונה ממוחשבת",
- "attributeUiDisableCalendars": "ממשק : בטל יומנים",
- "attributeUiDisableMaintenance": "אל תציג :תחזוקה",
- "attributeUiHidePositionAttributes": "ממשק : הסתר מיקום תכונות",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "שגיאה",
- "errorGeneral": "גורם לא בתוקף או הפרת אילוצים ",
- "errorConnection": "בעייה בחיבור",
- "errorSocket": "בעיית רשת",
- "errorZero": "ערך לא יכול להיות אפס",
- "userEmail": "אימייל",
- "userPassword": "סיסמה",
- "userAdmin": "מנהל",
- "userRemember": "זכור אותי",
- "userExpirationTime": "תוקף",
- "userDeviceLimit": "מגבלת מכשירים",
- "userUserLimit": "מגבלת משתמשים",
- "userDeviceReadonly": "מכשירים - לקריאה בלבד",
- "userLimitCommands": "הגבל פקודות ",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "אסימון",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "כניסה",
- "loginLanguage": "שפה",
- "loginReset": "איפוס סיסמה",
- "loginRegister": "הרשם",
- "loginLogin": "כניסה",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "אימייל או סיסמה שגויים",
- "loginCreated": "משתמש חדש נרשם",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "הסיסמה החדשה הוגדרה",
- "loginLogout": "יציאה",
- "loginLogo": "לוגו",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "מכשירים וסטטוס",
- "deviceSelected": "Selected Device",
- "deviceTitle": "מכשירים",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "מזהה",
- "deviceModel": "דגם",
- "deviceContact": "איש קשר",
- "deviceCategory": "קטגוריה",
- "deviceLastUpdate": "עודכן לאחרונה",
- "deviceCommand": "פקודה",
- "deviceFollow": "עקוב",
- "deviceTotalDistance": "מרחק כולל",
- "deviceStatus": "סטטוס",
- "deviceStatusOnline": "מחובר",
- "deviceStatusOffline": "מנותק",
- "deviceStatusUnknown": "מצבו אינו ידוע",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "קבוצה",
- "groupParent": "קבוצה",
- "groupNoGroup": "ללא קבוצה",
- "settingsTitle": "הגדרות",
- "settingsUser": "חשבון",
- "settingsGroups": "קבוצות",
- "settingsServer": "שרת",
- "settingsUsers": "משתמשים",
- "settingsDistanceUnit": "יח מרחק",
- "settingsAltitudeUnit": "יחידת גובה",
- "settingsSpeedUnit": "יח מהירות ",
- "settingsVolumeUnit": "יחידת נפח",
- "settingsTwelveHourFormat": "פורמט של 12 שעות",
- "settingsCoordinateFormat": "פורמט קואורדינטות",
- "settingsServerVersion": "גרסת השרת",
- "settingsAppVersion": "גרסת האפליקציה",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "דו\"חות",
- "reportScheduled": "דוחות מתוזמנים",
- "reportDevice": "מכשיר",
- "reportGroup": "קבוצה",
- "reportFrom": "מ-",
- "reportTo": "עד",
- "reportShow": "הצג",
- "reportClear": "נקה",
- "linkGoogleMaps": "מפות גוגל",
- "linkAppleMaps": "מפות אפל",
- "linkStreetView": "תצוגת רחוב",
- "positionFixTime": "זמן עדכון GPS",
- "positionDeviceTime": "עדכון אחרון",
- "positionServerTime": "זמן השרת",
- "positionValid": "תקין",
- "positionAccuracy": "דיוק",
- "positionLatitude": "קו רוחב",
- "positionLongitude": "קו אורך",
- "positionAltitude": "גובה",
- "positionSpeed": "מהירות",
- "positionCourse": "מסלול",
- "positionAddress": "כתובת",
- "positionProtocol": "פרוטוקול",
- "positionDistance": "מרחק",
- "positionRpm": "סל\"ד ",
- "positionFuel": "דלק",
- "positionPower": "מצבר",
- "positionBattery": "סוללה",
- "positionRaw": "גלם",
- "positionIndex": "אינדקס",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "לווינים",
- "positionSatVisible": "לווניינים בשימוש ",
- "positionRssi": "RSSI",
- "positionGps": "מערכת איתור לוונית ",
- "positionRoaming": "נדידה",
- "positionEvent": "אירוע",
- "positionAlarm": "התראה",
- "positionStatus": "סטטוס",
- "positionOdometer": "מד מרחק",
- "positionServiceOdometer": "טיפול לפי ספידומטר",
- "positionTripOdometer": "מד מרחק נסיעה",
- "positionHours": "שעות",
- "positionSteps": "צעדים",
- "positionInput": "כניסה",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "יציאה",
- "positionBatteryLevel": "רמת הסוללה",
- "positionFuelConsumption": "צריכת דלק",
- "positionRfid": "RFID",
- "positionVersionFw": "גרסת קושחה",
- "positionVersionHw": "גרסת חומרה",
- "positionIgnition": "הצתה",
- "positionFlags": "איתות -סימון",
- "positionCharge": "טעינה",
- "positionIp": "כתובת IP",
- "positionArchive": "ארכיון",
- "positionVin": "מס זיהוי רכב יצרן",
- "positionApproximate": "משוער",
- "positionThrottle": "מצערת",
- "positionMotion": "תנועה",
- "positionArmed": "דרוך",
- "positionAcceleration": "תאוצה",
- "positionTemp": "טמפרטורה",
- "positionDeviceTemp": "טמפרטורת המכשיר",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "מפעיל",
- "positionCommand": "פקודה",
- "positionBlocked": "חסום",
- "positionDtcs": "מערכת תקשורת טקטית מבוזרת",
- "positionObdSpeed": "מהירות לפי OBD",
- "positionObdOdometer": "מד מרחק OBD",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "מזהה נהג יחודי",
- "positionCard": "Card",
- "positionImage": "תמונה",
- "positionVideo": "Video",
- "positionAudio": "קול",
- "serverTitle": "הגדרות שרת",
- "serverZoom": "זום",
- "serverRegistration": "הרשמה",
- "serverReadonly": "לקריאה בלבד",
- "serverForceSettings": "כפה הגדרות",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "מפה",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "שכבת מפה",
- "mapCustom": "מותאם (XYZ)",
- "mapCustomArcgis": "מפה מותאמת (ArcGIS)",
- "mapCustomLabel": "מפה מותאמת ",
- "mapCarto": "Carto Basemaps\n",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "מפתח מפות בינג",
- "mapBingRoad": "מפות כביש בינג",
- "mapBingAerial": "מפות אוויריות בינג",
- "mapBingHybrid": "מפות היברדיות בינג",
- "mapBaidu": "מפות סיניות ביידו",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "מפות רוסיות Yandex",
- "mapYandexSat": "מפות רוסיות לווין Yandex",
- "mapWikimedia": "ויקימדיה",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "פוליגון",
- "mapShapeCircle": "מעגל",
- "mapShapePolyline": "צלע",
- "mapLiveRoutes": "מסלול נסיעה",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "שכבת נק' עניין",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "מצב",
- "stateName": "תכונה",
- "stateValue": "ערך",
- "commandTitle": "פקודה",
- "commandSend": "שליחה",
- "commandSent": "פקודה נשלחה",
- "commandQueued": "הפקודה ממתינה ",
- "commandUnit": "יחידה",
- "commandCustom": "פקודה בהתאמה אישית",
- "commandDeviceIdentification": "זיהוי מכשיר",
- "commandPositionSingle": "דו\"ח יחיד",
- "commandPositionPeriodic": "דיווח תקופתי",
- "commandPositionStop": "עצור דיווח",
- "commandEngineStop": "דומם מנוע",
- "commandEngineResume": "הפעל מנוע",
- "commandAlarmArm": "הפעלת אזעקה",
- "commandAlarmDisarm": "נטרול אזעקה",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "קבע איזור זמן",
- "commandRequestPhoto": "בקשה לתמונה",
- "commandPowerOff": "כיבוי התקן ",
- "commandRebootDevice": "איתחול המכשיר",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "שלח סמס",
- "commandSendUssd": "שלח נתוני שירות משלימים לא מובנים",
- "commandSosNumber": "קבע מספר חירום",
- "commandSilenceTime": "קבע משך זמן הדממה",
- "commandSetPhonebook": "הגדר ספר טלפונים",
- "commandVoiceMessage": "הודעה קולית",
- "commandOutputControl": "בקרת פלט",
- "commandVoiceMonitoring": "האזנה ",
- "commandSetAgps": "הפעל AGPS",
- "commandSetIndicator": "הגדר מד ",
- "commandConfiguration": "תצורה",
- "commandGetVersion": "קבל גרסה",
- "commandFirmwareUpdate": "עדכן גרסת חומרה",
- "commandSetConnection": "הגדר תקשורת",
- "commandSetOdometer": "הגדר מד מרחק",
- "commandGetModemStatus": "הבא מצב מודם",
- "commandGetDeviceStatus": "הבא מצב התקן ",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "מצב חיסכון בחשמל",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "תדירות",
- "commandTimezone": "איזון אזור זמן ",
- "commandMessage": "הודעה",
- "commandRadius": "רדיוס",
- "commandEnable": "מאופשר",
- "commandData": "נתונים",
- "commandIndex": "אינדקס",
- "commandPhone": "טלפון",
- "commandServer": "שרת",
- "commandPort": "פורט",
- "eventAll": "כל ההתראות",
- "eventDeviceOnline": "מצב אונליין",
- "eventDeviceUnknown": "מצב לא ידוע",
- "eventDeviceOffline": "מצב מנותק",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "ההתקן בתנועה",
- "eventDeviceStopped": "ההתקן עצר",
- "eventDeviceOverspeed": "חרג מהמהירות המותרת ",
- "eventDeviceFuelDrop": "שחרור מיכל דלק",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "תוצאות הפקודה",
- "eventGeofenceEnter": "נכנס אל האזור המתוחם",
- "eventGeofenceExit": "יצא מהאזור המתוחם",
- "eventAlarm": "התראה",
- "eventIgnitionOn": "התנעה",
- "eventIgnitionOff": "מנוע נכבה",
- "eventMaintenance": "תחזוקה נדרשת",
- "eventTextMessage": "התקבלה הודעת טקסט",
- "eventDriverChanged": "נהג הוחלף",
- "eventMedia": "Media",
- "eventsScrollToLast": "גלול אל האחרון",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "כללי",
- "alarmSos": "חירום",
- "alarmVibration": "ויברציה",
- "alarmMovement": "תנועה",
- "alarmLowspeed": "מהירות נמוכה",
- "alarmOverspeed": "עבר מהירות מותרת",
- "alarmFallDown": "ליפול",
- "alarmLowPower": "מצבר חלש",
- "alarmLowBattery": "סוללה חלשה",
- "alarmFault": "תקלה",
- "alarmPowerOff": "כיבוי",
- "alarmPowerOn": "הדלקה",
- "alarmDoor": "דלת",
- "alarmLock": "נעילה",
- "alarmUnlock": "פתיחה",
- "alarmGeofence": "גדר וירטואלית ",
- "alarmGeofenceEnter": "נכנס לתחום המוגדר",
- "alarmGeofenceExit": "יצא מהתחום המוגדר",
- "alarmGpsAntennaCut": "ניתוק GPS",
- "alarmAccident": "תאונה",
- "alarmTow": "גרירה",
- "alarmIdle": "מצב מנוחה",
- "alarmHighRpm": "סלד גבוה",
- "alarmHardAcceleration": "האצה חדה",
- "alarmHardBraking": "בלימת חירום",
- "alarmHardCornering": "פניה חדה",
- "alarmLaneChange": "סטיה מהנתיב",
- "alarmFatigueDriving": "עייפות נהיגה",
- "alarmPowerCut": "ניתוק",
- "alarmPowerRestored": "חשמל חזר",
- "alarmJamming": "שיבוש",
- "alarmTemperature": "טמפרטורה",
- "alarmParking": "חניה",
- "alarmBonnet": "מכסה מנוע",
- "alarmFootBrake": "בלם ",
- "alarmFuelLeak": "דליפת דלק",
- "alarmTampering": "מפריע",
- "alarmRemoving": "מסיר",
- "notificationType": "סוג ההתראה",
- "notificationAlways": "כל ההתקנים",
- "notificationNotificators": "ערוצים",
- "notificatorCommand": "Command",
- "notificatorWeb": "אתר",
- "notificatorMail": "מייל",
- "notificatorSms": "סמס",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "מסלול",
- "reportEvents": "אירועים",
- "reportTrips": "נסיעות",
- "reportStops": "עצירות",
- "reportSummary": "סיכום",
- "reportDaily": "Daily Summary",
- "reportChart": "תרשים",
- "reportConfigure": "הגדר",
- "reportEventTypes": "סוגי אירועים",
- "reportChartType": "סוג תרשים",
- "reportShowMarkers": "הצג חצים",
- "reportExport": "יצוא",
- "reportEmail": "דוח במייל",
- "reportSchedule": "Schedule",
- "reportPeriod": "תקופה",
- "reportCustom": "מותאם אישית",
- "reportToday": "היום",
- "reportYesterday": "אתמול",
- "reportThisWeek": "השבוע",
- "reportPreviousWeek": "שבוע שעבר",
- "reportThisMonth": "חודש נוכחי",
- "reportPreviousMonth": "חודש קודם",
- "reportDeviceName": "שם המכשיר",
- "reportAverageSpeed": "מהירות ממוצעת",
- "reportMaximumSpeed": "מהירות מירבית",
- "reportEngineHours": "שעות מנוע",
- "reportDuration": "משך הנסיעה",
- "reportStartDate": "Start Date",
- "reportStartTime": "זמן התחלה",
- "reportStartAddress": "נקודת מוצא",
- "reportEndTime": "זמן סיום",
- "reportEndAddress": "נקודת יעד",
- "reportSpentFuel": "צריכת דלק",
- "reportStartOdometer": "ספידומטר קמ התחלתי",
- "reportEndOdometer": "ספידומטר קמ סוף ",
- "statisticsTitle": "סטטיסטיקה",
- "statisticsCaptureTime": "פרק זמן",
- "statisticsActiveUsers": "משתמשים פעילים",
- "statisticsActiveDevices": "מכשירים פעילים",
- "statisticsRequests": "בקשות",
- "statisticsMessagesReceived": "הודעות שהתקבלו",
- "statisticsMessagesStored": "הודעות שנשמרו",
- "statisticsGeocoder": "בקשת מיקום גיאוגרפי\n",
- "statisticsGeolocation": "בקשות מיקום גיאוגרפי",
- "categoryArrow": "חץ",
- "categoryDefault": "ברירת מחדל",
- "categoryAnimal": "חיה",
- "categoryBicycle": "אופניים",
- "categoryBoat": "סירה",
- "categoryBus": "אוטובוס",
- "categoryCar": "רכב פרטי",
- "categoryCamper": "Camper",
- "categoryCrane": "מנוף",
- "categoryHelicopter": "מסוק",
- "categoryMotorcycle": "אופנוע",
- "categoryOffroad": "רכב שטח",
- "categoryPerson": "אדם",
- "categoryPickup": "משאית קלה",
- "categoryPlane": "מטוס",
- "categoryShip": "ספינה",
- "categoryTractor": "טרקטור",
- "categoryTrain": "רכבת",
- "categoryTram": "חשמלית ",
- "categoryTrolleybus": "אוטובוס",
- "categoryTruck": "משאית",
- "categoryVan": "מסחרית",
- "categoryScooter": "קטנוע",
- "maintenanceStart": "התחל",
- "maintenancePeriod": "פרק זמן "
-} \ No newline at end of file
diff --git a/web/l10n/hi.json b/web/l10n/hi.json
deleted file mode 100644
index 1716dc99..00000000
--- a/web/l10n/hi.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "लोड हो रहा है...",
- "sharedHide": "छिपाना",
- "sharedSave": "सुरक्षित करें",
- "sharedUpload": "Upload",
- "sharedSet": "स्वीकृति दें",
- "sharedCancel": "रद्द करें",
- "sharedCopy": "Copy",
- "sharedAdd": "जोड़ें",
- "sharedEdit": "संपादित करें",
- "sharedRemove": "हटाएं",
- "sharedRemoveConfirm": "आइटम हटाएं ?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "हाँ",
- "sharedNo": "नहीं",
- "sharedKm": "किमी / किलोमीटर",
- "sharedMi": "एम आई",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "के.एन.",
- "sharedKmh": "किमी / घंटा",
- "sharedMph": "मील प्रति घंटा",
- "sharedHour": "घंटा",
- "sharedMinute": "मिनट",
- "sharedSecond": "सैकंड",
- "sharedDays": "दिन",
- "sharedHours": "घंटे",
- "sharedMinutes": "मिनट",
- "sharedDecimalDegrees": "दशमलव डिग्री",
- "sharedDegreesDecimalMinutes": "डिग्री दशमलव मिनट",
- "sharedDegreesMinutesSeconds": "डिग्री मिनट सेकेंड",
- "sharedName": "नाम",
- "sharedDescription": "विवरण",
- "sharedSearch": "खोजें",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "जिओफेंस / भूगौलिक परिधि",
- "sharedGeofences": "जिओफेंसस / भूगौलिक परिधियां",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "सूचनाएं",
- "sharedNotification": "अधिसूचना",
- "sharedAttributes": "एक से अधिक गुण",
- "sharedAttribute": "गुण",
- "sharedDrivers": "ड्राइवर",
- "sharedDriver": "ड्राइवर",
- "sharedArea": "क्षेत्र",
- "sharedSound": "ध्वनि",
- "sharedType": "टाइप/प्रकार",
- "sharedDistance": "दूरी",
- "sharedHourAbbreviation": "एच",
- "sharedMinuteAbbreviation": "एम",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "गैल",
- "sharedLiter": "लीटर",
- "sharedImpGallon": "Imp. गैलन",
- "sharedUsGallon": "U.S. गैलन",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "मानचित्र की स्तिति प्रदान करें",
- "sharedComputedAttribute": "गणना गुण",
- "sharedComputedAttributes": "गणना गुण",
- "sharedCheckComputedAttribute": "गणना गुण की जांच करें",
- "sharedExpression": "अभिव्यक्ति",
- "sharedDevice": "उपकरण",
- "sharedTest": "Test",
- "sharedTestNotification": "कसौटी अधिसूचना भेजें",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "कैलेंडर",
- "sharedCalendars": "कैलेंडर",
- "sharedFile": "फ़ाइल",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "फ़ाइल का चयन करें",
- "sharedPhone": "फ़ोन",
- "sharedRequired": "अपेक्षित",
- "sharedPreferences": "प्राथमिकताएं",
- "sharedPermissions": "अनुमतियां",
- "sharedConnections": "Connections",
- "sharedExtra": "अतिरिक्त",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Number",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "समय क्षेत्र",
- "sharedInfoTitle": "जानकारी",
- "sharedSavedCommand": "संग्रहीत आदेश",
- "sharedSavedCommands": "संग्रहीत आदेश",
- "sharedNew": "नई…",
- "sharedShowAddress": "पता दिखाएं",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "अक्षम करें",
- "sharedMaintenance": "रखरखाव",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "गति सीमा",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "पॉलीलाइन दूरी",
- "attributeReportIgnoreOdometer": "रिपोर्ट: ओडोमीटर को अनदेखा करें",
- "attributeWebReportColor": "वेब: रिपोर्ट रंग",
- "attributeDevicePassword": "उपकरण पासवर्ड",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "प्रसंस्करण: गुण कॉपी करें",
- "attributeColor": "रंग",
- "attributeWebLiveRouteLength": "वेब: लाइव मार्ग लंबाई",
- "attributeWebSelectZoom": "वेब: ज़ूम पर चुनना",
- "attributeWebMaxZoom": "वेब: अधिकतम ज़ूम",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "मेल: एसएमटीपी होस्ट",
- "attributeMailSmtpPort": "मेल: एसएमटीपी पोर्ट",
- "attributeMailSmtpStarttlsEnable": "मेल: एसएमटीपी स्टार्ट्स सक्षम करें",
- "attributeMailSmtpStarttlsRequired": "मेल: एसएमटीपी स्टार्टल्स आवश्यक है",
- "attributeMailSmtpSslEnable": "मेल: एसएमटीपी एसएसएल सक्षम करें",
- "attributeMailSmtpSslTrust": "मेल: एसएमटीपी एसएसएल ट्रस्ट",
- "attributeMailSmtpSslProtocols": "मेल: एसएमटीपी एसएसएल प्रोटोकॉल",
- "attributeMailSmtpFrom": "मेल: एसएमटीपी से",
- "attributeMailSmtpAuth": "मेल: एसएमटीपी प्रमाण सक्षम करें",
- "attributeMailSmtpUsername": "मेल: एसएमटीपी उपयोगकर्ता नाम",
- "attributeMailSmtpPassword": "मेल: एसएमटीपी पासवर्ड",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "यूआई: घटनाओं को अक्षम करें",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "यूआई: ड्राइवर्स को अक्षम करें",
- "attributeUiDisableComputedAttributes": "यूआई: गणना गुणों को अक्षम करें",
- "attributeUiDisableCalendars": "यूआई: कैलेंडर अक्षम करें",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "यूआई: स्थिति गुण छुपाएं",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "त्रुटि",
- "errorGeneral": "अमान्य पैरामीटर या बाधाओं का उल्लंघन",
- "errorConnection": "कनेक्शन त्रुटि",
- "errorSocket": "वेब सॉकेट कनेक्शन त्रुटि",
- "errorZero": "शून्य नहीं हो सकता",
- "userEmail": "ईमेल",
- "userPassword": "पासवर्ड / गोपनीय शब्द",
- "userAdmin": "एडमिन / व्यवस्थापक",
- "userRemember": "याद रखें",
- "userExpirationTime": "समय सीमा समाप्ति",
- "userDeviceLimit": "उपकरण सीमा",
- "userUserLimit": "उपयोगकर्ता सीमा",
- "userDeviceReadonly": "उपकरण केवल पढ़ने के लिए",
- "userLimitCommands": "सीमा कमांड",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "टोकन",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "लॉगिन / प्रवेश करें",
- "loginLanguage": "भाषा",
- "loginReset": "Reset Password",
- "loginRegister": "रजिस्टर / पंजीकृत करें",
- "loginLogin": "लॉगिन / प्रवेश करें",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "ई-मेल पता या पासवर्ड गलत है",
- "loginCreated": "नया उपयोगकर्ता पंजीकृत हो गया है",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "लॉगआउट / निष्कासन करें",
- "loginLogo": "लोगो",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "उपकरण एवम स्तिति",
- "deviceSelected": "Selected Device",
- "deviceTitle": "उपकरण",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "पहचानकर्ता",
- "deviceModel": "आदर्श",
- "deviceContact": "संपर्क",
- "deviceCategory": "श्रेणी",
- "deviceLastUpdate": "आखिरी अद्यतन / ताज़ा जानकारी",
- "deviceCommand": "आदेश",
- "deviceFollow": "पालन / अनुकरण करें",
- "deviceTotalDistance": "कुल दूरी",
- "deviceStatus": "स्थिति",
- "deviceStatusOnline": "ऑनलाइन",
- "deviceStatusOffline": "ऑफ़लाइन",
- "deviceStatusUnknown": "अज्ञात",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "समूह",
- "groupParent": "समूह",
- "groupNoGroup": "कोई समूह नहीं",
- "settingsTitle": "सेटिंग्स",
- "settingsUser": "अकाउंट / लेखा",
- "settingsGroups": "ग्रुप्स / एक से अधिक समूह",
- "settingsServer": "सर्वर",
- "settingsUsers": "एक से अधिक उपयोगकर्ता",
- "settingsDistanceUnit": "दूरी इकाई",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "स्पीड यूनिट",
- "settingsVolumeUnit": "वॉल्यूम यूनिट",
- "settingsTwelveHourFormat": "12 - घंटा का प्रारूप",
- "settingsCoordinateFormat": "समन्वय प्रारूप",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "रिपोर्ट्स / एक से अधिक रिपोर्ट / विवरण",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "उपकरण",
- "reportGroup": "समूह",
- "reportFrom": "से",
- "reportTo": "तक",
- "reportShow": "दिखाएं",
- "reportClear": "स्पष्ट / साफ़",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "मान्य / वैध",
- "positionAccuracy": "शुद्धता",
- "positionLatitude": "अक्षांश / अक्षरेखा",
- "positionLongitude": "देशान्तर",
- "positionAltitude": "ऊंचाई",
- "positionSpeed": "गति",
- "positionCourse": "मार्ग",
- "positionAddress": "पता",
- "positionProtocol": "प्रोटोकॉल",
- "positionDistance": "दूरी",
- "positionRpm": "आरपीएम",
- "positionFuel": "ईंधन",
- "positionPower": "शक्ति",
- "positionBattery": "बैटरी",
- "positionRaw": "कच्चा",
- "positionIndex": "सूची",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "उपग्रहों",
- "positionSatVisible": "दृश्यमान उपग्रह",
- "positionRssi": "RSSI",
- "positionGps": "जीपीएस",
- "positionRoaming": "रोमिंग",
- "positionEvent": "घटना",
- "positionAlarm": "अलार्म",
- "positionStatus": "स्थिति",
- "positionOdometer": "ओडोमीटर",
- "positionServiceOdometer": "सेवा ओडोमीटर",
- "positionTripOdometer": "ट्रिप ओडोमीटर",
- "positionHours": "घंटे",
- "positionSteps": "कदम",
- "positionInput": "इनपुट",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "उत्पादन",
- "positionBatteryLevel": "बैटरी स्तर",
- "positionFuelConsumption": "ईंधन उपभोग",
- "positionRfid": "आरएफआईडी",
- "positionVersionFw": "फर्मवेयर संस्करण",
- "positionVersionHw": "हार्डवेयर संस्करण",
- "positionIgnition": "इग्निशन",
- "positionFlags": "झंडे",
- "positionCharge": "चार्ज",
- "positionIp": "आईपी",
- "positionArchive": "पुरालेख",
- "positionVin": "VIN",
- "positionApproximate": "लगभग",
- "positionThrottle": "Throttle",
- "positionMotion": "चलती",
- "positionArmed": "हथियारबंद",
- "positionAcceleration": "त्वरण",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "उपकरण तापमान",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "ऑपरेटर",
- "positionCommand": "आदेश",
- "positionBlocked": "अवरुद्ध",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "ओबीडी गति",
- "positionObdOdometer": "ओबीडी ओडोमीटर",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "चालक अद्वितीय आईडी",
- "positionCard": "Card",
- "positionImage": "छवि",
- "positionVideo": "Video",
- "positionAudio": "ऑडियो",
- "serverTitle": "सर्वर की सेटिंग्स",
- "serverZoom": "ज़ूम",
- "serverRegistration": "पंजीकरण",
- "serverReadonly": "केवल पठीय / पड़ने के लिए",
- "serverForceSettings": "बल सेटिंग्स",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "मानचित्र",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "मानचित्र की परत",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "बिंग मैप्स की कुंजी",
- "mapBingRoad": "बिंग मैप्स रोड / सड़क",
- "mapBingAerial": "बिंग मैप्स एरियल",
- "mapBingHybrid": "बिंग मैप्स हाइब्रिड",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "यांडेक्स मानचित्र",
- "mapYandexSat": "यांडेक्स सैटेलाइट",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "बहुभुज",
- "mapShapeCircle": "वृत्त",
- "mapShapePolyline": "पाली लाइन",
- "mapLiveRoutes": "लाइव मार्ग",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "पीओआई परत",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "स्थिति / अवस्ता",
- "stateName": "गुण",
- "stateValue": "मान / वेल्यु",
- "commandTitle": "आदेश",
- "commandSend": "भेजें / प्रेषित करें",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "इकाई",
- "commandCustom": "विशिष्ट रूप से निर्मित मेसेज / संदेश",
- "commandDeviceIdentification": "उपकरण की पहचान",
- "commandPositionSingle": "एक बार की रिपोर्टिंग",
- "commandPositionPeriodic": "आवधिक रिपोर्टिंग",
- "commandPositionStop": "रिपोर्टिंग रोकें",
- "commandEngineStop": "इंजन बंद",
- "commandEngineResume": "इंजन फिर से शुरू",
- "commandAlarmArm": "अलार्म लगाएं",
- "commandAlarmDisarm": "अलार्म हटाएं",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "समय क्षेत्र सेट करें",
- "commandRequestPhoto": "फोटो मँगवाएं",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "उपकरण बंद करके पुन्ह आरंभ करें",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "एसएमएस भेजें / प्रेषित करें",
- "commandSendUssd": "यूएसएसडी कोड भेजें / प्रेषित करें",
- "commandSosNumber": "एसओएस / एमर्जेन्सी फोन नंबर सेट करें",
- "commandSilenceTime": "खामोशी का समय सेट करें",
- "commandSetPhonebook": "फोनबुक सेट करें",
- "commandVoiceMessage": "ध्वनि संदेश / वाय्स मेसेज",
- "commandOutputControl": "आउटपुट नियंत्रण",
- "commandVoiceMonitoring": "आवाज निगरानी",
- "commandSetAgps": "एजीपीएस सेट करें",
- "commandSetIndicator": "संकेतक सेट करें",
- "commandConfiguration": "विन्यास",
- "commandGetVersion": "संस्करण प्राप्त करें",
- "commandFirmwareUpdate": "फर्मवेयर अपडेट करें",
- "commandSetConnection": "कनेक्शन सेट करें",
- "commandSetOdometer": "ओडोमीटर सेट करें",
- "commandGetModemStatus": "मोडेम स्थिति प्राप्त करें",
- "commandGetDeviceStatus": "उपकरण स्थिति प्राप्त करें",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "फ्रीक्वेंसी / आवृत्ति",
- "commandTimezone": "टाइमज़ोन ऑफ़सेट",
- "commandMessage": "संदेश / मेसेज",
- "commandRadius": "त्रिज्या",
- "commandEnable": "सक्षम करें",
- "commandData": "डाटा / आंकड़े",
- "commandIndex": "अनुक्रमणिका",
- "commandPhone": "फोन नंबर",
- "commandServer": "सर्वर",
- "commandPort": "पोर्ट",
- "eventAll": "सभी घटनाएँ / इवेंट्स",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "आदेश / क्मांड का परिणाम",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "रखरखाव की आवश्यकता है",
- "eventTextMessage": "पाठ संदेश प्राप्त हुआ",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "अंतिम तक स्क्रॉल करें",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "सूचना का प्रकार",
- "notificationAlways": "सभी उपकरण",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "मार्ग",
- "reportEvents": "घटनाएँ / इवेंट्स",
- "reportTrips": "यात्राएँ / ट्रिप्स",
- "reportStops": "Stops",
- "reportSummary": "सारांश",
- "reportDaily": "Daily Summary",
- "reportChart": "चार्ट",
- "reportConfigure": "समनुरूप / कन्फिगर करें",
- "reportEventTypes": "घटनाओं / इवेंट्स के प्रकार",
- "reportChartType": "चार्ट टाइप",
- "reportShowMarkers": "मार्कर दिखाएं",
- "reportExport": "निर्यात",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "अवधि",
- "reportCustom": "Custom",
- "reportToday": "आज",
- "reportYesterday": "कल",
- "reportThisWeek": "इस सप्ताह",
- "reportPreviousWeek": "पिछले सप्ताह",
- "reportThisMonth": "इस महीने",
- "reportPreviousMonth": "पिछले महीने",
- "reportDeviceName": "उपकरण / उपकरण का नाम",
- "reportAverageSpeed": "औसत गति",
- "reportMaximumSpeed": "अधिकतम गति",
- "reportEngineHours": "इंजन के घंटे",
- "reportDuration": "अवधि",
- "reportStartDate": "Start Date",
- "reportStartTime": "समय का आरंभ",
- "reportStartAddress": "प्रारंभ पता",
- "reportEndTime": "अंतिम समय",
- "reportEndAddress": "अंत पता",
- "reportSpentFuel": "ईंधन खर्च",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "आंकड़े",
- "statisticsCaptureTime": "समय कैप्चर करें",
- "statisticsActiveUsers": "सक्रिय उपयोगकर्ता",
- "statisticsActiveDevices": "सक्रिय उपकरण",
- "statisticsRequests": "अनुरोध",
- "statisticsMessagesReceived": "संदेश प्राप्त हुए",
- "statisticsMessagesStored": "संदेश संग्रहीत",
- "statisticsGeocoder": "जियोकोडर अनुरोध",
- "statisticsGeolocation": "जियोलोकेशन अनुरोध",
- "categoryArrow": "तीर",
- "categoryDefault": "Default",
- "categoryAnimal": "पशु",
- "categoryBicycle": "साइकिल",
- "categoryBoat": "नाव",
- "categoryBus": "बस",
- "categoryCar": "कार",
- "categoryCamper": "Camper",
- "categoryCrane": "क्रेन",
- "categoryHelicopter": "हेलीकाप्टर",
- "categoryMotorcycle": "मोटरसाइकिल",
- "categoryOffroad": "Offroad",
- "categoryPerson": "व्यक्ति",
- "categoryPickup": "Pickup",
- "categoryPlane": "विमान",
- "categoryShip": "जहाज़",
- "categoryTractor": "ट्रैक्टर",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "ट्रक",
- "categoryVan": "वैन",
- "categoryScooter": "Scooter",
- "maintenanceStart": "प्रारंभ",
- "maintenancePeriod": "अवधि"
-} \ No newline at end of file
diff --git a/web/l10n/hr.json b/web/l10n/hr.json
deleted file mode 100644
index f64cdb04..00000000
--- a/web/l10n/hr.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Učitavanje...",
- "sharedHide": "Sakrij",
- "sharedSave": "Spremi",
- "sharedUpload": "Upload",
- "sharedSet": "Postavi",
- "sharedCancel": "Poništi",
- "sharedCopy": "Copy",
- "sharedAdd": "Dodaj",
- "sharedEdit": "Uredi",
- "sharedRemove": "Ukloni",
- "sharedRemoveConfirm": "Ukloniti stavku?",
- "sharedNoData": "Nema podataka",
- "sharedSubject": "Subject",
- "sharedYes": "Da",
- "sharedNo": "Ne",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "čv",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Sat",
- "sharedMinute": "Minuta",
- "sharedSecond": "Sekunda",
- "sharedDays": "dani",
- "sharedHours": "sati",
- "sharedMinutes": "minuta",
- "sharedDecimalDegrees": "Decimalni stupnjevi",
- "sharedDegreesDecimalMinutes": "Stupnjevi u decimalnim minutama",
- "sharedDegreesMinutesSeconds": "Stupnjevi u minutama i sekundama",
- "sharedName": "Ime",
- "sharedDescription": "Opis",
- "sharedSearch": "Pretraži",
- "sharedIconScale": "Skaliraj ikonu",
- "sharedGeofence": "Geo-ograda",
- "sharedGeofences": "Geo-ograde",
- "sharedCreateGeofence": "Kreiraj geo-ogradu",
- "sharedNotifications": "Obavijesti",
- "sharedNotification": "Obavijest",
- "sharedAttributes": "Atributi",
- "sharedAttribute": "Atribut",
- "sharedDrivers": "Vozači",
- "sharedDriver": "Vozač",
- "sharedArea": "Područje",
- "sharedSound": "Zvuk obavijesti",
- "sharedType": "Tip",
- "sharedDistance": "Udaljenost",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "galon",
- "sharedLiter": "Litra",
- "sharedImpGallon": "Imperijalni galon",
- "sharedUsGallon": "američki galon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Dohvati stanje karte",
- "sharedComputedAttribute": "Izračunati atribut",
- "sharedComputedAttributes": "Izračunati atributi",
- "sharedCheckComputedAttribute": "Provjeri izračunati atribut",
- "sharedExpression": "Izraz",
- "sharedDevice": "Uređaj",
- "sharedTest": "Test",
- "sharedTestNotification": "Pošalji testnu obavijest",
- "sharedTestNotificators": "Testiraj kanale",
- "sharedTestExpression": "Testiraj izraz",
- "sharedCalendar": "Kalendar",
- "sharedCalendars": "Kalendari",
- "sharedFile": "Datoteka",
- "sharedSearchDevices": "Traži uređaje",
- "sharedSortBy": "Sortiraj po",
- "sharedFilterMap": "Filtriraj na karti",
- "sharedSelectFile": "Odaberi datoteku",
- "sharedPhone": "Telefon",
- "sharedRequired": "Potrebno",
- "sharedPreferences": "Postavke",
- "sharedPermissions": "Dozvole",
- "sharedConnections": "Veze",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primarno",
- "sharedSecondary": "Sekundarno",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Broj",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Vremenska zona",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Snimljena naredba",
- "sharedSavedCommands": "Snimljene naredbe",
- "sharedNew": "Novo",
- "sharedShowAddress": "Prikaži adresu",
- "sharedShowDetails": "Više detalja",
- "sharedDisabled": "Isključeno",
- "sharedMaintenance": "Održavanje",
- "sharedDeviceAccumulators": "Varijable",
- "sharedAlarms": "Alarmi",
- "sharedLocation": "Lokacija",
- "sharedImport": "Uvoz",
- "sharedColumns": "Stupac",
- "sharedDropzoneText": "Dovuci i pusti datoteku ovdje ili klikni",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Jednostavno",
- "calendarRecurrence": "Ponavljajuće",
- "calendarOnce": "Jednom",
- "calendarDaily": "Dnevno",
- "calendarWeekly": "Tjedno",
- "calendarMonthly": "Mjesečno",
- "calendarDays": "Dani",
- "calendarSunday": "Nedjelja",
- "calendarMonday": "Ponedjeljak",
- "calendarTuesday": "Utorak",
- "calendarWednesday": "Srijeda",
- "calendarThursday": "Četvrtak",
- "calendarFriday": "Petak",
- "calendarSaturday": "Subota",
- "attributeShowGeofences": "Pokaži geo-ograde",
- "attributeSpeedLimit": "Ograničenje brzine",
- "attributeFuelDropThreshold": "Gorivo je ispod zadane vrijednosti",
- "attributeFuelIncreaseThreshold": "Gorivo je iznad zadane vrijednosti",
- "attributePolylineDistance": "Udaljenost linijom",
- "attributeReportIgnoreOdometer": "Izvještaj: ignoriraj kilometražu",
- "attributeWebReportColor": "Web: Boja izvještaja",
- "attributeDevicePassword": "Lozinka uređaja",
- "attributeDeviceImage": "Slika uređaja",
- "attributeDeviceInactivityStart": "Neaktivnost uređaja",
- "attributeDeviceInactivityPeriod": "Vrijeme neaktivnosti uređaja",
- "attributeProcessingCopyAttributes": "Obrada: Kopiraj atribute",
- "attributeColor": "Boja",
- "attributeWebLiveRouteLength": "Web: Udaljenost rute uživo",
- "attributeWebSelectZoom": "Web: Približi kod odabira",
- "attributeWebMaxZoom": "Web: Maksimalni zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Proslijedi ključ korisnika",
- "attributePushoverDeviceNames": "Proslijedi imena uređaja",
- "attributeMailSmtpHost": "Mail: SMTP poslužitelj",
- "attributeMailSmtpPort": "Mail: SMTP port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS uključen",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS potreban",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL uključen",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL protokoli",
- "attributeMailSmtpFrom": "Mail: SMTP pošiljatelj",
- "attributeMailSmtpAuth": "Mail: SMTP uključi autentikaciju",
- "attributeMailSmtpUsername": "Mail: SMTP korisničko ime",
- "attributeMailSmtpPassword": "Mail: SMTP lozinka",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Onemogući atribute",
- "attributeUiDisableGroups": "UI: Onemogući grupe",
- "attributeUiDisableEvents": "UI: Isključi događaje",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Isključi vozače",
- "attributeUiDisableComputedAttributes": "UI: Isključi izračunate atribute",
- "attributeUiDisableCalendars": "UI: Isključi kalendare",
- "attributeUiDisableMaintenance": "UI: Isključi održavanje",
- "attributeUiHidePositionAttributes": "UI: Sakrij atribute pozicioniranja",
- "attributeUiDisableLoginLanguage": "UI: Onemogući jezik prilikom logina",
- "attributeNotificationTokens": "Token za notifikacije",
- "attributePopupInfo": "Popup info",
- "errorTitle": "Greška",
- "errorGeneral": "Nevažeći parametri ili kršenje ograničenja",
- "errorConnection": "Greška konekcije",
- "errorSocket": "WebSocket konekcijska greška",
- "errorZero": "Ne može biti nula.",
- "userEmail": "E-mail",
- "userPassword": "Lozinka",
- "userAdmin": "Administrator",
- "userRemember": "Zapamti",
- "userExpirationTime": "Vrijeme isteka",
- "userDeviceLimit": "Maksimalni broj uređaja",
- "userUserLimit": "Maksimalni broj korisnika",
- "userDeviceReadonly": "Onemogući dodavanje uređaja",
- "userLimitCommands": "Ograniči komande",
- "userDisableReports": "Onemogući izvještaje",
- "userFixedEmail": "Zabrani promjenu e-pošte",
- "userToken": "Token",
- "userDeleteAccount": "Obriši račun",
- "userTemporary": "Temporary",
- "loginTitle": "Prijava",
- "loginLanguage": "Jezik",
- "loginReset": "Ponovo postavi lozinku",
- "loginRegister": "Registracija",
- "loginLogin": "Prijava",
- "loginOpenId": "Prijavi se sa OpenID-om",
- "loginFailed": "Netočna e-mail adresa ili password",
- "loginCreated": "Registiran je novi korisnik",
- "loginResetSuccess": "Provjeri e-poštu",
- "loginUpdateSuccess": "Postavljena je nova lozinka",
- "loginLogout": "Odjava",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Uređaji i stanje",
- "deviceSelected": "Odabrani uređaj",
- "deviceTitle": "Uređaji",
- "devicePrimaryInfo": "Ime uređaja",
- "deviceSecondaryInfo": "Detalji uređaja",
- "deviceIdentifier": "Identifikator",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategorija",
- "deviceLastUpdate": "Zadnje ažuriranje",
- "deviceCommand": "Naredba",
- "deviceFollow": "Prati",
- "deviceTotalDistance": "Ukupna udaljenost",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Nepoznato",
- "deviceRegisterFirst": "Prijavi svoj prvi uređaj",
- "deviceIdentifierHelp": "IMEI, serijski broj ili drugi ID mora biti jednak identifikatoru uređaja koji se prijavljuje na poslužitelj",
- "deviceShare": "Share Device",
- "groupDialog": "Grupa",
- "groupParent": "Grupa",
- "groupNoGroup": "Bez grupe",
- "settingsTitle": "Postavke",
- "settingsUser": "Račun",
- "settingsGroups": "Grupe",
- "settingsServer": "Server",
- "settingsUsers": "Korisnici",
- "settingsDistanceUnit": "Jedinica udaljenosti",
- "settingsAltitudeUnit": "Mjerna jedinica za visinu",
- "settingsSpeedUnit": "Jedinica brzine",
- "settingsVolumeUnit": "Mjerna jedinica za volumen",
- "settingsTwelveHourFormat": "12-satno vrijeme",
- "settingsCoordinateFormat": "Format koordinata",
- "settingsServerVersion": "Verzija poslužitelja",
- "settingsAppVersion": "Verzija aplikacije",
- "settingsConnection": "Veza",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Izvještaji",
- "reportScheduled": "Redovni izvještaj",
- "reportDevice": "Uređaj",
- "reportGroup": "Grupa",
- "reportFrom": "Od",
- "reportTo": "Za",
- "reportShow": "Prikaži",
- "reportClear": "Očisti",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fiksno vrijeme",
- "positionDeviceTime": "Vrijeme na uređaju",
- "positionServerTime": "Vrijeme na poslužitelju",
- "positionValid": "Važeće",
- "positionAccuracy": "Preciznost",
- "positionLatitude": "Širina",
- "positionLongitude": "Dužina",
- "positionAltitude": "Visina",
- "positionSpeed": "Brzina",
- "positionCourse": "Kurs",
- "positionAddress": "Adresa",
- "positionProtocol": "Protokol",
- "positionDistance": "Udaljenost",
- "positionRpm": "O/min",
- "positionFuel": "Gorivo",
- "positionPower": "Napajanje",
- "positionBattery": "Baterija",
- "positionRaw": "Sirovi podaci",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Sateliti",
- "positionSatVisible": "Vidljivi sateliti",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roming",
- "positionEvent": "Događaj",
- "positionAlarm": "Alarm",
- "positionStatus": "Stanje",
- "positionOdometer": "Kilometraža",
- "positionServiceOdometer": "Kilometara do servisa",
- "positionTripOdometer": "Kilometraža puta",
- "positionHours": "Sati",
- "positionSteps": "Koraci",
- "positionInput": "Ulaz",
- "positionHeartRate": "Otkucaji srca",
- "positionOutput": "Izlaz",
- "positionBatteryLevel": "Razina baterije",
- "positionFuelConsumption": "Potrošnja goriva",
- "positionRfid": "RFID",
- "positionVersionFw": "Verzija firmwarea",
- "positionVersionHw": "Verzija hadrvera",
- "positionIgnition": "Paljenje",
- "positionFlags": "Zastavice",
- "positionCharge": "Punjenje",
- "positionIp": "IP",
- "positionArchive": "Arhiva",
- "positionVin": "VIN",
- "positionApproximate": "Približno",
- "positionThrottle": "Gas",
- "positionMotion": "Kretanje",
- "positionArmed": "Aktivirano",
- "positionAcceleration": "Ubrzavanje",
- "positionTemp": "Temperatura",
- "positionDeviceTemp": "Temperatura uređaja",
- "positionCoolantTemp": "Temperatura rashladne tekućine",
- "positionOperator": "Operater",
- "positionCommand": "Naredba",
- "positionBlocked": "Blokirano",
- "positionDtcs": "DTC kodovi",
- "positionObdSpeed": "OBD brzina",
- "positionObdOdometer": "OBD kilometraža",
- "positionDrivingTime": "Vrijeme vožnje",
- "positionDriverUniqueId": "Vozačev jedinstveni ID",
- "positionCard": "Kartica",
- "positionImage": "Slika",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Postavke poslužitelja",
- "serverZoom": "Povećanje",
- "serverRegistration": "Registracija",
- "serverReadonly": "Samo pregledavanje",
- "serverForceSettings": "Nametni postavke",
- "serverAnnouncement": "Najava",
- "serverName": "Ime poslužitelja",
- "serverDescription": "Opis poslužitelja",
- "serverColorPrimary": "Primarna boja",
- "serverColorSecondary": "Sekundarna boja",
- "serverLogo": "Logo",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Karta",
- "mapActive": "Aktivna karta",
- "mapOverlay": "Prekrivajuća karta",
- "mapOverlayCustom": "Prilagođeno prekrivanje",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API ključ",
- "mapOpenWeatherClouds": "OpenWeather oblaci",
- "mapOpenWeatherPrecipitation": "OpenWeather oborine",
- "mapOpenWeatherPressure": "OpenWeather tlak",
- "mapOpenWeatherWind": "OpenWeather vjetar",
- "mapOpenWeatherTemperature": "OpenWeather temperatura",
- "mapLayer": "Sloj karte",
- "mapCustom": "Prilagođeno (XYZ)",
- "mapCustomArcgis": "Prilagođeno (ArcGIS)",
- "mapCustomLabel": "Prilagođena karta",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox ulice",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox izvana",
- "mapMapboxSatellite": "Mapbox satelit",
- "mapMapboxKey": "Mapbox pristupni ključ",
- "mapMapTilerBasic": "MapTiler osnovno",
- "mapMapTilerHybrid": "MapTiler hibrid",
- "mapMapTilerKey": "MapTiler API ključ",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ pristupni ključ",
- "mapTomTomBasic": "TomTom osnovno",
- "mapTomTomFlow": "TomTom prikaz prometa",
- "mapTomTomIncidents": "TomTom prometne nesreće",
- "mapTomTomKey": "TomTom API ključ",
- "mapHereBasic": "Here osnovno",
- "mapHereHybrid": "Here hibridno",
- "mapHereSatellite": "Here satelit",
- "mapHereFlow": "Here prikaz prometa",
- "mapHereKey": "Here API ključ",
- "mapShapePolygon": "Mnogokut",
- "mapShapeCircle": "Krug",
- "mapShapePolyline": "Razlomljena linija",
- "mapLiveRoutes": "Rute uživo",
- "mapDirection": "Pokaži smjer",
- "mapCurrentLocation": "Trenutna lokacija",
- "mapPoiLayer": "Točke interesa sloj",
- "mapClustering": "Organizacija markera",
- "mapOnSelect": "Prikaži kartu na odabranom",
- "mapDefault": "Zadana karta",
- "stateTitle": "Stanje",
- "stateName": "Atribut",
- "stateValue": "Vrijednost",
- "commandTitle": "Naredba",
- "commandSend": "Pošalji",
- "commandSent": "Naredba poslana",
- "commandQueued": "Naredba u redu čekanja",
- "commandUnit": "Jedinica",
- "commandCustom": "Prilagođena naredba",
- "commandDeviceIdentification": "Identifikacija uređaja",
- "commandPositionSingle": "Jedan izvještaj",
- "commandPositionPeriodic": "Periodično izvješćivanje",
- "commandPositionStop": "Zaustavi izvješćivanje",
- "commandEngineStop": "Zaustavi motor",
- "commandEngineResume": "Pokreni motor",
- "commandAlarmArm": "Aktiviraj alarm",
- "commandAlarmDisarm": "Deaktiviraj alarm",
- "commandAlarmDismiss": "Zanemari alarm",
- "commandSetTimezone": "Postavi vremensku zonu",
- "commandRequestPhoto": "Zatraži sliku",
- "commandPowerOff": "Isključi uređaj",
- "commandRebootDevice": "Ponovno pokretanje uređaja",
- "commandFactoryReset": "Tvorničko postavljanje",
- "commandSendSms": "Pošalji SMS",
- "commandSendUssd": "Pošalji USSD",
- "commandSosNumber": "Postavi SOS broj",
- "commandSilenceTime": "Postavi vrijeme tišine",
- "commandSetPhonebook": "Postavi imenik",
- "commandVoiceMessage": "Glasovna poruka",
- "commandOutputControl": "Kontrola izlaza",
- "commandVoiceMonitoring": "Nadzor glasa",
- "commandSetAgps": "Postavi AGPS",
- "commandSetIndicator": "Postavi indikator",
- "commandConfiguration": "Konfiguracija",
- "commandGetVersion": "Provjeri verzij",
- "commandFirmwareUpdate": "Nadogradi firmware",
- "commandSetConnection": "Postavi vezu",
- "commandSetOdometer": "Postavi odometar",
- "commandGetModemStatus": "Dohvati status modema",
- "commandGetDeviceStatus": "Dohvati status uređaja",
- "commandSetSpeedLimit": "Postavi ograničenje brzine",
- "commandModePowerSaving": "Način uštede energije",
- "commandModeDeepSleep": "Način dubokog sna",
- "commandAlarmGeofence": "Postavi alarm za geo-ogradu",
- "commandAlarmBattery": "Postavi alarm za bateriju",
- "commandAlarmSos": "Postavi SOS alarm",
- "commandAlarmRemove": "Ukloni alarm",
- "commandAlarmClock": "Postavi alarm na vrijeme",
- "commandAlarmSpeed": "Postavi alarm za brzinu",
- "commandAlarmFall": "Postavi alarm za pad",
- "commandAlarmVibration": "Postavi alarm za vribracije",
- "commandFrequency": "Učestalost",
- "commandTimezone": "Korekcija vremenske zone",
- "commandMessage": "Poruka",
- "commandRadius": "Radius",
- "commandEnable": "Uključ",
- "commandData": "Podaci",
- "commandIndex": "Indeks",
- "commandPhone": "Telefonski broj",
- "commandServer": "Poslužitelj",
- "commandPort": "Port",
- "eventAll": "Svi događaji",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status nepoznat",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Uređaj neaktivan",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Uređaj se pomiče",
- "eventDeviceStopped": "Uređaj zaustavljen",
- "eventDeviceOverspeed": "Prekoračeno ograničenje brzine",
- "eventDeviceFuelDrop": "Pad količine goriva",
- "eventDeviceFuelIncrease": "Porast goriva",
- "eventCommandResult": "Rezultat naredbe",
- "eventGeofenceEnter": "Ulaz u geo-ogradu",
- "eventGeofenceExit": "Izlaz iz geo-ograde",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Vozilo upaljeno",
- "eventIgnitionOff": "Vozilo isključeno",
- "eventMaintenance": "Potrebno održavanje",
- "eventTextMessage": "Primljena tekstualna poruka",
- "eventDriverChanged": "Vozač promijenjen",
- "eventMedia": "Media",
- "eventsScrollToLast": "Pomakni na zadnji",
- "eventsSoundEvents": "Zvučni događaji",
- "eventsSoundAlarms": "Zvučni alarm",
- "alarmGeneral": "Općenito",
- "alarmSos": "SOS",
- "alarmVibration": "Vibracija",
- "alarmMovement": "Pokret",
- "alarmLowspeed": "Niska brzina",
- "alarmOverspeed": "Prekoračena brzina",
- "alarmFallDown": "Pad",
- "alarmLowPower": "Niska energija",
- "alarmLowBattery": "Nizak napon baterije",
- "alarmFault": "Greška",
- "alarmPowerOff": "Gašenje vozila",
- "alarmPowerOn": "Paljenje vozila",
- "alarmDoor": "Vrata",
- "alarmLock": "Zaključavanje",
- "alarmUnlock": "Otključavanje",
- "alarmGeofence": "Geo-ograda",
- "alarmGeofenceEnter": "Ulaz u geo-ogradu",
- "alarmGeofenceExit": "Izlaz iz geo-ograde",
- "alarmGpsAntennaCut": "GPS antena uklonjena",
- "alarmAccident": "Nesreća",
- "alarmTow": "Vuča",
- "alarmIdle": "Prazan hod",
- "alarmHighRpm": "Visoki okretaji",
- "alarmHardAcceleration": "Naglo kretanje",
- "alarmHardBraking": "Naglo kočenje",
- "alarmHardCornering": "Nagli ulaz u zavoj",
- "alarmLaneChange": "Promjena trake",
- "alarmFatigueDriving": "Umorna vožnja",
- "alarmPowerCut": "Napajanje uklonjeno",
- "alarmPowerRestored": "Napajanje vraćeno",
- "alarmJamming": "Ometanje",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Parking",
- "alarmBonnet": "Hauba",
- "alarmFootBrake": "Kočnica",
- "alarmFuelLeak": "Curenje goriva",
- "alarmTampering": "Petljanje",
- "alarmRemoving": "Uklanjanje",
- "notificationType": "Tip obavijesti",
- "notificationAlways": "Svi uređaji",
- "notificationNotificators": "Kanali",
- "notificatorCommand": "Naredba",
- "notificatorWeb": "Web",
- "notificatorMail": "Email",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pošalji",
- "reportReplay": "Ponovi",
- "reportCombined": "Kombinirano",
- "reportRoute": "Ruta",
- "reportEvents": "Događaji",
- "reportTrips": "Putovanja",
- "reportStops": "Zaustavljanja",
- "reportSummary": "Sažetak",
- "reportDaily": "Dnevni izvještaj",
- "reportChart": "Graf",
- "reportConfigure": "Konfiguriraj",
- "reportEventTypes": "Vrste događaja",
- "reportChartType": "Vrsta grafa",
- "reportShowMarkers": "Pokaži markere",
- "reportExport": "Izvoz",
- "reportEmail": "Izvještaj emailom",
- "reportSchedule": "Raspored",
- "reportPeriod": "Period",
- "reportCustom": "Prilagođeno",
- "reportToday": "Danas",
- "reportYesterday": "Jučer",
- "reportThisWeek": "Ovaj tjedan",
- "reportPreviousWeek": "Prošli tjedan",
- "reportThisMonth": "Ovaj mjesec",
- "reportPreviousMonth": "Prošli mjesec",
- "reportDeviceName": "Ime uređaja",
- "reportAverageSpeed": "Prosječna brzina",
- "reportMaximumSpeed": "Maksimalna brzina",
- "reportEngineHours": "Sati rada motora",
- "reportDuration": "Trajanje",
- "reportStartDate": "Početni datum",
- "reportStartTime": "Početno vrijeme",
- "reportStartAddress": "Početna adresa",
- "reportEndTime": "Vrijeme završetka",
- "reportEndAddress": "Završna adresa",
- "reportSpentFuel": "Potrošeno goriva",
- "reportStartOdometer": "Početna kilometraža",
- "reportEndOdometer": "Završna kilometraža",
- "statisticsTitle": "Statistike",
- "statisticsCaptureTime": "Vrijeme dohvaćanja",
- "statisticsActiveUsers": "Aktivnih korisnika",
- "statisticsActiveDevices": "Aktivnih uređaja",
- "statisticsRequests": "Zahtjeva",
- "statisticsMessagesReceived": "Poruka primljeno",
- "statisticsMessagesStored": "Poruka spremljeno",
- "statisticsGeocoder": "Geocoder zahtjevi",
- "statisticsGeolocation": "Geolokacijski zahtjevi",
- "categoryArrow": "Strelica",
- "categoryDefault": "Zadano",
- "categoryAnimal": "Životinja",
- "categoryBicycle": "Bicikl",
- "categoryBoat": "Brod",
- "categoryBus": "Autobus",
- "categoryCar": "Automobil",
- "categoryCamper": "Camper",
- "categoryCrane": "Dizalica",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motocikl",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Osoba",
- "categoryPickup": "Pickup",
- "categoryPlane": "Avion",
- "categoryShip": "Brod",
- "categoryTractor": "Traktor",
- "categoryTrain": "Vlak",
- "categoryTram": "Tramvaj",
- "categoryTrolleybus": "Trolejbus",
- "categoryTruck": "Kamion",
- "categoryVan": "Kombi",
- "categoryScooter": "Skuter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/hu.json b/web/l10n/hu.json
deleted file mode 100644
index f50b329c..00000000
--- a/web/l10n/hu.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Betöltés...",
- "sharedHide": "Elrejt",
- "sharedSave": "Mentés",
- "sharedUpload": "Upload",
- "sharedSet": "Beállít",
- "sharedCancel": "Mégse",
- "sharedCopy": "Copy",
- "sharedAdd": "Hozzáadás",
- "sharedEdit": "Szerkesztés",
- "sharedRemove": "Törlés",
- "sharedRemoveConfirm": "Biztosan törli?",
- "sharedNoData": "Nincs adat",
- "sharedSubject": "Subject",
- "sharedYes": "Igen",
- "sharedNo": "Nem",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "láb",
- "sharedKn": "csomó",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Óra",
- "sharedMinute": "Perc",
- "sharedSecond": "Másodperc",
- "sharedDays": "nap",
- "sharedHours": "óra",
- "sharedMinutes": "perc",
- "sharedDecimalDegrees": "Decimális fok",
- "sharedDegreesDecimalMinutes": "Fok decimális percben",
- "sharedDegreesMinutesSeconds": "Fok decimális másodpercben",
- "sharedName": "Név",
- "sharedDescription": "Leírás",
- "sharedSearch": "Keresés",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geokerítés",
- "sharedGeofences": "Geokerítések",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Értesítések",
- "sharedNotification": "Értesítés",
- "sharedAttributes": "Tulajdonságok",
- "sharedAttribute": "Tulajdonság",
- "sharedDrivers": "Sofőrök",
- "sharedDriver": "Sofőr",
- "sharedArea": "Terület",
- "sharedSound": "Értesítési hang",
- "sharedType": "Típus",
- "sharedDistance": "Távolság",
- "sharedHourAbbreviation": "ó",
- "sharedMinuteAbbreviation": "p",
- "sharedSecondAbbreviation": "mp",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gallon",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Angolszász gallon",
- "sharedUsGallon": "Amerikai Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Térkép állapot lekérés",
- "sharedComputedAttribute": "Számított attribútum",
- "sharedComputedAttributes": "Számított attribútumok",
- "sharedCheckComputedAttribute": "Számított attribútum ellenőrzése",
- "sharedExpression": "Kifejezés",
- "sharedDevice": "Eszköz",
- "sharedTest": "Teszt",
- "sharedTestNotification": "Próba értesítés küldése",
- "sharedTestNotificators": "Teszt csatornák",
- "sharedTestExpression": "Test kifejezés",
- "sharedCalendar": "Naptár",
- "sharedCalendars": "Naptárak",
- "sharedFile": "Fájl",
- "sharedSearchDevices": "Eszközök keresése",
- "sharedSortBy": "Rendezés",
- "sharedFilterMap": "Szűrés a térképen",
- "sharedSelectFile": "Fájl kiválasztása",
- "sharedPhone": "Telefon",
- "sharedRequired": "Kötelező",
- "sharedPreferences": "Preferenciák",
- "sharedPermissions": "Jogosultságok",
- "sharedConnections": "Kapcsolatok",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Szöveg",
- "sharedTypeNumber": "Szám",
- "sharedTypeBoolean": "Logikai",
- "sharedTimezone": "Időzóna",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Elmentett parancs",
- "sharedSavedCommands": "Elmentett Parancsok",
- "sharedNew": "Új...",
- "sharedShowAddress": "Cím megjelenítése",
- "sharedShowDetails": "További részletek",
- "sharedDisabled": "Letiltva",
- "sharedMaintenance": "Karbantartás",
- "sharedDeviceAccumulators": "Akkumulátorok",
- "sharedAlarms": "Riasztások",
- "sharedLocation": "Lokáció",
- "sharedImport": "Importálás",
- "sharedColumns": "Oszlopok",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Sebesség határ",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Vonaltávolság",
- "attributeReportIgnoreOdometer": "Jelentés: Odométer figyelmen kívül hagyása",
- "attributeWebReportColor": "Web: Jelentés színe",
- "attributeDevicePassword": "Eszköz jelszó",
- "attributeDeviceImage": "Eszköz kép",
- "attributeDeviceInactivityStart": "Eszköz inaktivitás kezdete",
- "attributeDeviceInactivityPeriod": "Eszköz inaktivitás periódus",
- "attributeProcessingCopyAttributes": "Feldolgozás: Attribútumok másolása",
- "attributeColor": "Szín",
- "attributeWebLiveRouteLength": "Web: Élő útvonal hossz",
- "attributeWebSelectZoom": "Web: közelítés a kiválasztáson",
- "attributeWebMaxZoom": "Web: Maximális Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "SMTP kiszolgáló",
- "attributeMailSmtpPort": "SMTP port",
- "attributeMailSmtpStarttlsEnable": "SMTP STARTTLS engedélyezése",
- "attributeMailSmtpStarttlsRequired": "SMTP STARTTLS szükséges",
- "attributeMailSmtpSslEnable": "SMTP SSL engedélyezése",
- "attributeMailSmtpSslTrust": "SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "SMTP SSL Protokollok",
- "attributeMailSmtpFrom": "SMTP Feladó",
- "attributeMailSmtpAuth": "SMTP autentikáció engedélyezése",
- "attributeMailSmtpUsername": "SMTP felhasználónév",
- "attributeMailSmtpPassword": "SMTP jelszó",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Csoportok letiltása",
- "attributeUiDisableEvents": "UI: Események letiltása",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Sofőrök letiltása",
- "attributeUiDisableComputedAttributes": "UI: Számított attribútumok letiltása",
- "attributeUiDisableCalendars": "UI: Naptárak letiltása",
- "attributeUiDisableMaintenance": "UI: Karbantartás letiltása",
- "attributeUiHidePositionAttributes": "UI: Pozíciós attribútumok elrejtése",
- "attributeUiDisableLoginLanguage": "UI: Bejelentkezés nyelv letiltás",
- "attributeNotificationTokens": "Értesítés tokenek",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Hiba",
- "errorGeneral": "Érvénytelen paraméterek vagy integritási szabályok megsértése",
- "errorConnection": "Kapcsolódási hiba",
- "errorSocket": "Kapcsolódási hiba",
- "errorZero": "Nem lehet nulla",
- "userEmail": "Email",
- "userPassword": "Jelszó",
- "userAdmin": "Adminisztrátor",
- "userRemember": "Megjegyez",
- "userExpirationTime": "Lejárat",
- "userDeviceLimit": "Eszköz limit",
- "userUserLimit": "Felhasználólimit",
- "userDeviceReadonly": "Eszköz csak olvasható",
- "userLimitCommands": "Parancsok listázása",
- "userDisableReports": "Riportok letiltása",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Bejelentkezés",
- "loginLanguage": "Nyelv",
- "loginReset": "Jelszó reset",
- "loginRegister": "Regisztráció",
- "loginLogin": "Bejelentkezés",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Hibás email vagy jelszó",
- "loginCreated": "Az új felhasználó sikeresen létrehozva",
- "loginResetSuccess": "Ellenőrizd az emailedet",
- "loginUpdateSuccess": "Új jelszó beállítva",
- "loginLogout": "Kilépés",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Eszközök és állapotuk",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Eszközök",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Azonosító",
- "deviceModel": "Modell",
- "deviceContact": "Kapcsolat",
- "deviceCategory": "Kategória",
- "deviceLastUpdate": "Utolsó frissítés",
- "deviceCommand": "Parancs",
- "deviceFollow": "Követ",
- "deviceTotalDistance": "Teljes távolság",
- "deviceStatus": "Státusz",
- "deviceStatusOnline": "Elérhető",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Ismeretlen",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Csoport",
- "groupParent": "Csoport",
- "groupNoGroup": "Nincs Csoport",
- "settingsTitle": "Beállítások",
- "settingsUser": "Fiók",
- "settingsGroups": "Csoportok",
- "settingsServer": "Szerver",
- "settingsUsers": "Felhasználók",
- "settingsDistanceUnit": "Távolság egysége",
- "settingsAltitudeUnit": "Magasság mértékegység",
- "settingsSpeedUnit": "Sebesség egysége",
- "settingsVolumeUnit": "Térfogat egysége",
- "settingsTwelveHourFormat": "12-órás formátum",
- "settingsCoordinateFormat": "Koordináta formátuma",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Jelentések",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Eszköz",
- "reportGroup": "Csoport",
- "reportFrom": "Kezdő dátum:",
- "reportTo": "Végső dátum:",
- "reportShow": "Mutat",
- "reportClear": "Töröl",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Idő beállítás",
- "positionDeviceTime": "Eszköz idő",
- "positionServerTime": "Szerver idő",
- "positionValid": "Valós",
- "positionAccuracy": "Pontosság",
- "positionLatitude": "Szélességi fok",
- "positionLongitude": "Hosszúsági fok",
- "positionAltitude": "Magasság",
- "positionSpeed": "Sebesség",
- "positionCourse": "Irány",
- "positionAddress": "Cím",
- "positionProtocol": "Protokoll",
- "positionDistance": "Távolság",
- "positionRpm": "Fordulat",
- "positionFuel": "Üzemanyag",
- "positionPower": "Áramforrás",
- "positionBattery": "Akkumulátor",
- "positionRaw": "Nyers",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Műholdak",
- "positionSatVisible": "Látható műholdak",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Esemény",
- "positionAlarm": "Riasztás",
- "positionStatus": "Státusz",
- "positionOdometer": "Megtett út",
- "positionServiceOdometer": "Szerviz megtett út",
- "positionTripOdometer": "Utazás megtett út",
- "positionHours": "Órák",
- "positionSteps": "Lépések",
- "positionInput": "Bemenet",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Kimenet",
- "positionBatteryLevel": "Akkumulátor szint",
- "positionFuelConsumption": "Fogyasztás",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware verzió",
- "positionVersionHw": "Hardver verzió",
- "positionIgnition": "Gyújtás",
- "positionFlags": "Zászlók",
- "positionCharge": "Töltés",
- "positionIp": "IP",
- "positionArchive": "Arhív",
- "positionVin": "Alvázszám",
- "positionApproximate": "Megközelít",
- "positionThrottle": "Gázkar",
- "positionMotion": "Mozgás",
- "positionArmed": "Élesített",
- "positionAcceleration": "Gyorsulás",
- "positionTemp": "Hőmérséklet",
- "positionDeviceTemp": "Eszköz hőmérséklet",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operátor",
- "positionCommand": "Parancs",
- "positionBlocked": "Blokkolt",
- "positionDtcs": "DTCk",
- "positionObdSpeed": "ODB sebesség",
- "positionObdOdometer": "ODB megtett út",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Sofőr egyedi azonosítója",
- "positionCard": "Card",
- "positionImage": "Kép",
- "positionVideo": "Video",
- "positionAudio": "Hang",
- "serverTitle": "Szerver beállítások",
- "serverZoom": "Nagyítás",
- "serverRegistration": "Regisztráció",
- "serverReadonly": "Csak olvasható",
- "serverForceSettings": "Erő beállítások",
- "serverAnnouncement": "Bejelentés",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Térkép",
- "mapActive": "Aktív térképek",
- "mapOverlay": "Térkép réteg",
- "mapOverlayCustom": "Egyedi réteg",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Felhőtérkép",
- "mapOpenWeatherPrecipitation": "OpenWeather Csapadéktérkép",
- "mapOpenWeatherPressure": "OpenWeather Nyomás",
- "mapOpenWeatherWind": "OpenWeather Széltérkép",
- "mapOpenWeatherTemperature": "OpenWeather Hőtérkép",
- "mapLayer": "Térkép réteg",
- "mapCustom": "Egyedi (XYZ)",
- "mapCustomArcgis": "Egyedi (ArcGIS)",
- "mapCustomLabel": "Egyedi térkép",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps kulcs",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex térkép",
- "mapYandexSat": "Yandex Műhold",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Rendelkezésre állási felmérés",
- "mapMapboxStreets": "Mapbox utca",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox kültéri",
- "mapMapboxSatellite": "Mapbox műhold",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Alap",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Alap",
- "mapTomTomFlow": "TomTom Forgalom",
- "mapTomTomIncidents": "TomTom Balesetek",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Alap",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Műhold",
- "mapHereFlow": "Here Forgalom",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Poligon",
- "mapShapeCircle": "Kör",
- "mapShapePolyline": "Vonallánc",
- "mapLiveRoutes": "Élő útvonalak",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Jelenlegi pozíció",
- "mapPoiLayer": "POI réteg",
- "mapClustering": "Jelölő csoportosítás",
- "mapOnSelect": "Térkép mutatása a kijelölésen",
- "mapDefault": "Default Map",
- "stateTitle": "Helyzet",
- "stateName": "Paraméter",
- "stateValue": "Érték",
- "commandTitle": "Parancs",
- "commandSend": "Küld",
- "commandSent": "Parancs elküldve",
- "commandQueued": "Parancs várakozik",
- "commandUnit": "Egység",
- "commandCustom": "Egyedi parancs",
- "commandDeviceIdentification": "Eszköz azonosító",
- "commandPositionSingle": "Egyszeri jelentés",
- "commandPositionPeriodic": "Pozició küldés",
- "commandPositionStop": "Pozició küldés vége",
- "commandEngineStop": "Motor letiltás",
- "commandEngineResume": "Motor engedélyezés",
- "commandAlarmArm": "Riasztó élesítés",
- "commandAlarmDisarm": "Riasztó kikapcsolás",
- "commandAlarmDismiss": "Riasztás némítása",
- "commandSetTimezone": "Időzóna beállítás",
- "commandRequestPhoto": "Kép lekérés",
- "commandPowerOff": "Készülék kikapcsolás",
- "commandRebootDevice": "Eszköz újraindítása",
- "commandFactoryReset": "Gyári visszaállítás",
- "commandSendSms": "SMS küldés",
- "commandSendUssd": "USSD küldés",
- "commandSosNumber": "SOS szám beállítás",
- "commandSilenceTime": "Csendes idő beállítás",
- "commandSetPhonebook": "Telefonkönyv beállítás",
- "commandVoiceMessage": "Hangüzenet",
- "commandOutputControl": "Kimenet Ellenőrzés",
- "commandVoiceMonitoring": "Hangfelügyelet",
- "commandSetAgps": "AGPS beállítása",
- "commandSetIndicator": "Jelölő beállítása",
- "commandConfiguration": "Konfiguráció",
- "commandGetVersion": "Verzió beszerzése",
- "commandFirmwareUpdate": "Firmware frissítése",
- "commandSetConnection": "Kapcsolat beállítása",
- "commandSetOdometer": "Távolságmérés beállítása",
- "commandGetModemStatus": "Modem állapotának lekérdezése",
- "commandGetDeviceStatus": "Eszköz állapotának lekérdezése",
- "commandSetSpeedLimit": "Sebességhatár beállítása",
- "commandModePowerSaving": "Energiatakarékos mód",
- "commandModeDeepSleep": "Mélyalvás mód",
- "commandAlarmGeofence": "Zóna riasztás beállítás",
- "commandAlarmBattery": "Akkumulátor riasztás beállítás",
- "commandAlarmSos": "SOS riasztás beállítása",
- "commandAlarmRemove": "Eltávolítás riasztás beállítása",
- "commandAlarmClock": "Óra riasztás beállítása",
- "commandAlarmSpeed": "Sebesség riasztás beállítása",
- "commandAlarmFall": "Leesés riasztás beállítása",
- "commandAlarmVibration": "Rezgés riasztás beállítása",
- "commandFrequency": "Frekvencia",
- "commandTimezone": "Időzóna eltoása",
- "commandMessage": "Üzenet",
- "commandRadius": "Sugár",
- "commandEnable": "Engedélyez",
- "commandData": "Adat",
- "commandIndex": "Index",
- "commandPhone": "Telefonszám",
- "commandServer": "Szerver",
- "commandPort": "Port",
- "eventAll": "Minden esemény",
- "eventDeviceOnline": "Státusz online",
- "eventDeviceUnknown": "Státusz ismeretlen",
- "eventDeviceOffline": "Státusz offline",
- "eventDeviceInactive": "Eszköz inaktív",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Eszköz mozgásban",
- "eventDeviceStopped": "Eszköz megállt",
- "eventDeviceOverspeed": "Sebességhatár túllépés",
- "eventDeviceFuelDrop": "Üzemanyag vesztés",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Parancs eredmény",
- "eventGeofenceEnter": "Beléptett a területbe",
- "eventGeofenceExit": "Kilépett a területből",
- "eventAlarm": "Riasztás",
- "eventIgnitionOn": "Gyújtás be",
- "eventIgnitionOff": "Gyújtás ki",
- "eventMaintenance": "Karbantartás szükséges",
- "eventTextMessage": "Szöveges üzenet érkezett",
- "eventDriverChanged": "Vezető váltás",
- "eventMedia": "Media",
- "eventsScrollToLast": "Utolsóhoz ugrás",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Általános",
- "alarmSos": "SOS",
- "alarmVibration": "Rezgés",
- "alarmMovement": "Mozgás",
- "alarmLowspeed": "Alacsony sebesség",
- "alarmOverspeed": "Gyorshajtás",
- "alarmFallDown": "Leesett",
- "alarmLowPower": "Alacsony feszültség",
- "alarmLowBattery": "Alacsony töltöttség",
- "alarmFault": "Meghibásodás",
- "alarmPowerOff": "Kikapcsolva",
- "alarmPowerOn": "Bekapcsolva",
- "alarmDoor": "Ajtó",
- "alarmLock": "Zárás",
- "alarmUnlock": "Nyitás",
- "alarmGeofence": "Terület",
- "alarmGeofenceEnter": "Belépés a területre",
- "alarmGeofenceExit": "Kilépés a területről",
- "alarmGpsAntennaCut": "GPS jelvesztés",
- "alarmAccident": "Baleset",
- "alarmTow": "Vontatás",
- "alarmIdle": "Tétlen",
- "alarmHighRpm": "Magas fordulatszám",
- "alarmHardAcceleration": "Erős gyorsítás",
- "alarmHardBraking": "Erős fékezés",
- "alarmHardCornering": "Hirtelen kanyarodás",
- "alarmLaneChange": "Sávváltás",
- "alarmFatigueDriving": "Veszélyes vezetés",
- "alarmPowerCut": "Áramvesztés",
- "alarmPowerRestored": "Áram helyreállítva",
- "alarmJamming": "Zavarás",
- "alarmTemperature": "Hőmérséklet",
- "alarmParking": "Parkolás",
- "alarmBonnet": "Motorház",
- "alarmFootBrake": "Fék",
- "alarmFuelLeak": "Üzemanyag szivárgás",
- "alarmTampering": "Manipulálás",
- "alarmRemoving": "Eltávolítás",
- "notificationType": "Értesítés Típusa",
- "notificationAlways": "Minden eszköz",
- "notificationNotificators": "Csatornák",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Levelezés",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Tűzoltóság",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Visszajátszás",
- "reportCombined": "Combined",
- "reportRoute": "Útvonal",
- "reportEvents": "Események",
- "reportTrips": "Utazások",
- "reportStops": "Megállók",
- "reportSummary": "Összegzés",
- "reportDaily": "Napi összesítés",
- "reportChart": "Diagram",
- "reportConfigure": "Konfiguráció",
- "reportEventTypes": "Esemény típusok",
- "reportChartType": "Diagram típusa",
- "reportShowMarkers": "Jelölők megjelenítése",
- "reportExport": "Exportálás",
- "reportEmail": "Email Riport",
- "reportSchedule": "Schedule",
- "reportPeriod": "Periódus",
- "reportCustom": "Egyéni",
- "reportToday": "Ma",
- "reportYesterday": "Tegnap",
- "reportThisWeek": "Ez a hét",
- "reportPreviousWeek": "Előző hét",
- "reportThisMonth": "Ez a hónap",
- "reportPreviousMonth": "Előző hónap",
- "reportDeviceName": "Eszköz neve",
- "reportAverageSpeed": "Átlagos sebesség",
- "reportMaximumSpeed": "Maximális sebesség",
- "reportEngineHours": "Motorjárat órák",
- "reportDuration": "Időtartam",
- "reportStartDate": "Kezdés dátuma",
- "reportStartTime": "Indulás ideje",
- "reportStartAddress": "Induló címe",
- "reportEndTime": "Megérkezés ideje",
- "reportEndAddress": "Megérkezés címe",
- "reportSpentFuel": "Elhasznált üzemanyag",
- "reportStartOdometer": "Kilométer start",
- "reportEndOdometer": "Kilométer Vég",
- "statisticsTitle": "Statisztika",
- "statisticsCaptureTime": "Rögzítés ideje",
- "statisticsActiveUsers": "Aktív felhasználók",
- "statisticsActiveDevices": "Aktív eszközök",
- "statisticsRequests": "Kérések",
- "statisticsMessagesReceived": "Fogadott üzenetek",
- "statisticsMessagesStored": "Tárolt üzenetek",
- "statisticsGeocoder": "Geocoder kérések",
- "statisticsGeolocation": "Geopozíció kérések",
- "categoryArrow": "Nyíl",
- "categoryDefault": "Alapértelmezett",
- "categoryAnimal": "Állat",
- "categoryBicycle": "Bicikli",
- "categoryBoat": "Csónak",
- "categoryBus": "Busz",
- "categoryCar": "Autó",
- "categoryCamper": "Camper",
- "categoryCrane": "Daru",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motorbicikli",
- "categoryOffroad": "Terep",
- "categoryPerson": "Személy",
- "categoryPickup": "Platós",
- "categoryPlane": "Repülő",
- "categoryShip": "Hajó",
- "categoryTractor": "Traktor",
- "categoryTrain": "Vonat",
- "categoryTram": "Villamos",
- "categoryTrolleybus": "Trolibusz",
- "categoryTruck": "Kamion",
- "categoryVan": "Teherkocsi",
- "categoryScooter": "Roller",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Periódus"
-} \ No newline at end of file
diff --git a/web/l10n/id.json b/web/l10n/id.json
deleted file mode 100644
index c7883dae..00000000
--- a/web/l10n/id.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Memuat...",
- "sharedHide": "Sembunyikan",
- "sharedSave": "Simpan",
- "sharedUpload": "Upload",
- "sharedSet": "Setel",
- "sharedCancel": "Batal",
- "sharedCopy": "Copy",
- "sharedAdd": "Tambah",
- "sharedEdit": "Ubah",
- "sharedRemove": "Hapus",
- "sharedRemoveConfirm": "Hapus Item?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mp/h",
- "sharedHour": "Jam",
- "sharedMinute": "Menit",
- "sharedSecond": "Detik",
- "sharedDays": "Hari",
- "sharedHours": "Jam",
- "sharedMinutes": "Menit",
- "sharedDecimalDegrees": "Derajat Desimal",
- "sharedDegreesDecimalMinutes": "Menit Derajat Desimal",
- "sharedDegreesMinutesSeconds": "Menit Detik Derajat",
- "sharedName": "Nama",
- "sharedDescription": "Deskripsi",
- "sharedSearch": "Cari",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Batas Wilayah",
- "sharedGeofences": "Semua Batas Wilayah",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Notifikasi",
- "sharedNotification": "Notification",
- "sharedAttributes": "Semua Atribut",
- "sharedAttribute": "Atribut",
- "sharedDrivers": "Antarmuka",
- "sharedDriver": "Antarmuka",
- "sharedArea": "Area",
- "sharedSound": "Notifikasi Suara",
- "sharedType": "Tipe",
- "sharedDistance": "Jarak",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Dapatkan Status Peta",
- "sharedComputedAttribute": "Atribut Terkomputerisasi",
- "sharedComputedAttributes": "Semua Atribut Terkomputerisasi",
- "sharedCheckComputedAttribute": "Pilih Atribut Terkomputerisasi",
- "sharedExpression": "Ekspresi",
- "sharedDevice": "Perangkat",
- "sharedTest": "Test",
- "sharedTestNotification": "Kirim Test Notifikasi",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Kalender",
- "sharedCalendars": "Semua Kalender",
- "sharedFile": "Berkas",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Pilih Berkas",
- "sharedPhone": "Telepon",
- "sharedRequired": "Diperlukan",
- "sharedPreferences": "Preferensi",
- "sharedPermissions": "Kewenangan",
- "sharedConnections": "Connections",
- "sharedExtra": "Ekstra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Nomor",
- "sharedTypeBoolean": "Pilihan",
- "sharedTimezone": "Zona Waktu",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Perintah Tersimpan",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "Baru...",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Batas Kecepatan",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Laporan: Biarkan Odometer",
- "attributeWebReportColor": "Web: Warna Laporan",
- "attributeDevicePassword": "Sandi Perangkat",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Memproses: Salin Semua Atribut",
- "attributeColor": "Warna",
- "attributeWebLiveRouteLength": "Web: Panjang Rute Aktif",
- "attributeWebSelectZoom": "Web: Perbesar Saat Pilih",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Aktif",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Diperlukan",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Aktif",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Terpercaya",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protokol",
- "attributeMailSmtpFrom": "Mail: SMTP Pengirim",
- "attributeMailSmtpAuth": "Mail: SMTP Otorisasi Aktif",
- "attributeMailSmtpUsername": "Mail: SMTP Pengguna",
- "attributeMailSmtpPassword": "Mail: SMTP Sandi",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI : Nonaktifkan Antarmuka",
- "attributeUiDisableComputedAttributes": "UI : Nonaktifkan Computed Attributes",
- "attributeUiDisableCalendars": "UI : Nonaktifkan Kalender",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Bermasalah",
- "errorGeneral": "Semua Parameter Salah Atau Salah Aturan",
- "errorConnection": "Koneksi Bermasalah",
- "errorSocket": "Koneksi Web Socket Bermasalah",
- "errorZero": "Can't be zero",
- "userEmail": "Email",
- "userPassword": "Sandi",
- "userAdmin": "Admin",
- "userRemember": "Diingat",
- "userExpirationTime": "Kadaluarsa",
- "userDeviceLimit": "Batas Perangkat",
- "userUserLimit": "Batas Pengguna",
- "userDeviceReadonly": "Perangkat Hanya Dilihat",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Masuk",
- "loginLanguage": "Bahasa",
- "loginReset": "Reset Password",
- "loginRegister": "Daftar",
- "loginLogin": "Masuk",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Email Atau Password Salah",
- "loginCreated": "Pengguna Baru Telah Terdaftar",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Keluar",
- "loginLogo": "Lambang",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Perangkat Dan Status",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Semua Perangkat",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Pengindetifikasi",
- "deviceModel": "Model",
- "deviceContact": "Kontak",
- "deviceCategory": "Kategori",
- "deviceLastUpdate": "Terbaru",
- "deviceCommand": "Perintah",
- "deviceFollow": "Ikuti",
- "deviceTotalDistance": "Total Jarak",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Aktif",
- "deviceStatusOffline": "Tidak Aktif",
- "deviceStatusUnknown": "Tidak Diketahui",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Grup",
- "groupParent": "Grup",
- "groupNoGroup": "No Grup",
- "settingsTitle": "Pengaturan",
- "settingsUser": "Akun",
- "settingsGroups": "Semua Grup",
- "settingsServer": "Server",
- "settingsUsers": "Pengguna",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "Format 12 Jam",
- "settingsCoordinateFormat": "Format Koordinat",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Semua Laporan",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Perangkat",
- "reportGroup": "Grup",
- "reportFrom": "Dari",
- "reportTo": "Ke",
- "reportShow": "Tampilkan",
- "reportClear": "Bersihkan",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Validitas",
- "positionAccuracy": "Akurasi",
- "positionLatitude": "Lintang",
- "positionLongitude": "Bujur",
- "positionAltitude": "Ketinggian",
- "positionSpeed": "Kecepatan",
- "positionCourse": "Arah",
- "positionAddress": "Alamat",
- "positionProtocol": "Protokol",
- "positionDistance": "Jarak",
- "positionRpm": "RPM",
- "positionFuel": "BBM",
- "positionPower": "Tenaga",
- "positionBattery": "Baterai",
- "positionRaw": "Mentah",
- "positionIndex": "Indek",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Peristiwa",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Odometer Perbaikan",
- "positionTripOdometer": "Odometer Perjalanan",
- "positionHours": "Semua Jam",
- "positionSteps": "Steps",
- "positionInput": "Masukan",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Keluaran",
- "positionBatteryLevel": "Level Battery",
- "positionFuelConsumption": "Konsumsi BBM",
- "positionRfid": "RFID",
- "positionVersionFw": "Versi Firmware",
- "positionVersionHw": "Versi Hardware",
- "positionIgnition": "Mesin",
- "positionFlags": "Semua Bendera",
- "positionCharge": "Pengisian",
- "positionIp": "IP",
- "positionArchive": "Arsip",
- "positionVin": "VIN",
- "positionApproximate": "Perkiraan",
- "positionThrottle": "Throttle",
- "positionMotion": "Gerakan",
- "positionArmed": "Aktif",
- "positionAcceleration": "Akselerasi",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Suhu Perangkat",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Perintah",
- "positionBlocked": "Diblok",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Kecepatan OBD",
- "positionObdOdometer": "Odometer OBD",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "ID Unik Antarmuka",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Semua Pengaturan Server",
- "serverZoom": "Perbesar",
- "serverRegistration": "Pendaftaran",
- "serverReadonly": "Hanya Dilihat",
- "serverForceSettings": "Semua Pengaturan Paksa",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Peta",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Layer Peta",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Peta Carto",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Key Peta Bing",
- "mapBingRoad": "Peta Jalan Bing",
- "mapBingAerial": "Peta Udara Bing",
- "mapBingHybrid": "Peta Bing Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Peta Yandex",
- "mapYandexSat": "Satelit Yandex",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Poligon",
- "mapShapeCircle": "Lingkaran",
- "mapShapePolyline": "Garis Poli",
- "mapLiveRoutes": "Rute Aktif",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Status",
- "stateName": "Atribut",
- "stateValue": "Nilai",
- "commandTitle": "Perintah",
- "commandSend": "Kirim",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "Unit",
- "commandCustom": "Perintah Buatan",
- "commandDeviceIdentification": "Identifikasi Perangkat",
- "commandPositionSingle": "Laporan Tunggal",
- "commandPositionPeriodic": "Laporan Berkala",
- "commandPositionStop": "Stop Laporan",
- "commandEngineStop": "Matikan Mesin",
- "commandEngineResume": "HIdupkan Mesin",
- "commandAlarmArm": "Alarm Aktif",
- "commandAlarmDisarm": "Alarm Tidak Aktif",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Setel Zona Waktu",
- "commandRequestPhoto": "Permintaan Foto",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Hidupkan Ulang Perangkat",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Kirim SMS",
- "commandSendUssd": "Kirim USSD",
- "commandSosNumber": "Kirim Nomor Darurat",
- "commandSilenceTime": "Setel Waktu DIam",
- "commandSetPhonebook": "Setel Buku Telepon",
- "commandVoiceMessage": "Pesan Suara",
- "commandOutputControl": "Kontrol Output",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Setel Indikasi",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekuensi",
- "commandTimezone": "Zona Waktu Tidak Tepat",
- "commandMessage": "Pesan",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Data",
- "commandIndex": "Indeks",
- "commandPhone": "Nomor Telepon",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Semua Peristiwa",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Hasil Perintah",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Perlu Perbaikan",
- "eventTextMessage": "Pesan Teks Diterima",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Bergulir Ke Terakhir",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Tipe Notifikasi",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Rute",
- "reportEvents": "Semua Peristiwa",
- "reportTrips": "Perjalanan",
- "reportStops": "Berhenti",
- "reportSummary": "Ringkasan",
- "reportDaily": "Daily Summary",
- "reportChart": "Grafik",
- "reportConfigure": "Pengaturan",
- "reportEventTypes": "Tipe Peristiwa",
- "reportChartType": "Tipe Grafik",
- "reportShowMarkers": "Tampilkan Tanda",
- "reportExport": "Ekspor",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "Nama Perangkat",
- "reportAverageSpeed": "Kecepatan Rata-rata",
- "reportMaximumSpeed": "Kecepatan Tertinggi",
- "reportEngineHours": "Durasi Mesin",
- "reportDuration": "Durasi",
- "reportStartDate": "Start Date",
- "reportStartTime": "Waktu Awal",
- "reportStartAddress": "Alamat Awal",
- "reportEndTime": "Waktu Akhir",
- "reportEndAddress": "Alamat Akhir",
- "reportSpentFuel": "BBM Terpakai",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Statistik",
- "statisticsCaptureTime": "Waktu Didapat",
- "statisticsActiveUsers": "Pengguna Aktif",
- "statisticsActiveDevices": "Perangkat Aktif",
- "statisticsRequests": "Permintaan",
- "statisticsMessagesReceived": "Pesan Diterima",
- "statisticsMessagesStored": "Pesan Disimpan",
- "statisticsGeocoder": "Permintaan Geocoder",
- "statisticsGeolocation": "Permintaan Geolokasi",
- "categoryArrow": "Panah",
- "categoryDefault": "Pengaturan Awal",
- "categoryAnimal": "Hewan",
- "categoryBicycle": "Sepeda",
- "categoryBoat": "Perahu",
- "categoryBus": "Bis",
- "categoryCar": "Mobil",
- "categoryCamper": "Camper",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Sepeda Motor",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Orang",
- "categoryPickup": "Jemput",
- "categoryPlane": "Pesawat",
- "categoryShip": "Kapal Laut",
- "categoryTractor": "Traktor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Truk",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/it.json b/web/l10n/it.json
deleted file mode 100644
index 03fcbb16..00000000
--- a/web/l10n/it.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Caricamento...",
- "sharedHide": "Nascondi",
- "sharedSave": "Salva",
- "sharedUpload": "Carica",
- "sharedSet": "Imposta",
- "sharedCancel": "Annulla",
- "sharedCopy": "Copia",
- "sharedAdd": "Aggiungi",
- "sharedEdit": "Modifica",
- "sharedRemove": "Rimuovi",
- "sharedRemoveConfirm": "Rimuovere elemento?",
- "sharedNoData": "Nessun dato",
- "sharedSubject": "Soggetto",
- "sharedYes": "Si",
- "sharedNo": "No",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Ora",
- "sharedMinute": "Minuto",
- "sharedSecond": "Secondo",
- "sharedDays": "giorni",
- "sharedHours": "ore",
- "sharedMinutes": "minuti",
- "sharedDecimalDegrees": "Gradi",
- "sharedDegreesDecimalMinutes": "Gradi Minuti",
- "sharedDegreesMinutesSeconds": "Gradi Minuti Secondi",
- "sharedName": "Nome",
- "sharedDescription": "Descrizione",
- "sharedSearch": "Cerca",
- "sharedIconScale": "Grandezza Icona",
- "sharedGeofence": "Geo Area",
- "sharedGeofences": "Geo Aree",
- "sharedCreateGeofence": "Crea Geo Area",
- "sharedNotifications": "Notifiche",
- "sharedNotification": "Notifica",
- "sharedAttributes": "Attributi",
- "sharedAttribute": "Attributo",
- "sharedDrivers": "Autisti",
- "sharedDriver": "Autista",
- "sharedArea": "Area",
- "sharedSound": "Suono Notifica",
- "sharedType": "Tipo",
- "sharedDistance": "Distanza",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Litri",
- "sharedImpGallon": "Galloni Imperiali",
- "sharedUsGallon": "Galloni USA",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Ottieni Stato Mappa",
- "sharedComputedAttribute": "Attributo Calcolato",
- "sharedComputedAttributes": "Attributi Calcolati",
- "sharedCheckComputedAttribute": "Controlla Attributo Calcolato",
- "sharedExpression": "Espressione",
- "sharedDevice": "Dispositivo",
- "sharedTest": "Prova",
- "sharedTestNotification": "Invia Notifica di Prova",
- "sharedTestNotificators": "Prova Canali",
- "sharedTestExpression": "Prova Espressione",
- "sharedCalendar": "Calendario",
- "sharedCalendars": "Calendari",
- "sharedFile": "File",
- "sharedSearchDevices": "Cerca Dispositivi",
- "sharedSortBy": "Ordina per",
- "sharedFilterMap": "Filtra su Mappa",
- "sharedSelectFile": "Seleziona file",
- "sharedPhone": "Telefono",
- "sharedRequired": "Richiesto",
- "sharedPreferences": "Preferenze",
- "sharedPermissions": "Permessi",
- "sharedConnections": "Connessioni",
- "sharedExtra": "Informazioni Aggiuntive",
- "sharedPrimary": "Primario",
- "sharedSecondary": "Secondario",
- "sharedTypeString": "Stringa",
- "sharedTypeNumber": "Numero",
- "sharedTypeBoolean": "Booleano",
- "sharedTimezone": "Fuso Orario",
- "sharedInfoTitle": "Informazioni",
- "sharedSavedCommand": "Comando Salvato",
- "sharedSavedCommands": "Comandi Salvati",
- "sharedNew": "Nuovo…",
- "sharedShowAddress": "Mostra Indirizzo",
- "sharedShowDetails": "Dettagli Aggiuntivi",
- "sharedDisabled": "Disattivato",
- "sharedMaintenance": "Manutenzione",
- "sharedDeviceAccumulators": "Accumulatori",
- "sharedAlarms": "Allarmi",
- "sharedLocation": "Posizione",
- "sharedImport": "Importa",
- "sharedColumns": "Colonne",
- "sharedDropzoneText": "Trascina un file qui o clicca",
- "sharedLogs": "Registri",
- "sharedLink": "Collegamento",
- "calendarSimple": "Semplice",
- "calendarRecurrence": "Ricorrente",
- "calendarOnce": "Una volta",
- "calendarDaily": "Giornaliero",
- "calendarWeekly": "Settimanale",
- "calendarMonthly": "Mensile",
- "calendarDays": "Giorni",
- "calendarSunday": "Domenica",
- "calendarMonday": "Lunedì",
- "calendarTuesday": "Martedì",
- "calendarWednesday": "Mercoledì",
- "calendarThursday": "Giovedì",
- "calendarFriday": "Venerdì",
- "calendarSaturday": "Sabato",
- "attributeShowGeofences": "Mostra Geo Aree",
- "attributeSpeedLimit": "Limite Di Velocità",
- "attributeFuelDropThreshold": "Soglia di calo carburante",
- "attributeFuelIncreaseThreshold": "Soglia di aumento carburante",
- "attributePolylineDistance": "Distanza Polilinea",
- "attributeReportIgnoreOdometer": "Rapporto: Ignora Odometro",
- "attributeWebReportColor": "Web: Colore Rapporto",
- "attributeDevicePassword": "Password Dispositivo",
- "attributeDeviceImage": "Immagine dispositivo",
- "attributeDeviceInactivityStart": "Inizio Inattività Dispositivo",
- "attributeDeviceInactivityPeriod": "Periodo Inattività Dispositivo",
- "attributeProcessingCopyAttributes": "Elaborazione: Copia Attributi",
- "attributeColor": "Colore",
- "attributeWebLiveRouteLength": "Web: Lunghezza Percorso in Diretta",
- "attributeWebSelectZoom": "Web: Ingrandimento su Selezione",
- "attributeWebMaxZoom": "Web: Ingrandimento Massimo",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover Chiave Utente",
- "attributePushoverDeviceNames": "Pushover Nome Dispositivo",
- "attributeMailSmtpHost": "Mail: Host SMTP",
- "attributeMailSmtpPort": "Mail: Porta SMTP",
- "attributeMailSmtpStarttlsEnable": "Mail: Attiva STARTTLS SMTP",
- "attributeMailSmtpStarttlsRequired": "Mail: Richiesto STARTTLS SMTP",
- "attributeMailSmtpSslEnable": "Mail: Attiva SSL SMTP",
- "attributeMailSmtpSslTrust": "Mail: Fiducia SSL SMTP",
- "attributeMailSmtpSslProtocols": "Mail: Protocolli SSL SMTP",
- "attributeMailSmtpFrom": "Mail: SMTP Da",
- "attributeMailSmtpAuth": "Mail: Attiva Autenticazione SMTP",
- "attributeMailSmtpUsername": "Mail: Nome Utente SMTP",
- "attributeMailSmtpPassword": "Mail: Password SMTP",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disattiva Attributi",
- "attributeUiDisableGroups": "UI: Disattiva Gruppi",
- "attributeUiDisableEvents": "UI: Disattiva Eventi",
- "attributeUiDisableVehicleFeatures": "UI: disabilita le funzionalità del veicolo",
- "attributeUiDisableDrivers": "UI: Disattiva Autisti",
- "attributeUiDisableComputedAttributes": "UI: Disattiva Attributi Calcolati",
- "attributeUiDisableCalendars": "UI: Disattiva Calendari",
- "attributeUiDisableMaintenance": "UI: Disattiva Manutenzione",
- "attributeUiHidePositionAttributes": "UI: Nascondi Attributi Posizione",
- "attributeUiDisableLoginLanguage": "UI: Disabilita lingua di accesso",
- "attributeNotificationTokens": "Token di Notifica",
- "attributePopupInfo": "Informazioni Popup",
- "errorTitle": "Errore",
- "errorGeneral": "Parametri non validi o violazione dei vincoli",
- "errorConnection": "Errore di connessione",
- "errorSocket": "Errore connessione Web socket",
- "errorZero": "Non può essere zero",
- "userEmail": "Email",
- "userPassword": "Password",
- "userAdmin": "Amministratore",
- "userRemember": "Ricorda",
- "userExpirationTime": "Scadenza",
- "userDeviceLimit": "Limite Dispositivo",
- "userUserLimit": "Limite Utente",
- "userDeviceReadonly": "Dispositivo in Sola Lettura",
- "userLimitCommands": "Limita Comandi",
- "userDisableReports": "Disattiva Rapporti",
- "userFixedEmail": "Nessuna modifica Email",
- "userToken": "Token",
- "userDeleteAccount": "Elimina Account",
- "userTemporary": "Temporaneo",
- "loginTitle": "Accesso",
- "loginLanguage": "Lingua",
- "loginReset": "Resetta Password",
- "loginRegister": "Registrazione",
- "loginLogin": "Accesso",
- "loginOpenId": "Accesso con OpenID",
- "loginFailed": "Indirizzo email o password errati",
- "loginCreated": "Un nuovo utente si è registrato",
- "loginResetSuccess": "Controlla la tua email",
- "loginUpdateSuccess": "Nuova password impostata",
- "loginLogout": "Esci",
- "loginLogo": "Logo",
- "loginTotpCode": "Codice Password Monouso",
- "loginTotpKey": "Chiave Password Monouso",
- "devicesAndState": "Dispositivi e Stato",
- "deviceSelected": "Dispositivo selezionato",
- "deviceTitle": "Dispositivi",
- "devicePrimaryInfo": "Titolo dispositivo",
- "deviceSecondaryInfo": "Dettagli dispositivo",
- "deviceIdentifier": "Identificativo",
- "deviceModel": "Modello",
- "deviceContact": "Contatto",
- "deviceCategory": "Categoria",
- "deviceLastUpdate": "Ultimo Aggiornamento",
- "deviceCommand": "Comando",
- "deviceFollow": "Segui",
- "deviceTotalDistance": "Distanza Totale",
- "deviceStatus": "Stato",
- "deviceStatusOnline": "Connesso",
- "deviceStatusOffline": "Disconnesso",
- "deviceStatusUnknown": "Sconosciuto",
- "deviceRegisterFirst": "Registra il tuo primo dispositivo",
- "deviceIdentifierHelp": "IMEI, numero di serie o altro ID. Deve corrispondere ai rapporti del dispositivo identificatore sul server.",
- "deviceShare": "Condividi Dispositivo",
- "groupDialog": "Gruppo",
- "groupParent": "Gruppo",
- "groupNoGroup": "Nessun Gruppo",
- "settingsTitle": "Impostazioni",
- "settingsUser": "Profilo",
- "settingsGroups": "Gruppi",
- "settingsServer": "Server",
- "settingsUsers": "Utenti",
- "settingsDistanceUnit": "Unità distanza",
- "settingsAltitudeUnit": "Unità altitudine",
- "settingsSpeedUnit": "Unità velocità",
- "settingsVolumeUnit": "Unità volume",
- "settingsTwelveHourFormat": "Formato 12 ore",
- "settingsCoordinateFormat": "Formato Coordinate",
- "settingsServerVersion": "Versione server",
- "settingsAppVersion": "Versione App",
- "settingsConnection": "Connessione",
- "settingsDarkMode": "Modalità Notturna",
- "settingsTotpEnable": "Abilita Password Monouso",
- "settingsTotpForce": "Forza Password Monouso",
- "settingsServiceWorkerUpdateInterval": "Intervallo di Aggiornamento di ServiceWorker",
- "settingsUpdateAvailable": "È disponibile un aggiornamento.",
- "settingsSupport": "Supporto",
- "reportTitle": "Rapporti",
- "reportScheduled": "Rapporto programmato",
- "reportDevice": "Dispositivo",
- "reportGroup": "Gruppo",
- "reportFrom": "Da",
- "reportTo": "A",
- "reportShow": "Visualizza",
- "reportClear": "Pulisci",
- "linkGoogleMaps": "Mappa Google",
- "linkAppleMaps": "Mappa Apple",
- "linkStreetView": "Vista Stradale",
- "positionFixTime": "Tempo Corretto",
- "positionDeviceTime": "Orario Dispositivo",
- "positionServerTime": "Orario Server",
- "positionValid": "Valido",
- "positionAccuracy": "Precisione",
- "positionLatitude": "Latitudine",
- "positionLongitude": "Longitudine",
- "positionAltitude": "Altitudine",
- "positionSpeed": "Velocità",
- "positionCourse": "Direzione",
- "positionAddress": "Indirizzo",
- "positionProtocol": "Protocollo",
- "positionDistance": "Distanza",
- "positionRpm": "Giri Motore",
- "positionFuel": "Carburante",
- "positionPower": "Alimentazione",
- "positionBattery": "Batteria",
- "positionRaw": "Dato grezzo",
- "positionIndex": "Indice",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelliti",
- "positionSatVisible": "Satelliti Visibili",
- "positionRssi": "Segnale GSM",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Evento",
- "positionAlarm": "Allarme",
- "positionStatus": "Stato",
- "positionOdometer": "Odometro",
- "positionServiceOdometer": "Servizio Odometrico",
- "positionTripOdometer": "Parziale Odometro",
- "positionHours": "Ore",
- "positionSteps": "Passi",
- "positionInput": "Ingresso",
- "positionHeartRate": "Frequenza Cardiaca",
- "positionOutput": "Uscita",
- "positionBatteryLevel": "Livello Batteria",
- "positionFuelConsumption": "Consumo Carburante",
- "positionRfid": "RFID",
- "positionVersionFw": "Versione Firmware",
- "positionVersionHw": "Versione Hardware",
- "positionIgnition": "Accensione",
- "positionFlags": "Bandiera",
- "positionCharge": "Carica",
- "positionIp": "IP",
- "positionArchive": "Archivio",
- "positionVin": "VIN",
- "positionApproximate": "Approssimato",
- "positionThrottle": "Acceleratore",
- "positionMotion": "Movimento",
- "positionArmed": "Armato/Attivo",
- "positionAcceleration": "Accelerazione",
- "positionTemp": "Temperatura",
- "positionDeviceTemp": "Temperatura Dispositivo",
- "positionCoolantTemp": "Temperatura Motore",
- "positionOperator": "Operatore",
- "positionCommand": "Comando",
- "positionBlocked": "Bloccato",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Velocità OBD",
- "positionObdOdometer": "Odometro OBD",
- "positionDrivingTime": "Ore di Guida",
- "positionDriverUniqueId": "ID Univoco Autista",
- "positionCard": "Carta",
- "positionImage": "Immagine",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Impostazioni Server",
- "serverZoom": "Zoom",
- "serverRegistration": "Registrazione",
- "serverReadonly": "Sola lettura",
- "serverForceSettings": "Forza Impostazioni",
- "serverAnnouncement": "Annuncio",
- "serverName": "Nome del Server",
- "serverDescription": "Descrizione del Server",
- "serverColorPrimary": "Colore Primario",
- "serverColorSecondary": "Colore Secondario",
- "serverLogo": "Immagine Logo",
- "serverLogoInverted": "Immagine Logo Invertita",
- "serverChangeDisable": "Disattiva cambiamento Server",
- "serverDisableShare": "Disattiva la Condivisione del Dispositivo",
- "mapTitle": "Mappa",
- "mapActive": "Mappe Attive",
- "mapOverlay": "Soprapposizione Mappa",
- "mapOverlayCustom": "Soprapposizione Personalizzata",
- "mapOpenSeaMap": "Mappa OpenSea",
- "mapOpenRailwayMap": "Mappa OpenRailway",
- "mapOpenWeatherKey": "OpenWeather Chiave API",
- "mapOpenWeatherClouds": "OpenWeather Nuvole",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitazioni",
- "mapOpenWeatherPressure": "OpenWeather Pressione",
- "mapOpenWeatherWind": "OpenWeather Vento",
- "mapOpenWeatherTemperature": "OpenWeather Temperatura",
- "mapLayer": "Livello Mappa",
- "mapCustom": "Personalizzata (XYZ)",
- "mapCustomArcgis": "Personalizzata (ArcGIS)",
- "mapCustomLabel": "Mappa Personalizzata",
- "mapCarto": "Mappe base di Carto",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Stradale",
- "mapGoogleHybrid": "Google Ibrida",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Chiave Mappa",
- "mapBingRoad": "Bing Mappa Stradale",
- "mapBingAerial": "Bing Mappa Aerea",
- "mapBingHybrid": "Bing Mappa ibrida",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Mappa",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Stradale",
- "mapMapboxStreetsDark": "Mapbox Stradale Notturno",
- "mapMapboxOutdoors": "Mapbox all'Aperto",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Token di Accesso",
- "mapMapTilerBasic": "MapTiler Base",
- "mapMapTilerHybrid": "MapTiler Ibrida",
- "mapMapTilerKey": "MapTiler Chiave API",
- "mapLocationIqStreets": "LocationIQ Stradale",
- "mapLocationIqDark": "LocationIQ Notturna",
- "mapLocationIqKey": "LocationIQ Token di Accesso",
- "mapTomTomBasic": "TomTom Base",
- "mapTomTomFlow": "TomTom Traffico Stradale",
- "mapTomTomIncidents": "TomTom Incidenti Stradali",
- "mapTomTomKey": "TomTom Chiave API",
- "mapHereBasic": "Here Base",
- "mapHereHybrid": "Here Ibrida",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffico Stradale",
- "mapHereKey": "Here Chiave API",
- "mapShapePolygon": "Poligono",
- "mapShapeCircle": "Cerchio",
- "mapShapePolyline": "Polilinea",
- "mapLiveRoutes": "Percorso in Diretta",
- "mapDirection": "Mostra direzione",
- "mapCurrentLocation": "Posizione Corrente",
- "mapPoiLayer": "Layer POI",
- "mapClustering": "Gruppi di marcatori",
- "mapOnSelect": "Mostra mappa su selezione",
- "mapDefault": "Mappa predefinita",
- "stateTitle": "Stato",
- "stateName": "Attributo",
- "stateValue": "Valore",
- "commandTitle": "Comando",
- "commandSend": "Invia",
- "commandSent": "Comando inviato",
- "commandQueued": "Comando accodato",
- "commandUnit": "Unità",
- "commandCustom": "Comando Personalizzato",
- "commandDeviceIdentification": "Identificativo Dispositivo",
- "commandPositionSingle": "Rapporto Singolo",
- "commandPositionPeriodic": "Rapporti Periodici",
- "commandPositionStop": "Ferma Rapporti",
- "commandEngineStop": "Ferma Motore",
- "commandEngineResume": "Riavvio Motore",
- "commandAlarmArm": "Attiva Allarme",
- "commandAlarmDisarm": "Disattiva Allarme",
- "commandAlarmDismiss": "Ignora Allarme",
- "commandSetTimezone": "Imposta Fuso Orario",
- "commandRequestPhoto": "Richiedi Foto",
- "commandPowerOff": "Spegni Dispositivo",
- "commandRebootDevice": "Riavvia Dispositivo",
- "commandFactoryReset": "Reset di fabbrica",
- "commandSendSms": "Invia SMS",
- "commandSendUssd": "Invia USSD",
- "commandSosNumber": "Imposta Numero SOS",
- "commandSilenceTime": "Imposta Orario Silenzio",
- "commandSetPhonebook": "Imposta Rubrica",
- "commandVoiceMessage": "Messaggio Vocale",
- "commandOutputControl": "Controllo Uscita",
- "commandVoiceMonitoring": "Monitoraggio Vocale",
- "commandSetAgps": "Imposta AGPS",
- "commandSetIndicator": "Imposta Indicatore",
- "commandConfiguration": "Configurazione",
- "commandGetVersion": "Rileva Versione",
- "commandFirmwareUpdate": "Aggiorna Firmware",
- "commandSetConnection": "Imposta Connessione",
- "commandSetOdometer": "Imposta Odometro",
- "commandGetModemStatus": "Rileva Stato Modem",
- "commandGetDeviceStatus": "Rileva Stato Dispositivo",
- "commandSetSpeedLimit": "Imposta Limite Velocità",
- "commandModePowerSaving": "Modalità di Risparmio Energetico",
- "commandModeDeepSleep": "Modalità Sonno Profondo",
- "commandAlarmGeofence": "Imposta Allarme Geo Area",
- "commandAlarmBattery": "Imposta Allarme Batteria",
- "commandAlarmSos": "Imposta Allarme SOS",
- "commandAlarmRemove": "Imposta Rimozione Allarme",
- "commandAlarmClock": "Imposta Allarme Sveglia",
- "commandAlarmSpeed": "Imposta Allarme Velocità",
- "commandAlarmFall": "Imposta Allarme Caduta",
- "commandAlarmVibration": "Imposta Allarme Vibrazione",
- "commandFrequency": "Frequenza",
- "commandTimezone": "Differenza Fuso Orario",
- "commandMessage": "Messaggio",
- "commandRadius": "Raggio",
- "commandEnable": "Attiva",
- "commandData": "Dati",
- "commandIndex": "Indice",
- "commandPhone": "Numero Telefonico",
- "commandServer": "Server",
- "commandPort": "Porta",
- "eventAll": "Tutti gli Eventi",
- "eventDeviceOnline": "Connesso al server",
- "eventDeviceUnknown": "Stato sconosciuto",
- "eventDeviceOffline": "Disconnesso dal Server",
- "eventDeviceInactive": "Dispositivo non attivo",
- "eventQueuedCommandSent": "Comando in coda inviato",
- "eventDeviceMoving": "Dispositivo in movimento",
- "eventDeviceStopped": "Dispositivo Fermo",
- "eventDeviceOverspeed": "Limite di velocità superato",
- "eventDeviceFuelDrop": "Perdita di carburante",
- "eventDeviceFuelIncrease": "Incremento carburante",
- "eventCommandResult": "Risultato comando",
- "eventGeofenceEnter": "Entrato nella Geo Area",
- "eventGeofenceExit": "Uscito dalla Geo Area",
- "eventAlarm": "Allarme",
- "eventIgnitionOn": "Accensione inserita",
- "eventIgnitionOff": "Accensione disinserita",
- "eventMaintenance": "Richiesta manutenzione",
- "eventTextMessage": "Messaggio di testo ricevuto",
- "eventDriverChanged": "Autista cambiato",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scorri fino all'ultimo",
- "eventsSoundEvents": "Suono eventi",
- "eventsSoundAlarms": "Suono allarmi",
- "alarmGeneral": "Generale",
- "alarmSos": "SOS",
- "alarmVibration": "Vibrazione",
- "alarmMovement": "Movimento",
- "alarmLowspeed": "Bassa Velocità",
- "alarmOverspeed": "Velocità Eccessiva",
- "alarmFallDown": "Caduta",
- "alarmLowPower": "Alimentazione Bassa",
- "alarmLowBattery": "Batteria Scarica",
- "alarmFault": "Guasto",
- "alarmPowerOff": "Spegni",
- "alarmPowerOn": "Accendi",
- "alarmDoor": "Porta",
- "alarmLock": "Blocca",
- "alarmUnlock": "Sblocca",
- "alarmGeofence": "Geo Area",
- "alarmGeofenceEnter": "Ingresso Geo Area",
- "alarmGeofenceExit": "Uscita Geo Area",
- "alarmGpsAntennaCut": "Antenna GPS Scollegata",
- "alarmAccident": "Incidente",
- "alarmTow": "Inclinazione",
- "alarmIdle": "Inattivo",
- "alarmHighRpm": "Giri Motore Elevati",
- "alarmHardAcceleration": "Accelerazione Brusca",
- "alarmHardBraking": "Frenata Brusca",
- "alarmHardCornering": "Curva Stretta",
- "alarmLaneChange": "Cambio Corsia",
- "alarmFatigueDriving": "Affaticamento del Guidatore",
- "alarmPowerCut": "Alimentazione Interrotta",
- "alarmPowerRestored": "Alimentazione Ripristinata",
- "alarmJamming": "Disturbatore Frequenze",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Parcheggio",
- "alarmBonnet": "Cofano",
- "alarmFootBrake": "Freno a pedale",
- "alarmFuelLeak": "Perdita carburante",
- "alarmTampering": "Manomissione",
- "alarmRemoving": "Rimozione",
- "notificationType": "Tipo Notifica",
- "notificationAlways": "Tutti i Dispositivi",
- "notificationNotificators": "Canali",
- "notificatorCommand": "Comandi",
- "notificatorWeb": "Web",
- "notificatorMail": "Email",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Riguarda il Percorso",
- "reportCombined": "Combinato",
- "reportRoute": "Percorso",
- "reportEvents": "Eventi",
- "reportTrips": "Viaggi",
- "reportStops": "Fermate",
- "reportSummary": "Sommario",
- "reportDaily": "Riassunto Giornaliero",
- "reportChart": "Grafico",
- "reportConfigure": "Configura",
- "reportEventTypes": "Tipi Evento",
- "reportChartType": "Tipo Grafico",
- "reportShowMarkers": "Mostra i marcatori",
- "reportExport": "Esporta",
- "reportEmail": "Rapporto Email",
- "reportSchedule": "Cronoprogramma",
- "reportPeriod": "Periodo",
- "reportCustom": "Personalizzato",
- "reportToday": "Oggi",
- "reportYesterday": "Ieri",
- "reportThisWeek": "Settimana Corrente",
- "reportPreviousWeek": "Settimana Precedente",
- "reportThisMonth": "Mese Corrente",
- "reportPreviousMonth": "Mese Precedente",
- "reportDeviceName": "Nome Dispositivo",
- "reportAverageSpeed": "Velocità Media",
- "reportMaximumSpeed": "Velocità Massima",
- "reportEngineHours": "Ore di Guida",
- "reportDuration": "Durata",
- "reportStartDate": "Data di partenza",
- "reportStartTime": "Ora di Partenza",
- "reportStartAddress": "Indirizzo di Partenza",
- "reportEndTime": "Ora di Arrivo",
- "reportEndAddress": "Indirizzo di Arrivo",
- "reportSpentFuel": "Carburante Consumato",
- "reportStartOdometer": "Odometro Inizio",
- "reportEndOdometer": "Odometro Fine",
- "statisticsTitle": "Statistiche",
- "statisticsCaptureTime": "Tempo di Cattura",
- "statisticsActiveUsers": "Utenti Attivi",
- "statisticsActiveDevices": "Dispositivi Attivi",
- "statisticsRequests": "Richieste",
- "statisticsMessagesReceived": "Messaggi Ricevuti",
- "statisticsMessagesStored": "Messaggi Salvati",
- "statisticsGeocoder": "Richieste Geocoder",
- "statisticsGeolocation": "Richieste Geolocalizzazione",
- "categoryArrow": "Freccia",
- "categoryDefault": "Predefinita",
- "categoryAnimal": "Animale",
- "categoryBicycle": "Bicicletta",
- "categoryBoat": "Barca",
- "categoryBus": "Autobus",
- "categoryCar": "Automobile",
- "categoryCamper": "Camper",
- "categoryCrane": "Gru",
- "categoryHelicopter": "Elicottero",
- "categoryMotorcycle": "Moto",
- "categoryOffroad": "Fuoristrada",
- "categoryPerson": "Persona",
- "categoryPickup": "Pickup",
- "categoryPlane": "Aeroplano",
- "categoryShip": "Nave",
- "categoryTractor": "Trattore",
- "categoryTrain": "Treno",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Filobus",
- "categoryTruck": "Camion",
- "categoryVan": "Furgone",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Inizio",
- "maintenancePeriod": "Periodo"
-} \ No newline at end of file
diff --git a/web/l10n/ja.json b/web/l10n/ja.json
deleted file mode 100644
index 3c99b0c0..00000000
--- a/web/l10n/ja.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "読み込み中...",
- "sharedHide": "非表示",
- "sharedSave": "保存",
- "sharedUpload": "Upload",
- "sharedSet": "設定",
- "sharedCancel": "キャンセル",
- "sharedCopy": "Copy",
- "sharedAdd": "追加",
- "sharedEdit": "編集",
- "sharedRemove": "削除",
- "sharedRemoveConfirm": "アイテムを削除しますか?",
- "sharedNoData": "データがありません",
- "sharedSubject": "Subject",
- "sharedYes": "はい",
- "sharedNo": "いいえ",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "メートル",
- "sharedFeet": "フィート",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "時間",
- "sharedMinute": "分",
- "sharedSecond": "秒",
- "sharedDays": "日",
- "sharedHours": "時間",
- "sharedMinutes": "分",
- "sharedDecimalDegrees": "DEG形式(度)",
- "sharedDegreesDecimalMinutes": "DMM形式(度分)",
- "sharedDegreesMinutesSeconds": "DMS形式(度分秒)",
- "sharedName": "名前",
- "sharedDescription": "説明",
- "sharedSearch": "検索",
- "sharedIconScale": "アイコンの大きさ",
- "sharedGeofence": "ジオフェンス",
- "sharedGeofences": "ジオフェンス",
- "sharedCreateGeofence": "ジオフェンスを作成",
- "sharedNotifications": "通知",
- "sharedNotification": "通知",
- "sharedAttributes": "属性",
- "sharedAttribute": "属性",
- "sharedDrivers": "ドライバー",
- "sharedDriver": "ドライバー",
- "sharedArea": "エリア",
- "sharedSound": "通知サウンド",
- "sharedType": "タイプ",
- "sharedDistance": "距離",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "リットル",
- "sharedImpGallon": "英ガロン",
- "sharedUsGallon": "米ガロン",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "地図から情報を取得",
- "sharedComputedAttribute": "算出属性",
- "sharedComputedAttributes": "算出属性",
- "sharedCheckComputedAttribute": "算出属性を確認",
- "sharedExpression": "式",
- "sharedDevice": "デバイス",
- "sharedTest": "テスト",
- "sharedTestNotification": "テスト通知を送信",
- "sharedTestNotificators": "チャンネルをテスト",
- "sharedTestExpression": "式をテスト",
- "sharedCalendar": "カレンダー",
- "sharedCalendars": "カレンダー",
- "sharedFile": "ファイル",
- "sharedSearchDevices": "デバイスを探す",
- "sharedSortBy": "並び替え",
- "sharedFilterMap": "マップのフィルター",
- "sharedSelectFile": "ファイルを選択",
- "sharedPhone": "電話",
- "sharedRequired": "必須項目",
- "sharedPreferences": "環境設定",
- "sharedPermissions": "アクセス許可",
- "sharedConnections": "接続",
- "sharedExtra": "拡張",
- "sharedPrimary": "第一",
- "sharedSecondary": "第二",
- "sharedTypeString": "文字列",
- "sharedTypeNumber": "数値",
- "sharedTypeBoolean": "論理値",
- "sharedTimezone": "タイムゾーン",
- "sharedInfoTitle": "情報",
- "sharedSavedCommand": "保存したコマンド",
- "sharedSavedCommands": "保存したコマンド",
- "sharedNew": "新規…",
- "sharedShowAddress": "住所を表示",
- "sharedShowDetails": "詳細を見る",
- "sharedDisabled": "無効",
- "sharedMaintenance": "メンテナンス",
- "sharedDeviceAccumulators": "蓄電池",
- "sharedAlarms": "警報",
- "sharedLocation": "場所",
- "sharedImport": "インポート",
- "sharedColumns": "列",
- "sharedDropzoneText": "ファイルをドラッグ&ドロップするかクリック",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "シンプル",
- "calendarRecurrence": "再発",
- "calendarOnce": "一度",
- "calendarDaily": "日次",
- "calendarWeekly": "週次",
- "calendarMonthly": "月次",
- "calendarDays": "日",
- "calendarSunday": "日曜日",
- "calendarMonday": "月曜日",
- "calendarTuesday": "火曜日",
- "calendarWednesday": "水曜日",
- "calendarThursday": "木曜日",
- "calendarFriday": "金曜日",
- "calendarSaturday": "土曜日",
- "attributeShowGeofences": "ジオフェンスを表示",
- "attributeSpeedLimit": "速度制限",
- "attributeFuelDropThreshold": "燃料低下の閾値",
- "attributeFuelIncreaseThreshold": "燃料増加の閾値",
- "attributePolylineDistance": "経路距離",
- "attributeReportIgnoreOdometer": "レポート: 走行距離計を無視する",
- "attributeWebReportColor": "Web: レポートの色",
- "attributeDevicePassword": "デバイスパスワード",
- "attributeDeviceImage": "デバイスのイメージ",
- "attributeDeviceInactivityStart": "デバイス非アクティブ開始",
- "attributeDeviceInactivityPeriod": "デバイス非アクティブ期間",
- "attributeProcessingCopyAttributes": "処理中: 属性のコピー",
- "attributeColor": "色",
- "attributeWebLiveRouteLength": "Web: リアルタイム経路長",
- "attributeWebSelectZoom": "Web: 選択時にズーム",
- "attributeWebMaxZoom": "Web: 最大化",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover デバイス名",
- "attributeMailSmtpHost": "メール: SMTP ホスト",
- "attributeMailSmtpPort": "メール: SMTP ポート",
- "attributeMailSmtpStarttlsEnable": "メール: SMTP STARTTLS 有効",
- "attributeMailSmtpStarttlsRequired": "メール: SMTP STARTTLS 要求",
- "attributeMailSmtpSslEnable": "メール: SMTP SSL 有効",
- "attributeMailSmtpSslTrust": "メール: SMTP SSL 信頼",
- "attributeMailSmtpSslProtocols": "メール: SMTP SSL プロトコル",
- "attributeMailSmtpFrom": "メール: SMTP 元",
- "attributeMailSmtpAuth": "メール: SMTP 認証有効",
- "attributeMailSmtpUsername": "メール: SMTP ユーザー名",
- "attributeMailSmtpPassword": "メール: SMTP パスワード",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI:属性を無効にする",
- "attributeUiDisableGroups": "UI:グループを無効にする",
- "attributeUiDisableEvents": "UI: イベントを無効にする",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: ドライバーを無効にする",
- "attributeUiDisableComputedAttributes": "UI: 計算された属性を無効にする",
- "attributeUiDisableCalendars": "UI: カレンダーを無効にする",
- "attributeUiDisableMaintenance": "UI: メンテナンスを無効にする",
- "attributeUiHidePositionAttributes": "UI: 位置属性を非表示にする",
- "attributeUiDisableLoginLanguage": "UI:ログイン言語を無効にする",
- "attributeNotificationTokens": "通知トークン",
- "attributePopupInfo": "ポップアップ情報",
- "errorTitle": "エラー",
- "errorGeneral": "無効なパラメータまたは制約違反",
- "errorConnection": "接続エラー",
- "errorSocket": "Web ソケット接続エラー",
- "errorZero": "0にはできません。",
- "userEmail": "メール",
- "userPassword": "パスワード",
- "userAdmin": "管理者",
- "userRemember": "記憶する",
- "userExpirationTime": "有効期限",
- "userDeviceLimit": "デバイス制限",
- "userUserLimit": "ユーザー制限",
- "userDeviceReadonly": "デバイス読み取り専用",
- "userLimitCommands": "リミットコマンド",
- "userDisableReports": "レポートを無効にする",
- "userFixedEmail": "E-Mail変更は無し",
- "userToken": "トークン",
- "userDeleteAccount": "アカウントを削除",
- "userTemporary": "Temporary",
- "loginTitle": "ログイン",
- "loginLanguage": "言語",
- "loginReset": "パスワードをリセット",
- "loginRegister": "登録",
- "loginLogin": "ログイン",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "メールアドレスまたはパスワードが間違っています",
- "loginCreated": "新しいユーザーが登録されました",
- "loginResetSuccess": "メールを確認してください",
- "loginUpdateSuccess": "新しいパスワードが設定されました",
- "loginLogout": "ログアウト",
- "loginLogo": "ロゴ",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "デバイスと状態",
- "deviceSelected": "選択したデバイス",
- "deviceTitle": "デバイス",
- "devicePrimaryInfo": "デバイスのタイトル",
- "deviceSecondaryInfo": "デバイスの詳細",
- "deviceIdentifier": "ID",
- "deviceModel": "モデル",
- "deviceContact": "連絡先",
- "deviceCategory": "カテゴリー",
- "deviceLastUpdate": "最終更新",
- "deviceCommand": "コマンド",
- "deviceFollow": "デバイスを追跡",
- "deviceTotalDistance": "総距離",
- "deviceStatus": "ステータス",
- "deviceStatusOnline": "オンライン",
- "deviceStatusOffline": "オフライン",
- "deviceStatusUnknown": "不明",
- "deviceRegisterFirst": "最初のデバイスを登録",
- "deviceIdentifierHelp": "IMEI、シリアル番号あるいはその他のID。サーバーに接続するデバイスのIDに一致している必要があります。",
- "deviceShare": "Share Device",
- "groupDialog": "グループ",
- "groupParent": "グループ",
- "groupNoGroup": "グループなし",
- "settingsTitle": "設定",
- "settingsUser": "アカウント",
- "settingsGroups": "グループ",
- "settingsServer": "サーバー",
- "settingsUsers": "ユーザー",
- "settingsDistanceUnit": "距離の単位",
- "settingsAltitudeUnit": "高度の単位",
- "settingsSpeedUnit": "速度の単位",
- "settingsVolumeUnit": "容量の単位",
- "settingsTwelveHourFormat": "12 時間形式",
- "settingsCoordinateFormat": "座標形式",
- "settingsServerVersion": "サーバーのバージョン",
- "settingsAppVersion": "アプリのバージョン",
- "settingsConnection": "接続",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "レポート",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "デバイス",
- "reportGroup": "グループ",
- "reportFrom": "開始日時",
- "reportTo": "終了日時",
- "reportShow": "詳細",
- "reportClear": "クリア",
- "linkGoogleMaps": "Googleマップ",
- "linkAppleMaps": "Appleマップ",
- "linkStreetView": "Street View",
- "positionFixTime": "固定日時",
- "positionDeviceTime": "デバイスの時刻",
- "positionServerTime": "サーバーの時刻",
- "positionValid": "測位",
- "positionAccuracy": "正確な位置",
- "positionLatitude": "緯度",
- "positionLongitude": "経度",
- "positionAltitude": "高度",
- "positionSpeed": "速度",
- "positionCourse": "方角",
- "positionAddress": "場所",
- "positionProtocol": "プロトコル",
- "positionDistance": "距離",
- "positionRpm": "RPM",
- "positionFuel": "燃料",
- "positionPower": "電源",
- "positionBattery": "バッテリー",
- "positionRaw": "Raw",
- "positionIndex": "インデックス",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "衛星の位置",
- "positionSatVisible": "衛星の表示",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "ローミング",
- "positionEvent": "イベント",
- "positionAlarm": "警報",
- "positionStatus": "ステータス",
- "positionOdometer": "走行距離計",
- "positionServiceOdometer": "サービス走行距離計",
- "positionTripOdometer": "トリップ走行距離計",
- "positionHours": "時間",
- "positionSteps": "ステップ",
- "positionInput": "入力",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "出力",
- "positionBatteryLevel": "バッテリーレベル",
- "positionFuelConsumption": "燃料消費",
- "positionRfid": "RFID",
- "positionVersionFw": "ファームウェアバージョン",
- "positionVersionHw": "ハードウェアバージョン",
- "positionIgnition": "イグニッション",
- "positionFlags": "フラグ",
- "positionCharge": "充電",
- "positionIp": "IP",
- "positionArchive": "アーカイブ",
- "positionVin": "VIN",
- "positionApproximate": "近似",
- "positionThrottle": "スロットル",
- "positionMotion": "運動",
- "positionArmed": "強化",
- "positionAcceleration": "加速",
- "positionTemp": "温度",
- "positionDeviceTemp": "デバイス温度",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "運用",
- "positionCommand": "コマンド",
- "positionBlocked": "ブロック",
- "positionDtcs": "DTC",
- "positionObdSpeed": "OBD 速度",
- "positionObdOdometer": "OBD 走行距離計",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "ドライバー固有ID",
- "positionCard": "Card",
- "positionImage": "画像",
- "positionVideo": "ビデオ",
- "positionAudio": "音声",
- "serverTitle": "サーバー設定",
- "serverZoom": "拡大縮小",
- "serverRegistration": "新規ユーザー登録を許可",
- "serverReadonly": "読み取り専用",
- "serverForceSettings": "強制的に設定",
- "serverAnnouncement": "お知らせ",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "地図",
- "mapActive": "アクティブなマップ",
- "mapOverlay": "マップのオーバーレイ",
- "mapOverlayCustom": "カスタムオーバーレイ",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather APIキー",
- "mapOpenWeatherClouds": "OpenWeather 雲",
- "mapOpenWeatherPrecipitation": "OpenWeather 降水量",
- "mapOpenWeatherPressure": "OpenWeather 気圧",
- "mapOpenWeatherWind": "OpenWeather 風",
- "mapOpenWeatherTemperature": "OpenWeather 気温",
- "mapLayer": "使用する地図",
- "mapCustom": "カスタム (XYZ)",
- "mapCustomArcgis": "カスタム (ArcGIS)",
- "mapCustomLabel": "カスタム地図",
- "mapCarto": "Cartoベースマップ",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Map 道路",
- "mapGoogleHybrid": "Google Map ハイブリッド",
- "mapGoogleSatellite": "Google Map 人工衛星",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bingマップキー",
- "mapBingRoad": "Bingマップ",
- "mapBingAerial": "Bing航空写真マップ",
- "mapBingHybrid": "Bingハイブリッドマップ",
- "mapBaidu": "百度地図",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandexマップ",
- "mapYandexSat": "Yandex衛星写真マップ",
- "mapWikimedia": "ウィキメディア",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocatioIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "多角形",
- "mapShapeCircle": "円形",
- "mapShapePolyline": "折れ線形",
- "mapLiveRoutes": "リアルタイム経路",
- "mapDirection": "方向を表示",
- "mapCurrentLocation": "現在の位置",
- "mapPoiLayer": "POI レイヤー",
- "mapClustering": "マーカー クラスタリング",
- "mapOnSelect": "選択をマップで表示",
- "mapDefault": "デフォルトのマップ",
- "stateTitle": "詳細",
- "stateName": "属性",
- "stateValue": "値",
- "commandTitle": "コマンド",
- "commandSend": "送信",
- "commandSent": "コマンドを送信した。",
- "commandQueued": "コマンド実行待ち",
- "commandUnit": "単位",
- "commandCustom": "カスタムコマンド",
- "commandDeviceIdentification": "デバイス ID",
- "commandPositionSingle": "シングルレポート",
- "commandPositionPeriodic": "定期レポート",
- "commandPositionStop": "レポートを停止",
- "commandEngineStop": "エンジン停止",
- "commandEngineResume": "エンジン再始動",
- "commandAlarmArm": "警報開始",
- "commandAlarmDisarm": "警報解除",
- "commandAlarmDismiss": "警報を無視する",
- "commandSetTimezone": "タイムゾーンを設定",
- "commandRequestPhoto": "写真をリクエスト",
- "commandPowerOff": "デバイス電源 OFF",
- "commandRebootDevice": "デバイスを再起動",
- "commandFactoryReset": "工場出荷状態に戻す",
- "commandSendSms": "SMSを送信",
- "commandSendUssd": "USSDを送信",
- "commandSosNumber": "SOS送信先電話番号",
- "commandSilenceTime": "通知OFF時間帯",
- "commandSetPhonebook": "電話帳設定",
- "commandVoiceMessage": "音声メッセージ",
- "commandOutputControl": "コマンド出力制御",
- "commandVoiceMonitoring": "音声モニタ",
- "commandSetAgps": "AGPS を設定",
- "commandSetIndicator": "通知設定",
- "commandConfiguration": "設定",
- "commandGetVersion": "バージョンを取得",
- "commandFirmwareUpdate": "ファームウェアを更新",
- "commandSetConnection": "接続を設定",
- "commandSetOdometer": "走行距離計を設定",
- "commandGetModemStatus": "モデムのステータスを取得",
- "commandGetDeviceStatus": "デバイスのステータスを取得",
- "commandSetSpeedLimit": "速度制限を設定",
- "commandModePowerSaving": "省電力モード",
- "commandModeDeepSleep": "ディープスリープモード",
- "commandAlarmGeofence": "ジオフェンス警報を設定",
- "commandAlarmBattery": "バッテリー警報を設定",
- "commandAlarmSos": "SOS警報を設定",
- "commandAlarmRemove": "取り外し警報を設定",
- "commandAlarmClock": "時計警報を設定",
- "commandAlarmSpeed": "速度警報を設定",
- "commandAlarmFall": "落下警報を設定",
- "commandAlarmVibration": "振動警報を設定",
- "commandFrequency": "周期",
- "commandTimezone": "世界標準時との時差",
- "commandMessage": "メッセージ",
- "commandRadius": "Radius",
- "commandEnable": "有効",
- "commandData": "データー",
- "commandIndex": "コマンド一覧",
- "commandPhone": "電話番号",
- "commandServer": "サーバー",
- "commandPort": "ポート",
- "eventAll": "全てのイベント",
- "eventDeviceOnline": "オンライン状態",
- "eventDeviceUnknown": "状態不明",
- "eventDeviceOffline": "オフライン状態",
- "eventDeviceInactive": "デバイス非アクティブ",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "デバイス移動中",
- "eventDeviceStopped": "デバイス停止中",
- "eventDeviceOverspeed": "速度制限を超過",
- "eventDeviceFuelDrop": "燃料残量低下",
- "eventDeviceFuelIncrease": "燃料増加",
- "eventCommandResult": "コマンドの実行結果",
- "eventGeofenceEnter": "ジオフェンスに進入しました。",
- "eventGeofenceExit": "ジオフェンスから退出しました。",
- "eventAlarm": "警報",
- "eventIgnitionOn": "イグニッション ON",
- "eventIgnitionOff": "イグニッション OFF",
- "eventMaintenance": "メンテナンスが必要です。",
- "eventTextMessage": "テキストメッセージを受信しました。",
- "eventDriverChanged": "ドライバーが交代しました。",
- "eventMedia": "メディア",
- "eventsScrollToLast": "最後にスクロール",
- "eventsSoundEvents": "警報イベント",
- "eventsSoundAlarms": "警報音",
- "alarmGeneral": "全般",
- "alarmSos": "SOS",
- "alarmVibration": "振動",
- "alarmMovement": "移動",
- "alarmLowspeed": "低速",
- "alarmOverspeed": "速度超過",
- "alarmFallDown": "転倒",
- "alarmLowPower": "電力低下",
- "alarmLowBattery": "バッテリー残量低下",
- "alarmFault": "測位失敗",
- "alarmPowerOff": "電源 OFF",
- "alarmPowerOn": "電源 ON",
- "alarmDoor": "ドア",
- "alarmLock": "ロック",
- "alarmUnlock": "ロック解除",
- "alarmGeofence": "ジオフェンス",
- "alarmGeofenceEnter": "ジオフェンスに進入",
- "alarmGeofenceExit": "ジオフェンスから退出",
- "alarmGpsAntennaCut": "GPSアンテナ切断",
- "alarmAccident": "事故",
- "alarmTow": "牽引",
- "alarmIdle": "アイドリング",
- "alarmHighRpm": "高 RPM",
- "alarmHardAcceleration": "急加速",
- "alarmHardBraking": "急ブレーキ",
- "alarmHardCornering": "急転回",
- "alarmLaneChange": "車線変更",
- "alarmFatigueDriving": "過労運転",
- "alarmPowerCut": "電源カット",
- "alarmPowerRestored": "電源が復旧した。",
- "alarmJamming": "ジャミング",
- "alarmTemperature": "温度",
- "alarmParking": "駐車",
- "alarmBonnet": "ボンネット",
- "alarmFootBrake": "フットブレーキ",
- "alarmFuelLeak": "燃料漏れ",
- "alarmTampering": "窃盗",
- "alarmRemoving": "取り外し",
- "notificationType": "通知の種別",
- "notificationAlways": "すべてのデバイス",
- "notificationNotificators": "チャンネル",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "メール",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "再生",
- "reportCombined": "Combined",
- "reportRoute": "移動経路",
- "reportEvents": "イベント",
- "reportTrips": "走行距離",
- "reportStops": "停止",
- "reportSummary": "概要",
- "reportDaily": "日次サマリー",
- "reportChart": "グラフ",
- "reportConfigure": "設定",
- "reportEventTypes": "イベント種別",
- "reportChartType": "表示するグラフ",
- "reportShowMarkers": "マーカーを表示",
- "reportExport": "エクスポート",
- "reportEmail": "Eメールレポート",
- "reportSchedule": "Schedule",
- "reportPeriod": "期間",
- "reportCustom": "カスタム",
- "reportToday": "今日",
- "reportYesterday": "昨日",
- "reportThisWeek": "今週",
- "reportPreviousWeek": "先週",
- "reportThisMonth": "今月",
- "reportPreviousMonth": "先月",
- "reportDeviceName": "デバイス名",
- "reportAverageSpeed": "平均速度",
- "reportMaximumSpeed": "最高速度",
- "reportEngineHours": "エンジン稼働時間",
- "reportDuration": "期間",
- "reportStartDate": "開始日",
- "reportStartTime": "開始日時",
- "reportStartAddress": "出発地",
- "reportEndTime": "終了日時",
- "reportEndAddress": "到着地",
- "reportSpentFuel": "燃料消費量",
- "reportStartOdometer": "走行距離計開始",
- "reportEndOdometer": "走行距離計終了",
- "statisticsTitle": "統計",
- "statisticsCaptureTime": "位置補足時間",
- "statisticsActiveUsers": "稼働中ユーザー",
- "statisticsActiveDevices": "稼働中デバイス",
- "statisticsRequests": "リクエスト",
- "statisticsMessagesReceived": "受信したメッセージ",
- "statisticsMessagesStored": "保存したメッセージ",
- "statisticsGeocoder": "ジオコーダーリクエスト",
- "statisticsGeolocation": "ジオロケーションリクエスト",
- "categoryArrow": "矢印",
- "categoryDefault": "未指定",
- "categoryAnimal": "動物",
- "categoryBicycle": "自転車",
- "categoryBoat": "ボート",
- "categoryBus": "バス",
- "categoryCar": "乗用車",
- "categoryCamper": "Camper",
- "categoryCrane": "クレーン",
- "categoryHelicopter": "ヘリコプター",
- "categoryMotorcycle": "オートバイ",
- "categoryOffroad": "オフロード",
- "categoryPerson": "個人",
- "categoryPickup": "ピックアップ",
- "categoryPlane": "航空機",
- "categoryShip": "船舶",
- "categoryTractor": "トラクター",
- "categoryTrain": "鉄道",
- "categoryTram": "トラム",
- "categoryTrolleybus": "トロリーバス",
- "categoryTruck": "トラック",
- "categoryVan": "バン",
- "categoryScooter": "スクーター",
- "maintenanceStart": "メンテナンス開始",
- "maintenancePeriod": "メンテナンス終了"
-} \ No newline at end of file
diff --git a/web/l10n/ka.json b/web/l10n/ka.json
deleted file mode 100644
index 5a6b4cb2..00000000
--- a/web/l10n/ka.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "იტვირთება...",
- "sharedHide": "დამალვა",
- "sharedSave": "შენახვა",
- "sharedUpload": "Upload",
- "sharedSet": "დაყენება",
- "sharedCancel": "უარყოფა",
- "sharedCopy": "Copy",
- "sharedAdd": "დამატება",
- "sharedEdit": "შეცვლა",
- "sharedRemove": "წაშლა",
- "sharedRemoveConfirm": "გსურთ წაშლა ?",
- "sharedNoData": "Მონაცემები არ არის",
- "sharedSubject": "Subject",
- "sharedYes": "დიახ",
- "sharedNo": "არა",
- "sharedKm": "კმ",
- "sharedMi": "მლ",
- "sharedNmi": "nmi",
- "sharedMeters": "მ",
- "sharedFeet": "ფუტი",
- "sharedKn": "kn",
- "sharedKmh": "კმ/სთ",
- "sharedMph": "მლ/სთ",
- "sharedHour": "საათი",
- "sharedMinute": "წუთი",
- "sharedSecond": "წამი",
- "sharedDays": "დღეები",
- "sharedHours": "საათები",
- "sharedMinutes": "წუთები",
- "sharedDecimalDegrees": "ათობითი გრადუსი",
- "sharedDegreesDecimalMinutes": "გრადუსი ათეული წუთები",
- "sharedDegreesMinutesSeconds": "გრადუსი ათეული წამები",
- "sharedName": "დასახელება",
- "sharedDescription": "აღწერილობა",
- "sharedSearch": "ძებნა",
- "sharedIconScale": "იკონკის მასშტაბი",
- "sharedGeofence": "გეოზონა",
- "sharedGeofences": "გეოზონები",
- "sharedCreateGeofence": "შექმენით Geofence",
- "sharedNotifications": "შეტყობინებები",
- "sharedNotification": "შეტყობინება",
- "sharedAttributes": "ატრიბუტები",
- "sharedAttribute": "ატრიბუტი",
- "sharedDrivers": "მძღოლები",
- "sharedDriver": "მძროლი",
- "sharedArea": "ფართობი",
- "sharedSound": "შეტყობინების Sound",
- "sharedType": "ტიპი",
- "sharedDistance": "დისტანცია",
- "sharedHourAbbreviation": "ს",
- "sharedMinuteAbbreviation": "ჭ",
- "sharedSecondAbbreviation": "წ",
- "sharedVoltAbbreviation": "ვ",
- "sharedLiterAbbreviation": "ლ",
- "sharedGallonAbbreviation": "გალონი",
- "sharedLiter": "ლიტრი",
- "sharedImpGallon": "ინგლისური გალონი",
- "sharedUsGallon": "ამერიკული გალონი",
- "sharedLiterPerHourAbbreviation": "ლ/სთ",
- "sharedGetMapState": "რუკის მდგომარეობა",
- "sharedComputedAttribute": "გამოთვილითი ატრიბუტი",
- "sharedComputedAttributes": "გამოთვილითი ატრიბუტები",
- "sharedCheckComputedAttribute": "შეამოწმეთ გამოთვილითი ატრიბუტი",
- "sharedExpression": "გამოსახულება",
- "sharedDevice": "ოწყობილობა",
- "sharedTest": "ტესტი",
- "sharedTestNotification": "სატესტო შეტყობინების გაგზავნა",
- "sharedTestNotificators": "სატესტო არხი",
- "sharedTestExpression": "სატესტო გამოხატულება",
- "sharedCalendar": "კალენდარი",
- "sharedCalendars": "კალენდრები",
- "sharedFile": "ფაილი",
- "sharedSearchDevices": "მოწყობილობების ძებნა",
- "sharedSortBy": "დალაგება",
- "sharedFilterMap": "რუკაზე გაფილტვრა ",
- "sharedSelectFile": "აირჩიე ფაილი",
- "sharedPhone": "ტელეფონი",
- "sharedRequired": "სავალდებულოა",
- "sharedPreferences": "პრეფერენციები",
- "sharedPermissions": "უფლებები",
- "sharedConnections": "კავშირები",
- "sharedExtra": "დამატებითი",
- "sharedPrimary": "პირველადი",
- "sharedSecondary": "მეორადი",
- "sharedTypeString": "სტრიქონი",
- "sharedTypeNumber": "ნომერი",
- "sharedTypeBoolean": "ლოგიკური",
- "sharedTimezone": "დროის სარტყელი",
- "sharedInfoTitle": "ინფორმაცია",
- "sharedSavedCommand": "შენახული ბრძანებება",
- "sharedSavedCommands": "შენახული ბრძანებები",
- "sharedNew": "ახალი…",
- "sharedShowAddress": "მისამართის ჩვენება",
- "sharedShowDetails": "უფრო ვრცლად",
- "sharedDisabled": "გამორთულია",
- "sharedMaintenance": "მომსახურება",
- "sharedDeviceAccumulators": "აკუმულატორები",
- "sharedAlarms": "სიგნალიზაცია",
- "sharedLocation": "ლოკაცია",
- "sharedImport": "იმპორტი",
- "sharedColumns": "სვეტი",
- "sharedDropzoneText": "გადმოათრიეთ ფაილი აქ ან დააწკაპუნეთ",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "მარტივი",
- "calendarRecurrence": "რეციდივი",
- "calendarOnce": "ერთხელ",
- "calendarDaily": "ყოველდღიური",
- "calendarWeekly": "ყოველკვირეული",
- "calendarMonthly": "ყოველთვიური",
- "calendarDays": "Days",
- "calendarSunday": "კვირა",
- "calendarMonday": "ორშაბათი",
- "calendarTuesday": "სამშაბათი",
- "calendarWednesday": "თხშაბათი",
- "calendarThursday": "ხუთშაბათი",
- "calendarFriday": "პარასკევი",
- "calendarSaturday": "შაბათი",
- "attributeShowGeofences": "Geofences-ს ჩვენება",
- "attributeSpeedLimit": "სიჩქარის ლიმიტი",
- "attributeFuelDropThreshold": "საწვავის ვარდნის ბარიერი",
- "attributeFuelIncreaseThreshold": "საწვავის გაზრდის ბარიერი",
- "attributePolylineDistance": "ტეხილის მანძილი",
- "attributeReportIgnoreOdometer": "Report: ოდომეტრობის იგნორირება",
- "attributeWebReportColor": "Web: რეპორტის ფერი",
- "attributeDevicePassword": "მოწყობილობის პაროლი",
- "attributeDeviceImage": "მოწყობილობის სურათი",
- "attributeDeviceInactivityStart": "მოწყობილობის უმოქმედობის დაწყება",
- "attributeDeviceInactivityPeriod": "მოწყობილობის უმოქმედობის პერიოდი",
- "attributeProcessingCopyAttributes": "დამუშავება: ატრიბუტების კოპირება",
- "attributeColor": "ფერი",
- "attributeWebLiveRouteLength": "Web: ცოცხალი მარშრუტის სიგრძე",
- "attributeWebSelectZoom": "Web: მასშტაბის არჩევა",
- "attributeWebMaxZoom": "Web: მაქსიმალური ზუმი",
- "attributeTelegramChatId": "Telegram ჩატის ID",
- "attributePushoverUserKey": "Pushover-ის მომხმარებლის გასაღები",
- "attributePushoverDeviceNames": "Pushover-ის მოწყობილობის სახელები",
- "attributeMailSmtpHost": "Mail: SMTP ჰოსტი",
- "attributeMailSmtpPort": "Mail: SMTP პორტი",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS ჩართვა",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS სავალდებულოა",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL ჩართვა",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL ნდობა",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL პროტოკოლი",
- "attributeMailSmtpFrom": "Mail: SMTP საიდან",
- "attributeMailSmtpAuth": "Mail: SMTP აუტენტიფიკაციის ჩართვა",
- "attributeMailSmtpUsername": "Mail: SMTP სახელი",
- "attributeMailSmtpPassword": "Mail: SMTP პაროლი",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "მომსხმარებლის ინტერფეისი: გამორთეთ ატრიბუტები",
- "attributeUiDisableGroups": "მომსხმარებლის ინტერფეისი: ჯგუფების გამორთვა",
- "attributeUiDisableEvents": "UI: მოვლენების გამორთვა",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: მძღოლების გამორთვა",
- "attributeUiDisableComputedAttributes": "UI: გამოთვლითი ატრიბუტების გამორთვა",
- "attributeUiDisableCalendars": "UI: კალენდრის გამორთვა",
- "attributeUiDisableMaintenance": "UI: ტექნიკური მომსახურება გამორთვა",
- "attributeUiHidePositionAttributes": "UI: პოზიციის ატრიბუტების დამალვა",
- "attributeUiDisableLoginLanguage": "მომსხმარებლის ინტერფეისი: გამორთეთ შესვლის ენა",
- "attributeNotificationTokens": "შეტყობინების ნიშნები",
- "attributePopupInfo": "ამომხტარი ინფორმაცია",
- "errorTitle": "შეცდომა",
- "errorGeneral": "პარამეტრების ან შეზღუდვების არასწორი დარღვევა",
- "errorConnection": "კავშირის შეცდომა",
- "errorSocket": "ვებგვერდის კავშირის შეცდომა",
- "errorZero": "არ შეიძლება იყოს ნული",
- "userEmail": "ელ-ფოსტა",
- "userPassword": "პაროლი",
- "userAdmin": "ადმინი",
- "userRemember": "დამიმახსოვრე",
- "userExpirationTime": "ვადის გასვლა",
- "userDeviceLimit": "მოწყობილობის ლიმიტი",
- "userUserLimit": "მომხმარებლის ლიმიტი",
- "userDeviceReadonly": "მოწყობილობა მხოლოდ წაკითხვით",
- "userLimitCommands": "შეზღუდული ბრძანებები",
- "userDisableReports": "რეპორტების გამორთვა",
- "userFixedEmail": "ელფოსტა არ იცვლება",
- "userToken": "ტოკენი",
- "userDeleteAccount": "Ანგარიშის წაშლა",
- "userTemporary": "Temporary",
- "loginTitle": "ავტორიზაცია",
- "loginLanguage": "ენა",
- "loginReset": "პაროლის განულება",
- "loginRegister": "რეგისტრაცია",
- "loginLogin": "შესვლა",
- "loginOpenId": "შედით OpenID-ით",
- "loginFailed": "არასწორი ელ-ფოსტა ან პაროლი",
- "loginCreated": "ახალი მომხარებელი დარეგისტრირდა",
- "loginResetSuccess": "შეამოწმეთ თქვენი ელექტორნული ფოსტა",
- "loginUpdateSuccess": "ახალი პაროლი დაყენებულია",
- "loginLogout": "გამოსვლა",
- "loginLogo": "ლოგო",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "მოწყობილობები და სტატუსი",
- "deviceSelected": "არჩეული მოწყობილობები",
- "deviceTitle": "მოწყობილობები",
- "devicePrimaryInfo": "მოწყობილობის დასახელება",
- "deviceSecondaryInfo": "მოწყობილობის დეტალები",
- "deviceIdentifier": "იდენტიფიკატორი",
- "deviceModel": "მოდელი",
- "deviceContact": "კონტაქტი",
- "deviceCategory": "კატეგორია",
- "deviceLastUpdate": "ბოლო განახლება",
- "deviceCommand": "ბრძანება",
- "deviceFollow": "გაყოლა",
- "deviceTotalDistance": "მთლიანი მანძილი",
- "deviceStatus": "სტატუსი",
- "deviceStatusOnline": "ონლაინ რეჟიმი",
- "deviceStatusOffline": "ოფლაინ რეჟიმი",
- "deviceStatusUnknown": "უცნობი",
- "deviceRegisterFirst": "დაარეგისტრირეთ თქვენი პირველი მოწყობილობა",
- "deviceIdentifierHelp": "IMEI, ან სხვა იდენტიფიკატორი. ის უნდა ემთხვეოდეს იდენტიფიკატორს რომელსაც მოწყობილბა უგზავნის სერვერს",
- "deviceShare": "Share Device",
- "groupDialog": "ჯგუფი",
- "groupParent": "ჯგუფი",
- "groupNoGroup": "ჯგუფის გარეშე",
- "settingsTitle": "პარამეტრები",
- "settingsUser": "პროფილი",
- "settingsGroups": "ჯგუფები",
- "settingsServer": "სერვერი",
- "settingsUsers": "მომხამრებლები",
- "settingsDistanceUnit": "მანძილის ერთეული",
- "settingsAltitudeUnit": "სიმაღლის ერთეული",
- "settingsSpeedUnit": "სიჩქარის ერთეული",
- "settingsVolumeUnit": "მოცულობის ერთეული",
- "settingsTwelveHourFormat": "12-საათიანი ფორმატი",
- "settingsCoordinateFormat": "კოორდინატების ფორმატი",
- "settingsServerVersion": "სერვერის ვერსია",
- "settingsAppVersion": "აპლიკაციის ვერსია",
- "settingsConnection": "კავშირი",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "რეპორტები",
- "reportScheduled": "დაგეგმილი რეპორტები",
- "reportDevice": "მოწყობილობა",
- "reportGroup": "ჯგუფი",
- "reportFrom": "დან",
- "reportTo": "მდე",
- "reportShow": "ჩვენება",
- "reportClear": "გასუფთავება",
- "linkGoogleMaps": "Google რუკა",
- "linkAppleMaps": "Apple რუკა",
- "linkStreetView": "ქუჩების დათვალიერება",
- "positionFixTime": "დროის გასწორება",
- "positionDeviceTime": "მოწყობილობის დრო",
- "positionServerTime": "სერვერის დრო",
- "positionValid": "ვარგისი",
- "positionAccuracy": "სიზუსტე",
- "positionLatitude": "განედი",
- "positionLongitude": "გრძედი",
- "positionAltitude": "სიმაღლე",
- "positionSpeed": "სიჩქარე",
- "positionCourse": "კურსი",
- "positionAddress": "მისამართი",
- "positionProtocol": "პროტოკოლი",
- "positionDistance": "დისტანცია",
- "positionRpm": "ბრუნი წუთში",
- "positionFuel": "საწვავი",
- "positionPower": "სიმძლავრე",
- "positionBattery": "აკუმულატორი",
- "positionRaw": "Raw",
- "positionIndex": "ინდექსი",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "თანამგზავრები",
- "positionSatVisible": "ხილული თანამგზავრები",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "როუმინგი",
- "positionEvent": "მოვლენა",
- "positionAlarm": "სიგნალიზაცია",
- "positionStatus": "სტატუსი",
- "positionOdometer": "ოდომეტრი",
- "positionServiceOdometer": "ოდომეტრის სერვისი",
- "positionTripOdometer": "მოგზაურობის ოდომეტრი",
- "positionHours": "საათები",
- "positionSteps": "ნაბიჯები",
- "positionInput": "შემავალი",
- "positionHeartRate": "Პულსი",
- "positionOutput": "გამავალი",
- "positionBatteryLevel": "აკუმულატორის დონე",
- "positionFuelConsumption": "საწვავის მოხმარება",
- "positionRfid": "RFID",
- "positionVersionFw": "მიკროპროგრამის ვერსია",
- "positionVersionHw": "მოწყობილობის ვერსია",
- "positionIgnition": "ავტ. ანთების კლიტე",
- "positionFlags": "მონიშვნა",
- "positionCharge": "დამუხტვა",
- "positionIp": "IP",
- "positionArchive": "არქივი",
- "positionVin": "VIN",
- "positionApproximate": "მიახლოებითი",
- "positionThrottle": "დროსელი",
- "positionMotion": "მოძრაობა",
- "positionArmed": "დაცული",
- "positionAcceleration": "აჩქარება",
- "positionTemp": "ტემპერატურა",
- "positionDeviceTemp": "მოწყობილობის ტემპერატურა",
- "positionCoolantTemp": "გამაგრილებლის ტემპერატურა",
- "positionOperator": "ორიენტაცია",
- "positionCommand": "ბრძანება",
- "positionBlocked": "დაბლოკილია",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD სიჩქარე",
- "positionObdOdometer": "OBD ოდომეტრი",
- "positionDrivingTime": "მართვის დრო",
- "positionDriverUniqueId": "მძღოლის უნიკალური N",
- "positionCard": "ბარათი",
- "positionImage": "სურათი",
- "positionVideo": "ვიდეო",
- "positionAudio": "აუდიო",
- "serverTitle": "სერვერის პარამეტრები",
- "serverZoom": "ზუმი",
- "serverRegistration": "რეგისტრაცია",
- "serverReadonly": "მხოლოდ ნახვის",
- "serverForceSettings": "იძულებითი პარამეტრები",
- "serverAnnouncement": "განცხადება",
- "serverName": "სერვერის სახელი",
- "serverDescription": "სერვერის აღწერილობა",
- "serverColorPrimary": "პიველადი ფერი",
- "serverColorSecondary": "მეორადი ფერი",
- "serverLogo": "ლოგოს სურათი",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "რუკა",
- "mapActive": "აქტიური რუკა",
- "mapOverlay": "რუკის დაფარვა",
- "mapOverlayCustom": "მორგებული გადაფარვა",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API გასაღები",
- "mapOpenWeatherClouds": "OpenWeather ღრუბლები",
- "mapOpenWeatherPrecipitation": "OpenWeather ნალექები",
- "mapOpenWeatherPressure": "OpenWeather წნევა",
- "mapOpenWeatherWind": "OpenWeather ქარი",
- "mapOpenWeatherTemperature": "OpenWeather ტემპერატურა",
- "mapLayer": "რუკის ფენა",
- "mapCustom": "მორგებული (XYZ)",
- "mapCustomArcgis": "მორგებული (ArcGIS)",
- "mapCustomLabel": "მორგებული რუკა",
- "mapCarto": "Carto ძირითადი რუკა",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google გზები",
- "mapGoogleHybrid": "Google ჰიბრიდული",
- "mapGoogleSatellite": "Google სატელიტი",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps გასაღები",
- "mapBingRoad": "Bing Maps გზები",
- "mapBingAerial": "Bing Maps საჰაერო",
- "mapBingHybrid": "Bing Maps ჰიბრიდული",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex რუკა",
- "mapYandexSat": "Yandex თანამგზავრული",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "კარტოგრაფიული განყოფილება",
- "mapMapboxStreets": "Mapbox ქუჩები",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox ღია ცის ქვეშ",
- "mapMapboxSatellite": "Mapbox სატელიტი",
- "mapMapboxKey": "Mapbox-ის წვდომის ჟეტონი",
- "mapMapTilerBasic": "MapTiler ძირითადი",
- "mapMapTilerHybrid": "MapTiler ჰიბრიდული",
- "mapMapTilerKey": "MapTiler API გასაღები",
- "mapLocationIqStreets": "LocationIQ ქუჩები",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ წვდომის ჟეტონი",
- "mapTomTomBasic": "TomTom ძირითადი",
- "mapTomTomFlow": "TomTom Სატრანსპორტო ნაკადი",
- "mapTomTomIncidents": "TomTom საგზაო ინციდენტები",
- "mapTomTomKey": "TomTom API გასაღები",
- "mapHereBasic": "Here Basic ძირითადი",
- "mapHereHybrid": "Here ჰიბრიდი",
- "mapHereSatellite": "Here სატელიტი",
- "mapHereFlow": "Here Სატრანსპორტო ნაკადი",
- "mapHereKey": "Here API გასაღები",
- "mapShapePolygon": "მრავალკუთხედი",
- "mapShapeCircle": "წრე",
- "mapShapePolyline": "ტეხილი ხაზები",
- "mapLiveRoutes": "ცოცხალი მარშრუტები",
- "mapDirection": "მიმართულების ჩვენება",
- "mapCurrentLocation": "ახლანდელი ადგილსამყოფელი",
- "mapPoiLayer": "POI ფენა",
- "mapClustering": "მარკერების კლასტერირება",
- "mapOnSelect": "რუკის ჩვენება არჩევის დროს",
- "mapDefault": "ნაგულისხმევი რუკა",
- "stateTitle": "სტატუსი",
- "stateName": "ატრიბუტი",
- "stateValue": "მნიშვნელობა",
- "commandTitle": "ბრძანება",
- "commandSend": "გაგზავნა",
- "commandSent": "ბრძანება გაიგზავნილია",
- "commandQueued": "ბრძანება რიგშია",
- "commandUnit": "ერთეული",
- "commandCustom": "მორგებული ბრძანება",
- "commandDeviceIdentification": "მოწყობილობის იდენტიფიკაცია",
- "commandPositionSingle": "ერთჯერადი რეპორტი",
- "commandPositionPeriodic": "პერიოდული რეპორტი",
- "commandPositionStop": "რეპორტის შეჩერება",
- "commandEngineStop": "ძრავის გამორთვა",
- "commandEngineResume": "ძრავის ჩართვა",
- "commandAlarmArm": "Arm სიგნალიზაცია",
- "commandAlarmDisarm": "სიგნალიზაციის გამორთვა",
- "commandAlarmDismiss": "სიგნალიზაციის გათავისუფლება",
- "commandSetTimezone": "დროის სარტყელის დაყენება",
- "commandRequestPhoto": "ფოტოს მოთხოვნა",
- "commandPowerOff": "მოწყობილობის გამორთვა",
- "commandRebootDevice": "მოწყობილობის გადატვირთვა",
- "commandFactoryReset": "ქარხნულ პარამეტრებზე დაბრუნება",
- "commandSendSms": "SMS გაგზავნა",
- "commandSendUssd": "USSD გაგზავნა",
- "commandSosNumber": "SOS ნომრის დაყენება",
- "commandSilenceTime": "დუმილის დროის დაყენება",
- "commandSetPhonebook": "სატელეფონო წიგნაკის დაყენება",
- "commandVoiceMessage": "ხმოვანი შეტყობინება",
- "commandOutputControl": "გამსლელის კონტროლი",
- "commandVoiceMonitoring": "ხმოვანი მონიტორინგი",
- "commandSetAgps": "AGPS-ის დაყენება",
- "commandSetIndicator": "ინდიკატორის დაყენება",
- "commandConfiguration": "კონფიგურაცია",
- "commandGetVersion": "ვერსიის მიღება",
- "commandFirmwareUpdate": "მიკროპროგრამის განახლება",
- "commandSetConnection": "კავშირის დაყენება",
- "commandSetOdometer": "ოდომეტრის დაყენება",
- "commandGetModemStatus": "მოდემის სტატუსი",
- "commandGetDeviceStatus": "მოწყობილობის სტატუსი",
- "commandSetSpeedLimit": "სიჩქარის ლიმიტის დაყენება",
- "commandModePowerSaving": "ენერგიის დაზოგვის რეჟიმი",
- "commandModeDeepSleep": "ღრმა ძილის რეჟიმი",
- "commandAlarmGeofence": "დააყენეთ Geofence სიგნალიზაცია",
- "commandAlarmBattery": "დააყენეთ ბატარეის სიგნალიზაცია",
- "commandAlarmSos": "დააყენეთ SOS სიგნალიზაცია",
- "commandAlarmRemove": "დააყენეთ მოხსნის სიგნალიზაცია",
- "commandAlarmClock": "საათის მაღვიძარას დაყენება",
- "commandAlarmSpeed": "დააყენეთ სიჩქარის სიგნალიზაცია",
- "commandAlarmFall": "დააყენეთ დაცემის სიგნალიზაცია",
- "commandAlarmVibration": "დააყენეთ ვიბრაციის სიგნალიზაცია",
- "commandFrequency": "სიხშირე",
- "commandTimezone": "დროის სარტყელი ბიჯი",
- "commandMessage": "შეტყობინება",
- "commandRadius": "რადიუსი",
- "commandEnable": "ჩართვა",
- "commandData": "თარიღი",
- "commandIndex": "ინდექსი",
- "commandPhone": "ტელეფონის N",
- "commandServer": "სერვერი",
- "commandPort": "პორტი",
- "eventAll": "ყველა მოვლენა",
- "eventDeviceOnline": "ონლაინ სტატუსი",
- "eventDeviceUnknown": "უცნობი სტატუსი",
- "eventDeviceOffline": "ოფლაინ სტატუსი",
- "eventDeviceInactive": "მოწყობილობა არააქტიურია",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "მოწყობილობა მოძრაობს",
- "eventDeviceStopped": "მოწყობილობა გაჩერებულია",
- "eventDeviceOverspeed": "სიჩქარის ლიმიტი გადაჭარბებულია",
- "eventDeviceFuelDrop": "საწვავის დაქცევა",
- "eventDeviceFuelIncrease": "საწვავის მატება",
- "eventCommandResult": "ბრძანების შედეგი",
- "eventGeofenceEnter": "გეოზონა დაყენებულია",
- "eventGeofenceExit": "გეოზონა გამორთულია",
- "eventAlarm": "სიგნალიზაცია",
- "eventIgnitionOn": "ავტ. ანთაება ჩართულია",
- "eventIgnitionOff": "ავტ. ანთაება გამორთულია",
- "eventMaintenance": "საჭიროა ტექნიკური სამუშაოების ჩატარება",
- "eventTextMessage": "მიღებულია ტექსტური შეტყობინება",
- "eventDriverChanged": "მძღოლის ცვლილება",
- "eventMedia": "მედია",
- "eventsScrollToLast": "გადაახვიეთ ბოლომდე",
- "eventsSoundEvents": "ხმოვანი მოვლენები",
- "eventsSoundAlarms": "ხმოვანი სიგნალიზაცია",
- "alarmGeneral": "საერთო",
- "alarmSos": "SOS",
- "alarmVibration": "ვიბრაცია",
- "alarmMovement": "მოძრაობა",
- "alarmLowspeed": "დაბალი სიჩქარე",
- "alarmOverspeed": "სიჩქარის გადაჭარბება",
- "alarmFallDown": "დაცემა",
- "alarmLowPower": "დაბალი სიმძლავრე",
- "alarmLowBattery": "Დამჯდარი ელემენტი",
- "alarmFault": "გაუმართავობა",
- "alarmPowerOff": "Გამორთულია",
- "alarmPowerOn": "ჩართულია",
- "alarmDoor": "კარები",
- "alarmLock": "დაკეტილია",
- "alarmUnlock": "გაღებულია",
- "alarmGeofence": "გეოზონა",
- "alarmGeofenceEnter": "გეოზონში შესვლა",
- "alarmGeofenceExit": "გეოზონიდან გამოსვლა",
- "alarmGpsAntennaCut": "GPS ანტენის კონფიგურაცია",
- "alarmAccident": "ინციდენტი",
- "alarmTow": "ბუქსირი",
- "alarmIdle": "უქმი სვლის რეჟიმი",
- "alarmHighRpm": "მაღალი RPM",
- "alarmHardAcceleration": "მძიმე აჩქარება",
- "alarmHardBraking": "მყარი დამუხრუჭება",
- "alarmHardCornering": "მყარი მოხვევა",
- "alarmLaneChange": "მოძრაობის ზოლის ცვლილება",
- "alarmFatigueDriving": "დაღლილობის მართვა",
- "alarmPowerCut": "კვების გამორთვა",
- "alarmPowerRestored": "კვება აღდგენილია",
- "alarmJamming": "ჭექითი ცვეთა",
- "alarmTemperature": "ტემპერატურა",
- "alarmParking": "პარკინგი",
- "alarmBonnet": "კაპოტი",
- "alarmFootBrake": "ფეხის მუხრუჭი",
- "alarmFuelLeak": "საწვავის გაჟონვა",
- "alarmTampering": "ჩარევა",
- "alarmRemoving": "ამოღება",
- "notificationType": "შეტყობინების ტიპი",
- "notificationAlways": "ყველა მოწყობილობა",
- "notificationNotificators": "არხები",
- "notificatorCommand": "ბრძანება",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "გამეორება",
- "reportCombined": "კომბინირებული",
- "reportRoute": "მარშრუტი",
- "reportEvents": "მოვლენები",
- "reportTrips": "მოგზაურობები",
- "reportStops": "გაჩერებები",
- "reportSummary": "შემაჯამებელი",
- "reportDaily": "ყოველდღიური ჯამი",
- "reportChart": "დიაგრამა",
- "reportConfigure": "კონფიგურაცია",
- "reportEventTypes": "მოვლენის ტიპი",
- "reportChartType": "დიაგრამის ტიპი",
- "reportShowMarkers": "მარკერების ჩვენება",
- "reportExport": "ექსპორტი",
- "reportEmail": "რეპორტი მეილზე",
- "reportSchedule": "განრიგი",
- "reportPeriod": "პერიოდი",
- "reportCustom": "ხელოვნური",
- "reportToday": "დღეს",
- "reportYesterday": "გუშინ",
- "reportThisWeek": "ეს კვირა",
- "reportPreviousWeek": "წინა კვირა",
- "reportThisMonth": "ეს თვე",
- "reportPreviousMonth": "წინა თვე",
- "reportDeviceName": "მოწყობილობსი სახელი",
- "reportAverageSpeed": "საშუალო სიჩქარე",
- "reportMaximumSpeed": "მაქსიმალური სიჩქარე",
- "reportEngineHours": "მოტოსაათი",
- "reportDuration": "ხანგრძლივობა",
- "reportStartDate": "დაწყების თარიღი",
- "reportStartTime": "დაწყების დრო",
- "reportStartAddress": "დაწყების მისამართი",
- "reportEndTime": "დამთავრების დრო",
- "reportEndAddress": "დამთავრების მისამართი",
- "reportSpentFuel": "დახარჯული საწვავი",
- "reportStartOdometer": "ოდომეტრის სტარტი",
- "reportEndOdometer": "ოდომეტრის გაჩერება",
- "statisticsTitle": "სტატისტიკა",
- "statisticsCaptureTime": "დროის დაწყება",
- "statisticsActiveUsers": "აქტიური მომხმარებლები",
- "statisticsActiveDevices": "აქტიური მოწყობილობები",
- "statisticsRequests": "მოთხოვნები",
- "statisticsMessagesReceived": "შეტყობინება მიღებულია",
- "statisticsMessagesStored": "შეტყობინებები შენახულია",
- "statisticsGeocoder": "გეოკოდერის მოთხოვნა",
- "statisticsGeolocation": "გეოლოკაციის მოთხოვნა",
- "categoryArrow": "ისარი",
- "categoryDefault": "ნაგულისხმევი",
- "categoryAnimal": "ცხოველი",
- "categoryBicycle": "მოტოციკლი",
- "categoryBoat": "ნავი",
- "categoryBus": "ავტობუსი",
- "categoryCar": "ავტომანქანა",
- "categoryCamper": "Camper",
- "categoryCrane": "ამწე",
- "categoryHelicopter": "შვეულფრენი",
- "categoryMotorcycle": "მოტოციკლი",
- "categoryOffroad": "ოფროუდი",
- "categoryPerson": "ადამინაი",
- "categoryPickup": "პიკაპი",
- "categoryPlane": "პლანერი",
- "categoryShip": "გემი",
- "categoryTractor": "ტრაქტორი",
- "categoryTrain": "მატარებელი",
- "categoryTram": "ტრამვაი",
- "categoryTrolleybus": "ტროლეიბუსი",
- "categoryTruck": "სატვირთო",
- "categoryVan": "ფურგონი",
- "categoryScooter": "სკუტერი",
- "maintenanceStart": "დაწყება",
- "maintenancePeriod": "პერიოდი"
-} \ No newline at end of file
diff --git a/web/l10n/kk.json b/web/l10n/kk.json
deleted file mode 100644
index 706f2b78..00000000
--- a/web/l10n/kk.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Жүктеу...",
- "sharedHide": "Жасыру",
- "sharedSave": "Сақтау",
- "sharedUpload": "Upload",
- "sharedSet": "Орнату",
- "sharedCancel": "Болдырмау",
- "sharedCopy": "Copy",
- "sharedAdd": "Енгізу",
- "sharedEdit": "Түзету",
- "sharedRemove": "Жою",
- "sharedRemoveConfirm": "Элементті жою?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "км",
- "sharedMi": "мили",
- "sharedNmi": "теңіз мили",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "тораптар",
- "sharedKmh": "км/сағ",
- "sharedMph": "миля/сағ",
- "sharedHour": "Сағаттар",
- "sharedMinute": "Минуттар",
- "sharedSecond": "Секундтар",
- "sharedDays": "күндер",
- "sharedHours": "сағат",
- "sharedMinutes": "минут",
- "sharedDecimalDegrees": "Ондық Градустар",
- "sharedDegreesDecimalMinutes": "Градустар Ондық Минуттар",
- "sharedDegreesMinutesSeconds": "Градустар Минуттар Секундтар",
- "sharedName": "Атауы",
- "sharedDescription": "Сипаттамасы",
- "sharedSearch": "Іздеу",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Геозона",
- "sharedGeofences": "Геозоналар",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Ескертулер",
- "sharedNotification": "Notification",
- "sharedAttributes": "Атрибуттар",
- "sharedAttribute": "Атрибут",
- "sharedDrivers": "Drivers",
- "sharedDriver": "Driver",
- "sharedArea": "Аймақ",
- "sharedSound": "Дыбыстық Ескерту",
- "sharedType": "Түр",
- "sharedDistance": "Қашықтық",
- "sharedHourAbbreviation": "с",
- "sharedMinuteAbbreviation": "м",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Картаның Жағдайын Білу",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "Expression",
- "sharedDevice": "Құрылғы",
- "sharedTest": "Test",
- "sharedTestNotification": "Тестілік Хабарландыру Жіберу",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Күнтізбе",
- "sharedCalendars": "Күнтізбелер",
- "sharedFile": "Файл",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Файлды таңдау",
- "sharedPhone": "Телефон",
- "sharedRequired": "Міндетті",
- "sharedPreferences": "Баптау",
- "sharedPermissions": "Рұқсат",
- "sharedConnections": "Connections",
- "sharedExtra": "Экстра",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Number",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Сағаттық белдеу",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Жылдамдықты Шектеу",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Есеп: одометр елемеу",
- "attributeWebReportColor": "Веб: Түсі Есеп",
- "attributeDevicePassword": "Құрылғы Құпия Сөз",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Өңдеу: атрибуттары көшіру",
- "attributeColor": "Түс",
- "attributeWebLiveRouteLength": "Веб: Белсенді Маршруттың Ұзындығы",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Пошта: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Пошта: SMTP SSL Включить",
- "attributeMailSmtpSslTrust": "Пошта: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Пошта: SMTP SSL Протокол ",
- "attributeMailSmtpFrom": "Пошта: SMTP From",
- "attributeMailSmtpAuth": "Пошта: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Пошта: SMTP Пайдаланушы",
- "attributeMailSmtpPassword": "Пошта: SMTP Құпиясөз",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Қате",
- "errorGeneral": "Қолайсыз бұзылуы параметрлері немесе шектеулер",
- "errorConnection": "Қосылу қатесі",
- "errorSocket": "Web socket біріктіру қатесі",
- "errorZero": "Can't be zero",
- "userEmail": "Email",
- "userPassword": "Құпиясөз",
- "userAdmin": "Әкімші",
- "userRemember": "Еске сақтау",
- "userExpirationTime": "Қолданылу мерзімі",
- "userDeviceLimit": "Құрылғыларды Шектеу",
- "userUserLimit": "Қолданушылар Лимиті",
- "userDeviceReadonly": "Құрылғыларды қарау ғана",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Кілт",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Кіру",
- "loginLanguage": "Тіл",
- "loginReset": "Reset Password",
- "loginRegister": "Тіркеу",
- "loginLogin": "Кіру",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Қате email немесе пароль",
- "loginCreated": "Жаңа қолданушы тіркелді",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Шығу",
- "loginLogo": "Логотип",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Құрылғылар және Жай - күйлер",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Құрылғылар",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Идентификатор",
- "deviceModel": "Моделі",
- "deviceContact": "Байланыс",
- "deviceCategory": "Санат",
- "deviceLastUpdate": "Соңғы жаңарту",
- "deviceCommand": "Команда",
- "deviceFollow": "Ілесу",
- "deviceTotalDistance": "Жалпы Тармақ",
- "deviceStatus": "Мәртебе",
- "deviceStatusOnline": "Онлайн",
- "deviceStatusOffline": "Оффлайн",
- "deviceStatusUnknown": "Белгісіз",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Топ",
- "groupParent": "Топ",
- "groupNoGroup": "Топсыз",
- "settingsTitle": "Баптау",
- "settingsUser": "Аккаунт",
- "settingsGroups": "Топтар",
- "settingsServer": "Сервер",
- "settingsUsers": "Қолданушылар",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "12 сағаттық пішім",
- "settingsCoordinateFormat": "Координат пішімі",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Есептер",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Құрылғы",
- "reportGroup": "Топ",
- "reportFrom": "Бастап",
- "reportTo": "Дейін",
- "reportShow": "Көрсету",
- "reportClear": "Тазарту",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Туралық",
- "positionAccuracy": "Нақтылық",
- "positionLatitude": "Ендігі",
- "positionLongitude": "Ұзақтығы",
- "positionAltitude": "Биіктігі",
- "positionSpeed": "Жылдамдық",
- "positionCourse": "Бағыты",
- "positionAddress": "Мекен-жай",
- "positionProtocol": "Хаттама",
- "positionDistance": "Қашықтық",
- "positionRpm": "RPM",
- "positionFuel": "Отын",
- "positionPower": "Қуат көзі",
- "positionBattery": "Аккумулятор",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Event",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hours",
- "positionSteps": "Steps",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Battery Level",
- "positionFuelConsumption": "Fuel Consumption",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Ignition",
- "positionFlags": "Flags",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Motion",
- "positionArmed": "Armed",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Device Temperature",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Command",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Серверді баптау",
- "serverZoom": "Жақындау",
- "serverRegistration": "Тіркеу",
- "serverReadonly": "Тек қарап шығу",
- "serverForceSettings": "Баптауды жылдамдату",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Карта",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Карта қабаты",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps кілті",
- "mapBingRoad": "Bing Maps жолдары",
- "mapBingAerial": "Bing Maps Жер серігі",
- "mapBingHybrid": "Bing Maps Будан",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Яндекс Карталар",
- "mapYandexSat": "Яндекс Жер серіктері",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Көпбұрыш",
- "mapShapeCircle": "Шеңбер",
- "mapShapePolyline": "Сызық",
- "mapLiveRoutes": "Нақты бағыттар",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Жай күйі",
- "stateName": "Параметрі",
- "stateValue": "Мағынасы",
- "commandTitle": "Команда",
- "commandSend": "Жіберу",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "Бірліктер",
- "commandCustom": "Қолданушылар командасы",
- "commandDeviceIdentification": "Құрылғы идентификациясы",
- "commandPositionSingle": "Біржолғы қадағалау",
- "commandPositionPeriodic": "Қадағалауды бастау",
- "commandPositionStop": "Қадағалауды болдырмау",
- "commandEngineStop": "Қозғалтқышты бұғаттау",
- "commandEngineResume": "Қозғалтқышты бұғаттан шығару",
- "commandAlarmArm": "Сигнал жабдығын іске қосу",
- "commandAlarmDisarm": "Сигнал жабдығын істен айыру",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Сағаттық белдеуді баптау",
- "commandRequestPhoto": "Фото сұрау",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Құрылғыны қайта жүктеу",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "СМС жіберу",
- "commandSendUssd": "USSD жіберу",
- "commandSosNumber": "Төтенше нөмірді баптау",
- "commandSilenceTime": "Тыныштық уақытын баптау",
- "commandSetPhonebook": "Телефон анықтамасын баптау",
- "commandVoiceMessage": "Дыбыстық хабарлама",
- "commandOutputControl": "Шығуды бақылау",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Индикаторды орнату",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Жиілік",
- "commandTimezone": "Уақытша аймақты жылжыту",
- "commandMessage": "Хабарлама",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Мәліметтер",
- "commandIndex": "Индексі",
- "commandPhone": "Телефон нөмірі",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Барлық",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Команда нәтижесі",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Қызмет көрсету геозону",
- "eventTextMessage": "Мәтіндік хабарлама алынды",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Ескерту түрі",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Бағыт",
- "reportEvents": "Оқиғалар",
- "reportTrips": "Сапарлар",
- "reportStops": "Stops",
- "reportSummary": "Мәлімет",
- "reportDaily": "Daily Summary",
- "reportChart": "Диаграмма",
- "reportConfigure": "Конфигурациялау",
- "reportEventTypes": "Оқиға түрі",
- "reportChartType": "Түр Диаграммалар",
- "reportShowMarkers": "Маркерлер көрсету",
- "reportExport": "Экспорт",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "Құрылғы атауы",
- "reportAverageSpeed": "Орташа жылдамдық",
- "reportMaximumSpeed": "Максималды жылдамдық",
- "reportEngineHours": "Мотосағат",
- "reportDuration": "Ұзақтығы",
- "reportStartDate": "Start Date",
- "reportStartTime": "Бастапқы уақыт",
- "reportStartAddress": "Бастапқы мекен-жай",
- "reportEndTime": "Ақырғы уақыт",
- "reportEndAddress": "Ақырғы мекен-жай",
- "reportSpentFuel": "Отын пайдаланылды",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Статистика",
- "statisticsCaptureTime": "Жинау уақыты",
- "statisticsActiveUsers": "Белсенді қолданушылар",
- "statisticsActiveDevices": "Белсенді құрылғылар",
- "statisticsRequests": "Сұраныстар",
- "statisticsMessagesReceived": "Хабарлама алынды",
- "statisticsMessagesStored": "Хабарлама сақталды",
- "statisticsGeocoder": "Геокодер Сұраулар",
- "statisticsGeolocation": "Геолокация Сұраулар",
- "categoryArrow": "Тетік",
- "categoryDefault": "Қалып бойынша",
- "categoryAnimal": "Жануар",
- "categoryBicycle": "Велосипед",
- "categoryBoat": "Boat",
- "categoryBus": "Автобус",
- "categoryCar": "Автомобиль",
- "categoryCamper": "Camper",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "Мотоцикл",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Адам",
- "categoryPickup": "Pickup",
- "categoryPlane": "Ұшақ",
- "categoryShip": "Кеме",
- "categoryTractor": "Tractor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Жүк автомобилі",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/km.json b/web/l10n/km.json
deleted file mode 100644
index d6d38ea8..00000000
--- a/web/l10n/km.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "កំពុងផ្ទុក...",
- "sharedHide": "លាក់",
- "sharedSave": "រក្សារទុក",
- "sharedUpload": "Upload",
- "sharedSet": "កំណត់",
- "sharedCancel": "បោះបង់",
- "sharedCopy": "Copy",
- "sharedAdd": "បន្ថែម",
- "sharedEdit": "កែសម្រួល",
- "sharedRemove": "យកចេញ",
- "sharedRemoveConfirm": "យកចំណុចចេញ",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "គ.ម",
- "sharedMi": "ម៉ាយ",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "គ.ម/ម៉ោង",
- "sharedMph": "ម៉ាយក្នុងមួយម៉ោង",
- "sharedHour": "ម៉ោង",
- "sharedMinute": "នាទី",
- "sharedSecond": "វិនាទី",
- "sharedDays": "days",
- "sharedHours": "hours",
- "sharedMinutes": "minutes",
- "sharedDecimalDegrees": "អង្សាទសភាគ",
- "sharedDegreesDecimalMinutes": "អង្សាទសភាគនាទី",
- "sharedDegreesMinutesSeconds": "អង្សានាទីវិនាទី",
- "sharedName": "ឈ្មោះ",
- "sharedDescription": "បរិយាយ",
- "sharedSearch": "ស្វែងរក",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "កំណត់ភូមិសាស្ត្រ",
- "sharedGeofences": "កំណត់ភូមិសាស្ត្រ",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "ការជូនដំណឹង",
- "sharedNotification": "Notification",
- "sharedAttributes": "គុណលក្ខណៈ",
- "sharedAttribute": "គុណលក្ខណៈ",
- "sharedDrivers": "Drivers",
- "sharedDriver": "Driver",
- "sharedArea": "តំបន់",
- "sharedSound": "Notification Sound",
- "sharedType": "ប្រភេទ",
- "sharedDistance": "ចម្ងាយ",
- "sharedHourAbbreviation": "ម៉ោង",
- "sharedMinuteAbbreviation": "នាទី",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "ទទួលបានការកំណត់ផែនទី",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "Expression",
- "sharedDevice": "ឧបករណ៍",
- "sharedTest": "Test",
- "sharedTestNotification": "Send Test Notification",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "ប្រតិទិន",
- "sharedCalendars": "ប្រតិទិន",
- "sharedFile": "ឯកសារ",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "ជ្រើសឯកសារ",
- "sharedPhone": "Phone",
- "sharedRequired": "Required",
- "sharedPreferences": "Preferences",
- "sharedPermissions": "Permissions",
- "sharedConnections": "Connections",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Number",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Timezone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Speed Limit",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Report: Ignore Odometer",
- "attributeWebReportColor": "Web: Report Color",
- "attributeDevicePassword": "Device Password",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "Color",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "កំហុស",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "កំហុសក្នុងការតភ្ជាប់",
- "errorSocket": "កំហុសក្នុងការតភ្ជាប់ Web socket",
- "errorZero": "Can't be zero",
- "userEmail": "អ៊ីម៉ែល",
- "userPassword": "ពាក្យសម្ងាត់",
- "userAdmin": "អ្នកគ្រប់គ្រង",
- "userRemember": "សូមចងចាំ",
- "userExpirationTime": "ការផុតកំណត់",
- "userDeviceLimit": "កំណត់ចំនួនឧបករណ៍",
- "userUserLimit": "កំណត់ចំនួនអ្នកប្រើ",
- "userDeviceReadonly": "ឧបករណ៍បានតែអាន",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "សញ្ញាសម្ងាត់",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "ចូល",
- "loginLanguage": "ភាសា",
- "loginReset": "Reset Password",
- "loginRegister": "ចុះឈ្មោះ",
- "loginLogin": "ចូល",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "អាសយដ្ឋានអ៊ីម៉ែលឬពាក្យសម្ងាត់មិនត្រឹមត្រូវ",
- "loginCreated": "អ្នកប្រើថ្មីត្រូវបានចុះបញ្ជី",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "ចាកចេញ",
- "loginLogo": "រូបសញ្ញា",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "ឧបករណ៍និងសភាព",
- "deviceSelected": "Selected Device",
- "deviceTitle": "ឧបករណ៍",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "គ្រឿងសម្គាល់",
- "deviceModel": "គំរូ",
- "deviceContact": "ទំនក់ទំនង",
- "deviceCategory": "ប្រភេទ",
- "deviceLastUpdate": "ទិន្នន័យចុងក្រោយ",
- "deviceCommand": "ពាក្យបញ្ជា",
- "deviceFollow": "តាមដាន",
- "deviceTotalDistance": "ចម្ងាយសរុប",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Unknown",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "ក្រុម",
- "groupParent": "ក្រុម",
- "groupNoGroup": "គ្មានក្រុម",
- "settingsTitle": "ការកំណត់",
- "settingsUser": "គណនី",
- "settingsGroups": "ក្រុម",
- "settingsServer": "ម៉ាស៊ីនមេ",
- "settingsUsers": "អ្នកប្រើ",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "ទំរង់ 12 ម៉ោង",
- "settingsCoordinateFormat": "ទំរង់កូអរដោនេ",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "របាយការណ៍",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "ឧបករណ៍",
- "reportGroup": "ក្រុម",
- "reportFrom": "ពី",
- "reportTo": "ទៅកាន់",
- "reportShow": "បង្ហាញ",
- "reportClear": "ដើម្បីជម្រះ",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "សុពលភាព",
- "positionAccuracy": "ភាពត្រឹមត្រូវ",
- "positionLatitude": "រយៈទទឹង",
- "positionLongitude": "រយៈបណ្ដោយ",
- "positionAltitude": "កម្ពស់",
- "positionSpeed": "ល្បឿន",
- "positionCourse": "ធ្វើដំណើរ",
- "positionAddress": "អាសយដ្ឋាន",
- "positionProtocol": "ពិធីការ",
- "positionDistance": "ចម្ងាយ",
- "positionRpm": "RPM",
- "positionFuel": "Fuel",
- "positionPower": "Power",
- "positionBattery": "Battery",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Event",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hours",
- "positionSteps": "Steps",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Battery Level",
- "positionFuelConsumption": "Fuel Consumption",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Ignition",
- "positionFlags": "Flags",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Motion",
- "positionArmed": "Armed",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Device Temperature",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Command",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "ការកំណត់ម៉ាស៊ីនមេ",
- "serverZoom": "ពង្រីក",
- "serverRegistration": "ការចុះឈ្មោះ",
- "serverReadonly": "អាច​បាន​តែ​អាន",
- "serverForceSettings": "ការកំណត់កម្លាំង",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "ផែនទី",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "ស្រទាប់ផែនទី",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "ផែនទីគោល Carto",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "គន្លឹះផែនទី Bing",
- "mapBingRoad": "ផ្លូវ​​​លើផែនទី​​​Bing",
- "mapBingAerial": "ផែនទីពីលើអាកាស​​​​​​​​​​​​Bing",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "ពហុកោណ",
- "mapShapeCircle": "រង្វង់",
- "mapShapePolyline": "ពហុបន្ទាត់",
- "mapLiveRoutes": "ផ្លូវបន្តផ្ទាល់",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "សភាព",
- "stateName": "គុណលក្ខណៈ",
- "stateValue": "តម្លៃ",
- "commandTitle": "ពាក្យបញ្ជា",
- "commandSend": "បញ្ជូន",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "ឯកតា",
- "commandCustom": "ពាក្យបញ្ជាផ្ទាល់ខ្លួន",
- "commandDeviceIdentification": "អត្តសញ្ញាណឧបករណ៍",
- "commandPositionSingle": "របាយការណ៍រួមមួយ",
- "commandPositionPeriodic": "របាយការណ៍តាមកាលកំណត់",
- "commandPositionStop": "បញ្ឈប់ការបញ្ជូនទិន្នន័យ",
- "commandEngineStop": "ម៉ាស៊ីនបានបញ្ឈប់",
- "commandEngineResume": "ម៉ាស៊ីនបានបន្ត",
- "commandAlarmArm": "ចាប់ផ្តើមសំឡេងរោទិ៍",
- "commandAlarmDisarm": "បញ្ឈប់សំឡេងរោទិ៍",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "កំណត់តំបន់ពេលវេលា",
- "commandRequestPhoto": "ស្នើសុំរូបថត",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "ឧបករណ៍ចាប់ផ្ដើមឡើងវិញ",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "ផ្ញើ SMS",
- "commandSendUssd": "ផ្ញើ USSD",
- "commandSosNumber": "កំណត់លេខ SOS",
- "commandSilenceTime": "កំណត់ម៉ោងភាពស្ងប់ស្ងាត់",
- "commandSetPhonebook": "ដើម្បីកំណត់សៀវភៅទូរស័ព្ទ",
- "commandVoiceMessage": "សារជាសំឡេង",
- "commandOutputControl": "ការត្រួតពិនិត្យទិន្នផល",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "កំណត់ចំណាំ",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "ជាញឹកញាប់",
- "commandTimezone": "តំបន់ពេលវេលា",
- "commandMessage": "សារ",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "ទិន្នន័យ",
- "commandIndex": "សន្ទស្សន៍",
- "commandPhone": "លេខទូរសព្ទ",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "ព្រឹត្តិការណ៍ទាំងអស់",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "លទ្ធផលពាក្យបញ្ជា",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "ថែទាំត្រូវការជាចាំបាច់",
- "eventTextMessage": "Text message received",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "ប្រភេទការជូនដំណឹង",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "ផ្លូវ",
- "reportEvents": "ព្រឹត្តិការណ៍",
- "reportTrips": "ការ​ធ្វើដំណើរ",
- "reportStops": "Stops",
- "reportSummary": "សេចក្តីសង្ខេប",
- "reportDaily": "Daily Summary",
- "reportChart": "គំនូសតាង",
- "reportConfigure": "កំណត់រចនាសម្ព័ន្ធ",
- "reportEventTypes": "ប្រភេទព្រឹត្តិការណ៍",
- "reportChartType": "ប្រភេទគំនូសតាង",
- "reportShowMarkers": "បង្ហាញសញ្ញាសម្គាល់",
- "reportExport": "ការនាំចេញ",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "ឈ្មោះឧបករណ៍",
- "reportAverageSpeed": "ល្បឿន​មធ្យម",
- "reportMaximumSpeed": "ល្បឿនអតិបរមា",
- "reportEngineHours": "ម៉ោងម៉ាស៊ីន",
- "reportDuration": "រយៈពេល",
- "reportStartDate": "Start Date",
- "reportStartTime": "ម៉ោងចាប់ផ្តើម",
- "reportStartAddress": "អាសយដ្ឋានចាប់ផ្តើម",
- "reportEndTime": "ម៉ោងបញ្ចប់",
- "reportEndAddress": "អាសយដ្ឋានចុង",
- "reportSpentFuel": "ការចំណាយប្រេងឥន្ធនៈ",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "ស្ថិតិ",
- "statisticsCaptureTime": "ពេលការចាប់យក",
- "statisticsActiveUsers": "អ្នកប្រើប្រាស់សកម្ម",
- "statisticsActiveDevices": "ឧបករណ៍សកម្ម",
- "statisticsRequests": "សំណើ",
- "statisticsMessagesReceived": "សារដែលបានទទួល",
- "statisticsMessagesStored": "សារដែលបានរក្សាទុក",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "ព្រួញ",
- "categoryDefault": "លំនាំដើម",
- "categoryAnimal": "សត្វ",
- "categoryBicycle": "កង់",
- "categoryBoat": "Boat",
- "categoryBus": "រថយន្ដក្រុង",
- "categoryCar": "រថយន្ត",
- "categoryCamper": "Camper",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "ម៉ូតូ",
- "categoryOffroad": "Offroad",
- "categoryPerson": "មនុស្ស",
- "categoryPickup": "Pickup",
- "categoryPlane": "យន្តហោះ",
- "categoryShip": "នាវា",
- "categoryTractor": "Tractor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "រថយន្តដឹកទំនិញ",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/ko.json b/web/l10n/ko.json
deleted file mode 100644
index 0ba191cf..00000000
--- a/web/l10n/ko.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "로딩중...",
- "sharedHide": "숨기기",
- "sharedSave": "저장",
- "sharedUpload": "Upload",
- "sharedSet": "확인",
- "sharedCancel": "취소",
- "sharedCopy": "Copy",
- "sharedAdd": "추가",
- "sharedEdit": "편집",
- "sharedRemove": "제거",
- "sharedRemoveConfirm": "제거 하시겠습니까?",
- "sharedNoData": "비어있음",
- "sharedSubject": "Subject",
- "sharedYes": "예",
- "sharedNo": "아니오",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "1시간",
- "sharedMinute": "1분",
- "sharedSecond": "초",
- "sharedDays": "일",
- "sharedHours": "시간",
- "sharedMinutes": "분",
- "sharedDecimalDegrees": "DD 좌표계",
- "sharedDegreesDecimalMinutes": "DDM 좌표계",
- "sharedDegreesMinutesSeconds": "DMS 좌표계",
- "sharedName": "이름",
- "sharedDescription": "내용",
- "sharedSearch": "검색",
- "sharedIconScale": "아이콘 크기",
- "sharedGeofence": "지오펜스",
- "sharedGeofences": "지오펜스",
- "sharedCreateGeofence": "지오펜스 생성",
- "sharedNotifications": "알림",
- "sharedNotification": "알림",
- "sharedAttributes": "속성",
- "sharedAttribute": "속성",
- "sharedDrivers": "운전자",
- "sharedDriver": "운전자",
- "sharedArea": "공간",
- "sharedSound": "알림 소리",
- "sharedType": "유형",
- "sharedDistance": "거리",
- "sharedHourAbbreviation": "시",
- "sharedMinuteAbbreviation": "분",
- "sharedSecondAbbreviation": "초",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "L",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "L",
- "sharedImpGallon": "영국 갤런",
- "sharedUsGallon": "미국 갤런",
- "sharedLiterPerHourAbbreviation": "L/H",
- "sharedGetMapState": "지도 상태 가져오기",
- "sharedComputedAttribute": "자동화 속성",
- "sharedComputedAttributes": "자동화 속성",
- "sharedCheckComputedAttribute": "자동화 속성 테스트",
- "sharedExpression": "표현",
- "sharedDevice": "기기",
- "sharedTest": "테스트",
- "sharedTestNotification": "테스트 알림 보내기",
- "sharedTestNotificators": "채널 테스트",
- "sharedTestExpression": "표현 테스트",
- "sharedCalendar": "달력",
- "sharedCalendars": "달력",
- "sharedFile": "파일",
- "sharedSearchDevices": "기기 검색",
- "sharedSortBy": "정렬",
- "sharedFilterMap": "지도 필터",
- "sharedSelectFile": "파일 선택",
- "sharedPhone": "전화번호",
- "sharedRequired": "필수",
- "sharedPreferences": "환경 설정",
- "sharedPermissions": "권한",
- "sharedConnections": "연결",
- "sharedExtra": "기타",
- "sharedPrimary": "주요",
- "sharedSecondary": "일반",
- "sharedTypeString": "문자열",
- "sharedTypeNumber": "숫자",
- "sharedTypeBoolean": "불리언",
- "sharedTimezone": "시간대",
- "sharedInfoTitle": "정보",
- "sharedSavedCommand": "저장된 커맨드",
- "sharedSavedCommands": "저장된 커맨드",
- "sharedNew": "생성...",
- "sharedShowAddress": "주소 보기",
- "sharedShowDetails": "상세 보기",
- "sharedDisabled": "비활성화됨",
- "sharedMaintenance": "관리",
- "sharedDeviceAccumulators": "누적",
- "sharedAlarms": "알림",
- "sharedLocation": "위치",
- "sharedImport": "불러오기",
- "sharedColumns": "열",
- "sharedDropzoneText": "파일을 가져오거나 여기를 누르세요.",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "심플",
- "calendarRecurrence": "반복 주기",
- "calendarOnce": "한번",
- "calendarDaily": "매일",
- "calendarWeekly": "매주",
- "calendarMonthly": "매달",
- "calendarDays": "일",
- "calendarSunday": "일요일",
- "calendarMonday": "월요일",
- "calendarTuesday": "화요일",
- "calendarWednesday": "수요일",
- "calendarThursday": "목요일",
- "calendarFriday": "금요일",
- "calendarSaturday": "토요일",
- "attributeShowGeofences": "지오펜스 표시하기",
- "attributeSpeedLimit": "속도 제한",
- "attributeFuelDropThreshold": "기름 감소 한계값",
- "attributeFuelIncreaseThreshold": "기름 증가 한계값",
- "attributePolylineDistance": "연속 거리",
- "attributeReportIgnoreOdometer": "보고: 주행거리 무시",
- "attributeWebReportColor": "웹: 보고서 색상",
- "attributeDevicePassword": "기기 비밀번호",
- "attributeDeviceImage": "기기 이미지",
- "attributeDeviceInactivityStart": "기기 비활성화 시작",
- "attributeDeviceInactivityPeriod": "기기 비활성화 주기",
- "attributeProcessingCopyAttributes": "진행 중: 속성 복사",
- "attributeColor": "색상",
- "attributeWebLiveRouteLength": "웹: 라이브 주행거리",
- "attributeWebSelectZoom": "웹: 확대값 선택",
- "attributeWebMaxZoom": "웹: 최대 확대값",
- "attributeTelegramChatId": "텔레그램 채팅 ID",
- "attributePushoverUserKey": "Pushover 유저키",
- "attributePushoverDeviceNames": "Pushover 기기이름",
- "attributeMailSmtpHost": "메일: SMTP 호스트",
- "attributeMailSmtpPort": "메일: SMTP 포트",
- "attributeMailSmtpStarttlsEnable": " 메일: SMTP STARTTLS 활성화",
- "attributeMailSmtpStarttlsRequired": "메일: SMTP STARTTLS 필요함",
- "attributeMailSmtpSslEnable": "메일: SMTP SSL 활성화",
- "attributeMailSmtpSslTrust": "메일: SMTP SSL 신뢰",
- "attributeMailSmtpSslProtocols": "메일: SMTP SSL 프로토콜",
- "attributeMailSmtpFrom": "메일: SMTP From",
- "attributeMailSmtpAuth": "메일: SMTP Auth 활성화",
- "attributeMailSmtpUsername": "메일: SMTP 유저이름",
- "attributeMailSmtpPassword": "메일: SMTP 비밀번호",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: 속성 비활성화",
- "attributeUiDisableGroups": "UI: 그룹 비활성화",
- "attributeUiDisableEvents": "UI: 이벤트 비활성화",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: 운전자 비활성화",
- "attributeUiDisableComputedAttributes": "UI: 자동화 속성 비활성화",
- "attributeUiDisableCalendars": "UI: 달력 비활성화",
- "attributeUiDisableMaintenance": "UI: 관리 비활성화",
- "attributeUiHidePositionAttributes": "UI: 위치 정보 숨기기",
- "attributeUiDisableLoginLanguage": "UI: 로그인 언어 숨기기",
- "attributeNotificationTokens": "알림 토큰",
- "attributePopupInfo": "팝업 정보",
- "errorTitle": "오류",
- "errorGeneral": "부적절한 매개변수 또는 범위 초과",
- "errorConnection": "연결 오류",
- "errorSocket": "웹 소켓 연결 오류",
- "errorZero": "0이 될 수 없음",
- "userEmail": "이메일",
- "userPassword": "비밀번호",
- "userAdmin": "관리자",
- "userRemember": "저장하기",
- "userExpirationTime": "기간 제한",
- "userDeviceLimit": "기기 제한",
- "userUserLimit": "사용자 제한",
- "userDeviceReadonly": "기기 읽기전용",
- "userLimitCommands": "커맨드 제한",
- "userDisableReports": "보고서 비활성화",
- "userFixedEmail": "이메일 변경 제한",
- "userToken": "토큰",
- "userDeleteAccount": "계정 삭제",
- "userTemporary": "Temporary",
- "loginTitle": "로그인",
- "loginLanguage": "언어",
- "loginReset": "비밀번호 초기화",
- "loginRegister": "회원가입",
- "loginLogin": "로그인",
- "loginOpenId": "오픈ID로 로그인",
- "loginFailed": "이메일 또는 비밀번호가 틀렸습니다",
- "loginCreated": "회원가입 되었습니다.",
- "loginResetSuccess": "이메일을 확인해주세요",
- "loginUpdateSuccess": "비밀번호가 변경되었습니다",
- "loginLogout": "로그아웃",
- "loginLogo": "로고",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "기기와 상태",
- "deviceSelected": "선택된 기기",
- "deviceTitle": "기기",
- "devicePrimaryInfo": "기기 이름",
- "deviceSecondaryInfo": "기기 설명",
- "deviceIdentifier": "고유값",
- "deviceModel": "모델명",
- "deviceContact": "연락처",
- "deviceCategory": "카테고리",
- "deviceLastUpdate": "마지막 변경",
- "deviceCommand": "커맨드",
- "deviceFollow": "따라가기",
- "deviceTotalDistance": "총 주행거리",
- "deviceStatus": "상태",
- "deviceStatusOnline": "온라인",
- "deviceStatusOffline": "오프라인",
- "deviceStatusUnknown": "알 수 없음",
- "deviceRegisterFirst": "첫 기기를 등록하세요",
- "deviceIdentifierHelp": "IMEI, 일련번호와 같은 고유한 ID로 기기를 식별합니다.",
- "deviceShare": "Share Device",
- "groupDialog": "그룹",
- "groupParent": "그룹",
- "groupNoGroup": "그룹 없음",
- "settingsTitle": "설정",
- "settingsUser": "계정",
- "settingsGroups": "그룹",
- "settingsServer": "서버",
- "settingsUsers": "사용자",
- "settingsDistanceUnit": "거리 단위",
- "settingsAltitudeUnit": "고도 단위",
- "settingsSpeedUnit": "속도 단위",
- "settingsVolumeUnit": "부피 단위",
- "settingsTwelveHourFormat": "12시 형식",
- "settingsCoordinateFormat": "좌표 형식",
- "settingsServerVersion": "서버 버전",
- "settingsAppVersion": "앱 버전",
- "settingsConnection": "연결 상태",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "보고서",
- "reportScheduled": "예정된 보고서",
- "reportDevice": "기기",
- "reportGroup": "그룹",
- "reportFrom": "발신자",
- "reportTo": "수신자",
- "reportShow": "보이기",
- "reportClear": "초기화",
- "linkGoogleMaps": "구글 지도",
- "linkAppleMaps": "애플 지도",
- "linkStreetView": "스트리트 뷰",
- "positionFixTime": "Fix 시간",
- "positionDeviceTime": "기기 시간",
- "positionServerTime": "서버 시간",
- "positionValid": "유효성",
- "positionAccuracy": "정확성",
- "positionLatitude": "위도",
- "positionLongitude": "경도",
- "positionAltitude": "고도",
- "positionSpeed": "속도",
- "positionCourse": "코스",
- "positionAddress": "주소",
- "positionProtocol": "프로토콜",
- "positionDistance": "거리",
- "positionRpm": "RPM",
- "positionFuel": "기름",
- "positionPower": "전압",
- "positionBattery": "배터리",
- "positionRaw": "Raw",
- "positionIndex": "인덱스",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "위성 수",
- "positionSatVisible": "이용 중인 위성 수",
- "positionRssi": "신호강도",
- "positionGps": "GPS",
- "positionRoaming": "로밍",
- "positionEvent": "이벤트",
- "positionAlarm": "알림",
- "positionStatus": "상태",
- "positionOdometer": "주행 거리계",
- "positionServiceOdometer": "서비스 주행 거리계",
- "positionTripOdometer": "구간 거리계",
- "positionHours": "시간",
- "positionSteps": "걸음 수",
- "positionInput": "입력",
- "positionHeartRate": "동기화 주기",
- "positionOutput": "출력",
- "positionBatteryLevel": "배터리 레벨",
- "positionFuelConsumption": "기름 소비량",
- "positionRfid": "RFID",
- "positionVersionFw": "펌웨어 버전",
- "positionVersionHw": "하드웨어 버전",
- "positionIgnition": "시동",
- "positionFlags": "플래그",
- "positionCharge": "충전",
- "positionIp": "IP",
- "positionArchive": "저장됨",
- "positionVin": "VIN",
- "positionApproximate": "추정",
- "positionThrottle": "스로틀",
- "positionMotion": "움직임",
- "positionArmed": "장착됨",
- "positionAcceleration": "가속도",
- "positionTemp": "온도",
- "positionDeviceTemp": "기기 온도",
- "positionCoolantTemp": "냉각수 온도",
- "positionOperator": "소유자",
- "positionCommand": "커맨드",
- "positionBlocked": "차단됨",
- "positionDtcs": "속도계",
- "positionObdSpeed": "OBD 속도",
- "positionObdOdometer": "OBD 주행거리",
- "positionDrivingTime": "주행 시간",
- "positionDriverUniqueId": "운전자 ID",
- "positionCard": "카드",
- "positionImage": "이미지",
- "positionVideo": "비디오",
- "positionAudio": "오디오",
- "serverTitle": "서버 설정",
- "serverZoom": "배율",
- "serverRegistration": "회원가입",
- "serverReadonly": "읽기 전용",
- "serverForceSettings": "강제 설정",
- "serverAnnouncement": "공지사항",
- "serverName": "서버 이름",
- "serverDescription": "서버 설명",
- "serverColorPrimary": "주요 색상",
- "serverColorSecondary": "일반 색상",
- "serverLogo": "로고 이미지",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "지도",
- "mapActive": "활성화된 지도",
- "mapOverlay": "지도 오버레이",
- "mapOverlayCustom": "커스텀 오버레이",
- "mapOpenSeaMap": "OpenSea 지도",
- "mapOpenRailwayMap": "OpenRailway 지도",
- "mapOpenWeatherKey": "OpenWeather API 키",
- "mapOpenWeatherClouds": "OpenWeather 구름",
- "mapOpenWeatherPrecipitation": "OpenWeather 강수량",
- "mapOpenWeatherPressure": "OpenWeather 기압",
- "mapOpenWeatherWind": "OpenWeather 바람",
- "mapOpenWeatherTemperature": "OpenWeather 온도",
- "mapLayer": "지도 레이어",
- "mapCustom": "커스텀 (XYZ)",
- "mapCustomArcgis": "커스텀 (ArcGIS)",
- "mapCustomLabel": "커스텀 지도",
- "mapCarto": "Carto 지도",
- "mapOsm": "OpenStreet 지도",
- "mapGoogleRoad": "구글 지도",
- "mapGoogleHybrid": "구글 하이브리드 지도",
- "mapGoogleSatellite": "구글 위성 지도",
- "mapOpenTopoMap": "OpenTopo 지도",
- "mapBingKey": "빙 지도 키",
- "mapBingRoad": "빙 도로 지도",
- "mapBingAerial": "빙 위성 지도",
- "mapBingHybrid": "빙 하이브리드 지도",
- "mapBaidu": "바이두",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "얀덱스 지도",
- "mapYandexSat": "얀덱스 위성 지도",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox 도로 지도",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox 실외 지도",
- "mapMapboxSatellite": "Mapbox 위성 지도",
- "mapMapboxKey": "Mapbox 액세스 토큰",
- "mapMapTilerBasic": "MapTiler 기본 지도",
- "mapMapTilerHybrid": "MapTiler 하이브리드 지도",
- "mapMapTilerKey": "MapTiler API 키",
- "mapLocationIqStreets": "LocationIQ 도로 지도",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ 액세스 토큰",
- "mapTomTomBasic": "톰톰 기본 지도",
- "mapTomTomFlow": "톰톰 교통정보 지도",
- "mapTomTomIncidents": "톰톰 교통사고 지도",
- "mapTomTomKey": "톰톰 API 키",
- "mapHereBasic": "Here 기본 지도",
- "mapHereHybrid": "Here 하이브리드 지도",
- "mapHereSatellite": "Here 위성 지도",
- "mapHereFlow": "Here 교통정보 지도",
- "mapHereKey": "Here API 키",
- "mapShapePolygon": "다각형",
- "mapShapeCircle": "원",
- "mapShapePolyline": "연속선",
- "mapLiveRoutes": "실시간 경로",
- "mapDirection": "방향 표시하기",
- "mapCurrentLocation": "현재 위치",
- "mapPoiLayer": "POI 레이어",
- "mapClustering": "마커 군집화",
- "mapOnSelect": "선택 시 지도에 표시하기",
- "mapDefault": "기본 지도",
- "stateTitle": "상태",
- "stateName": "속성",
- "stateValue": "값",
- "commandTitle": "커맨드",
- "commandSend": "전송",
- "commandSent": "커맨드 전송됨",
- "commandQueued": "커맨드 대기중",
- "commandUnit": "단위",
- "commandCustom": "커스텀 커맨드",
- "commandDeviceIdentification": "장치 식별자",
- "commandPositionSingle": "일회성 보고",
- "commandPositionPeriodic": "정기적 보고",
- "commandPositionStop": "보고 중지",
- "commandEngineStop": "엔진 정지",
- "commandEngineResume": "엔진 활성화",
- "commandAlarmArm": "경보",
- "commandAlarmDisarm": "경보 해제",
- "commandAlarmDismiss": "경보 확인",
- "commandSetTimezone": "시간대 설정",
- "commandRequestPhoto": "사진 요청",
- "commandPowerOff": "기기 종료",
- "commandRebootDevice": "기기 재부팅",
- "commandFactoryReset": "공장초기화",
- "commandSendSms": "문자 보내기",
- "commandSendUssd": "USSD 보내기",
- "commandSosNumber": "긴급번호 설정",
- "commandSilenceTime": "알림 금지 시간대",
- "commandSetPhonebook": "연락처 설정",
- "commandVoiceMessage": "음성 메시지",
- "commandOutputControl": "출력 제어",
- "commandVoiceMonitoring": "음성 모니터링",
- "commandSetAgps": "AGPS 설정",
- "commandSetIndicator": "방향 설정",
- "commandConfiguration": "설정",
- "commandGetVersion": "버전 정보",
- "commandFirmwareUpdate": "펌웨어 업데이트",
- "commandSetConnection": "연결 설정",
- "commandSetOdometer": "주행거리 설정",
- "commandGetModemStatus": "모뎀 정보",
- "commandGetDeviceStatus": "기기 정보",
- "commandSetSpeedLimit": "속도 제한",
- "commandModePowerSaving": "절전 모드",
- "commandModeDeepSleep": "딥슬립 모드",
- "commandAlarmGeofence": "지오펜스 알림",
- "commandAlarmBattery": "배터리 알림",
- "commandAlarmSos": "SOS 알림",
- "commandAlarmRemove": "알림 제거",
- "commandAlarmClock": "시간 알림",
- "commandAlarmSpeed": "속도 알림",
- "commandAlarmFall": "추락 알림",
- "commandAlarmVibration": "진동 알림",
- "commandFrequency": "주기",
- "commandTimezone": "시간대 오프셋",
- "commandMessage": "메시지",
- "commandRadius": "반경",
- "commandEnable": "활성화",
- "commandData": "데이터",
- "commandIndex": "인덱스",
- "commandPhone": "연락처",
- "commandServer": "서버",
- "commandPort": "포트",
- "eventAll": "모든 이벤트",
- "eventDeviceOnline": "온라인 상태",
- "eventDeviceUnknown": "상태 알 수 없음",
- "eventDeviceOffline": "오프라인 상태",
- "eventDeviceInactive": "기기 비활성화",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "기기 이동 중",
- "eventDeviceStopped": "기기 정지",
- "eventDeviceOverspeed": "속도 제한 초과",
- "eventDeviceFuelDrop": "기름 부족",
- "eventDeviceFuelIncrease": "기름 증가",
- "eventCommandResult": "커맨드 결과",
- "eventGeofenceEnter": "지오펜스 진입",
- "eventGeofenceExit": "지오펜스 퇴장",
- "eventAlarm": "알림",
- "eventIgnitionOn": "시동 켜짐",
- "eventIgnitionOff": "시동 꺼짐",
- "eventMaintenance": "관리 필요",
- "eventTextMessage": "메시지가 왔습니다",
- "eventDriverChanged": "운전자 변경됨",
- "eventMedia": "미디어",
- "eventsScrollToLast": "마지막으로 이동",
- "eventsSoundEvents": "소리 이벤트",
- "eventsSoundAlarms": "소리 알림",
- "alarmGeneral": "일반",
- "alarmSos": "SOS",
- "alarmVibration": "진동",
- "alarmMovement": "움직임",
- "alarmLowspeed": "저속",
- "alarmOverspeed": "과속",
- "alarmFallDown": "떨어짐",
- "alarmLowPower": "파워 부족",
- "alarmLowBattery": "배터리 부족",
- "alarmFault": "오류",
- "alarmPowerOff": "꺼짐",
- "alarmPowerOn": "켜짐",
- "alarmDoor": "문",
- "alarmLock": "잠김",
- "alarmUnlock": "잠금해제",
- "alarmGeofence": "지오펜스",
- "alarmGeofenceEnter": "지오펜스 진입",
- "alarmGeofenceExit": "지오펜스 퇴장",
- "alarmGpsAntennaCut": "GPS 안테나 잘림",
- "alarmAccident": "사고",
- "alarmTow": "견인",
- "alarmIdle": "대기",
- "alarmHighRpm": "RPM 높음",
- "alarmHardAcceleration": "급가속",
- "alarmHardBraking": "급브레이크",
- "alarmHardCornering": "급코너링",
- "alarmLaneChange": "차선 변경",
- "alarmFatigueDriving": "운전자 피로",
- "alarmPowerCut": "전원 끊김",
- "alarmPowerRestored": "전원 복구됨",
- "alarmJamming": "전파 방해",
- "alarmTemperature": "온도",
- "alarmParking": "주차",
- "alarmBonnet": "후드 열림",
- "alarmFootBrake": "풋 브레이크",
- "alarmFuelLeak": "기름 누출",
- "alarmTampering": "변조됨",
- "alarmRemoving": "제거됨",
- "notificationType": "알림 유형",
- "notificationAlways": "전체 기기",
- "notificationNotificators": "채널",
- "notificatorCommand": "커맨드",
- "notificatorWeb": "웹",
- "notificatorMail": "메일",
- "notificatorSms": "메시지",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "텔레그램",
- "notificatorPushover": "Pushover",
- "reportReplay": "리플레이",
- "reportCombined": "혼합",
- "reportRoute": "경로",
- "reportEvents": "이벤트",
- "reportTrips": "구간",
- "reportStops": "정지",
- "reportSummary": "요약",
- "reportDaily": "일일 요약",
- "reportChart": "차트",
- "reportConfigure": "설정",
- "reportEventTypes": "이벤트 유형",
- "reportChartType": "차트 유형",
- "reportShowMarkers": "마커 표시",
- "reportExport": "내보내기",
- "reportEmail": "이메일 보고",
- "reportSchedule": "스케줄",
- "reportPeriod": "주기",
- "reportCustom": "커스텀",
- "reportToday": "오늘",
- "reportYesterday": "어제",
- "reportThisWeek": "이번주",
- "reportPreviousWeek": "지난주",
- "reportThisMonth": "이번달",
- "reportPreviousMonth": "지난달",
- "reportDeviceName": "기기 이름",
- "reportAverageSpeed": "평균 속도",
- "reportMaximumSpeed": "최대 속도",
- "reportEngineHours": "엔진 시간",
- "reportDuration": "기간",
- "reportStartDate": "시작일",
- "reportStartTime": "시작시간",
- "reportStartAddress": "시작주소",
- "reportEndTime": "종료시간",
- "reportEndAddress": "종료주소",
- "reportSpentFuel": "사용한 연료",
- "reportStartOdometer": "주행거리계 시작",
- "reportEndOdometer": "주행거리계 종료",
- "statisticsTitle": "통계",
- "statisticsCaptureTime": "캡처 시간",
- "statisticsActiveUsers": "활성화된 유저",
- "statisticsActiveDevices": "활성화된 기기",
- "statisticsRequests": "요청",
- "statisticsMessagesReceived": "수신된 메시지",
- "statisticsMessagesStored": "저장한 메세지",
- "statisticsGeocoder": "지오코더 요청",
- "statisticsGeolocation": "지오로케이션 요청",
- "categoryArrow": "화살표",
- "categoryDefault": "기본값",
- "categoryAnimal": "동물",
- "categoryBicycle": "자전거",
- "categoryBoat": "배",
- "categoryBus": "버스",
- "categoryCar": "차",
- "categoryCamper": "Camper",
- "categoryCrane": "크레인",
- "categoryHelicopter": "헬리콥터",
- "categoryMotorcycle": "오토바이",
- "categoryOffroad": "오프로드",
- "categoryPerson": "사람",
- "categoryPickup": "픽업 트럭",
- "categoryPlane": "비행기",
- "categoryShip": "배",
- "categoryTractor": "트랙터",
- "categoryTrain": "기차",
- "categoryTram": "트램",
- "categoryTrolleybus": "트롤리 버스",
- "categoryTruck": "트럭",
- "categoryVan": "밴",
- "categoryScooter": "오토바이",
- "maintenanceStart": "시작",
- "maintenancePeriod": "주기"
-} \ No newline at end of file
diff --git a/web/l10n/lo.json b/web/l10n/lo.json
deleted file mode 100644
index d0a40085..00000000
--- a/web/l10n/lo.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "ກຳລັງໂຫລດ...",
- "sharedHide": "Hide",
- "sharedSave": "ບັນທຶກ",
- "sharedUpload": "Upload",
- "sharedSet": "Set",
- "sharedCancel": "ຍົກເລີກ",
- "sharedCopy": "Copy",
- "sharedAdd": "ເພີ່ມ",
- "sharedEdit": "ແກ້ໄຂ",
- "sharedRemove": "ລົບອອກ",
- "sharedRemoveConfirm": "ລົບລາຍການນີ້ບໍ່?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "ກມ.",
- "sharedMi": "ໄມລ໌",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "ນ໊ອດ",
- "sharedKmh": "ກມ. /ຊມ.",
- "sharedMph": "ໄມລ໌ຕໍ່ຊົ່ວໂມງ",
- "sharedHour": "ຊົ່ວໂມງ",
- "sharedMinute": "ນາທີ",
- "sharedSecond": "ວິນາທີ",
- "sharedDays": "days",
- "sharedHours": "hours",
- "sharedMinutes": "minutes",
- "sharedDecimalDegrees": "Decimal Degrees",
- "sharedDegreesDecimalMinutes": "Degrees Decimal Minutes",
- "sharedDegreesMinutesSeconds": "Degrees Minutes Seconds",
- "sharedName": "ຊື່",
- "sharedDescription": "ລັກສະນະ",
- "sharedSearch": "ຄົ້ນຫາ",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "ເຂດພື້ນທີ່",
- "sharedGeofences": "ເຂດພື້ນທີ່",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "ການແຈ້ງເຕືອນ",
- "sharedNotification": "Notification",
- "sharedAttributes": "ຄຸນລັກສະນະ",
- "sharedAttribute": "ຄຸນລັກສະນະ",
- "sharedDrivers": "Drivers",
- "sharedDriver": "Driver",
- "sharedArea": "ພື້ນທີ່",
- "sharedSound": "Notification Sound",
- "sharedType": "Type",
- "sharedDistance": "Distance",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Get Map State",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "Expression",
- "sharedDevice": "Device",
- "sharedTest": "Test",
- "sharedTestNotification": "Send Test Notification",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Calendar",
- "sharedCalendars": "Calendars",
- "sharedFile": "File",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Select File",
- "sharedPhone": "Phone",
- "sharedRequired": "Required",
- "sharedPreferences": "Preferences",
- "sharedPermissions": "Permissions",
- "sharedConnections": "Connections",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Number",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Timezone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Speed Limit",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Report: Ignore Odometer",
- "attributeWebReportColor": "Web: Report Color",
- "attributeDevicePassword": "Device Password",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "Color",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "ຜິດພາດ",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "ການເຊື່ອມຕໍ່ຜິດພາດ",
- "errorSocket": "Web socket connection error",
- "errorZero": "Can't be zero",
- "userEmail": "ອີເມວ",
- "userPassword": "ລະຫັດຜ່ານ",
- "userAdmin": "ຜູ້ເບິ່ງແຍງລະບົບ",
- "userRemember": "ຈື່ໄວ້",
- "userExpirationTime": "Expiration",
- "userDeviceLimit": "Device Limit",
- "userUserLimit": "User Limit",
- "userDeviceReadonly": "Device Readonly",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "ເຂົ້າສູ່ລະບົບ",
- "loginLanguage": "ພາສາ",
- "loginReset": "Reset Password",
- "loginRegister": "ລົງທະບຽນ",
- "loginLogin": "ເຂົ້າສູ່ລະບົບ",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "ທີ່ຢູ່ອີເມວຫລືລະຫັດຜ່ານບໍ່ຖືກຕ້ອງ",
- "loginCreated": "ຜູ້ໃຊ້ໃຫມ່ ໄດ້ຮັບການລົງທະບຽນ",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "ອອກຈາກລະບົບ",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "ອຸປະກອນແລະສະຖານະ",
- "deviceSelected": "Selected Device",
- "deviceTitle": "ເຄື່ອງ/ອຸປະກອນ",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "ລະບຸເລກອຸປະກອນ",
- "deviceModel": "Model",
- "deviceContact": "Contact",
- "deviceCategory": "Category",
- "deviceLastUpdate": "ແກ້ໄຂລ່າສຸດ",
- "deviceCommand": "ຄຳສັ່ງ",
- "deviceFollow": "ຕິດຕາມ",
- "deviceTotalDistance": "Total Distance",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Unknown",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "ກຸ່ມ",
- "groupParent": "ກຸ່ມ",
- "groupNoGroup": "ບໍ່ຈັດໃນກຸ່ມ",
- "settingsTitle": "ການຕັ້ງຄ່າ",
- "settingsUser": "ບັນຊີຜູ້ໃຊ້",
- "settingsGroups": "ຕັ້ງຄ່າກຸ່ມ",
- "settingsServer": "ຕັ້ງຄ່າລະບົບ",
- "settingsUsers": "ຕັ້ງຄ່າຜູ້ໃຊ້ງານ",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "ຮູບແບບເວລາ 12 ຊົ່ວໂມງ",
- "settingsCoordinateFormat": "Coordinates Format",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "ລາຍງານ",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "ລາຍງານເຄື່ອງ/ອຸປະກອນ",
- "reportGroup": "Group",
- "reportFrom": "ຈາກ",
- "reportTo": "ໄປເຖິງ",
- "reportShow": "ສະແດງ",
- "reportClear": "ລົບລ້າງລາຍງານ",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "ຖືກຕ້ອງ",
- "positionAccuracy": "Accuracy",
- "positionLatitude": "ລາຕິຈູດ",
- "positionLongitude": "ລອງຈິຈູດ",
- "positionAltitude": "ລະດັບຄວາມສູງ",
- "positionSpeed": "ຄວາມໄວ",
- "positionCourse": "ທິດທາງ",
- "positionAddress": "ທີ່ຢູ່",
- "positionProtocol": "ໂປຣໂຕຄໍລ໌",
- "positionDistance": "Distance",
- "positionRpm": "RPM",
- "positionFuel": "Fuel",
- "positionPower": "Power",
- "positionBattery": "Battery",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Event",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hours",
- "positionSteps": "Steps",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Battery Level",
- "positionFuelConsumption": "Fuel Consumption",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Ignition",
- "positionFlags": "Flags",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Motion",
- "positionArmed": "Armed",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Device Temperature",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Command",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "ການຕັ້ງຄ່າເຊີເວີ້",
- "serverZoom": "ຂະຫຍາຍ +/-",
- "serverRegistration": "ລົງທະບຽນ",
- "serverReadonly": "ອ່ານໄດ້ຢ່າງດຽວ",
- "serverForceSettings": "Force Settings",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "ແຜ່ນທີ",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "ຊັ້ນແຜ່ນທີ",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps ສຳຄັນ",
- "mapBingRoad": "Bing Maps ຖະຫນົນ",
- "mapBingAerial": "Bing Maps ທາງອາກາດ",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "ໂພລີກອນ",
- "mapShapeCircle": "ວົງກົມ",
- "mapShapePolyline": "Polyline",
- "mapLiveRoutes": "Live Routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "ສະຖານະ",
- "stateName": "ຄຸນລັກສະນະ",
- "stateValue": "ມູນຄ່າ",
- "commandTitle": "ຄຳສັ່ງ",
- "commandSend": "ສົ່ງ",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "ຫນ່ວຍ",
- "commandCustom": "ຄຳສັ່ງກຳຫນົດເອງ",
- "commandDeviceIdentification": "ໝາຍເລກອຸປະກອນ",
- "commandPositionSingle": "ລາຍງານຕ່ຳແຫນ່ງດຽວ",
- "commandPositionPeriodic": "ແກ້ໄຂຕ່ຳແຫນ່ງ",
- "commandPositionStop": "ຕ່ຳແຫນ່ງ ຢຸດ",
- "commandEngineStop": "ດັບເຄື່ອງຈັກ",
- "commandEngineResume": "ຕິດເຄື່ອງຈັກຄືນໃຫມ່",
- "commandAlarmArm": "ແຈ້ງເຕືອນຕິດຕໍ່ສາຂາ",
- "commandAlarmDisarm": "ແຈ້ງເຕືອນຍົກເລີກຕິດຕໍ່ສາຂາ",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "ຕັ້ງຄ່າເຂດເວລາ",
- "commandRequestPhoto": "ສັ່ງຖ່າຍຮູບ",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "ຣີບູດ",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "ສົ່ງ SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "ຕັ້ງຄ່າເລກໝາຍໂທສຸກເສີນ SOS",
- "commandSilenceTime": "ຕັ້ງຄ່າຊ່ວງເວລາຢຸດນິ່ງ",
- "commandSetPhonebook": "ຕັ້ງຄ່າສະໝຸດໂທລະສັບ",
- "commandVoiceMessage": "ຂໍ້ຄວາມສຽງ",
- "commandOutputControl": "ຄວບຄຸມຂໍ້ມູນທີ່ສົ່ງອອກ",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Set Indicator",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "ຄວາມຖີ່",
- "commandTimezone": "Timezone Offset",
- "commandMessage": "Message",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Data",
- "commandIndex": "Index",
- "commandPhone": "Phone Number",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "All Events",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "ຜົນຮັບຈາກຄຳສັ່ງ",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Maintenance required",
- "eventTextMessage": "Text message received",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "ຊະນິດການແຈ້ງເຕືອນ",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Route",
- "reportEvents": "Events",
- "reportTrips": "Trips",
- "reportStops": "Stops",
- "reportSummary": "Summary",
- "reportDaily": "Daily Summary",
- "reportChart": "Chart",
- "reportConfigure": "Configure",
- "reportEventTypes": "Event Types",
- "reportChartType": "Chart Type",
- "reportShowMarkers": "Show Markers",
- "reportExport": "Export",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "Device Name",
- "reportAverageSpeed": "Average Speed",
- "reportMaximumSpeed": "Maximum Speed",
- "reportEngineHours": "Engine Hours",
- "reportDuration": "Duration",
- "reportStartDate": "Start Date",
- "reportStartTime": "Start Time",
- "reportStartAddress": "Start Address",
- "reportEndTime": "End Time",
- "reportEndAddress": "End Address",
- "reportSpentFuel": "Spent Fuel",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Statistics",
- "statisticsCaptureTime": "Capture Time",
- "statisticsActiveUsers": "Active Users",
- "statisticsActiveDevices": "Active Devices",
- "statisticsRequests": "Requests",
- "statisticsMessagesReceived": "Messages Received",
- "statisticsMessagesStored": "Messages Stored",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Arrow",
- "categoryDefault": "Default",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicycle",
- "categoryBoat": "Boat",
- "categoryBus": "Bus",
- "categoryCar": "Car",
- "categoryCamper": "Camper",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "Motorcycle",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Plane",
- "categoryShip": "Ship",
- "categoryTractor": "Tractor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Truck",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/lt.json b/web/l10n/lt.json
deleted file mode 100644
index d4ae0530..00000000
--- a/web/l10n/lt.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Kraunasi..",
- "sharedHide": "Paslėpti",
- "sharedSave": "Išsaugoti",
- "sharedUpload": "Įkelti",
- "sharedSet": "Nustatyti",
- "sharedCancel": "Atšaukti",
- "sharedCopy": "Kopijuoti",
- "sharedAdd": "Pridėti",
- "sharedEdit": "Redaguoti",
- "sharedRemove": "Pašalinti",
- "sharedRemoveConfirm": "Pašalinti objektą?",
- "sharedNoData": "Nėra duomenų",
- "sharedSubject": "Subject",
- "sharedYes": "Taip",
- "sharedNo": "Ne",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "jurmylė",
- "sharedMeters": "m",
- "sharedFeet": "pėdos",
- "sharedKn": "mazgai",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Valanda(-os)",
- "sharedMinute": "Minutė(-es)",
- "sharedSecond": "Sekundė(-es)",
- "sharedDays": "dienos",
- "sharedHours": "valandos",
- "sharedMinutes": "minutės",
- "sharedDecimalDegrees": "Laipsniai ir jų dalys",
- "sharedDegreesDecimalMinutes": "Laipsniai minutės ir jų dalys",
- "sharedDegreesMinutesSeconds": "Laipsniai minutės sekundės",
- "sharedName": "Pavadinimas",
- "sharedDescription": "Aprašymas",
- "sharedSearch": "Paieška",
- "sharedIconScale": "Ikonos mastelis",
- "sharedGeofence": "Georiba",
- "sharedGeofences": "Georibos",
- "sharedCreateGeofence": "Sukurti Georibas",
- "sharedNotifications": "Perspėjimai",
- "sharedNotification": "Pranešimas",
- "sharedAttributes": "Parametrai",
- "sharedAttribute": "Parametras",
- "sharedDrivers": "Vairuotojai",
- "sharedDriver": "Vairuotojas",
- "sharedArea": "Plotas",
- "sharedSound": "Perspėjimo garsas",
- "sharedType": "Tipas",
- "sharedDistance": "Atstumas",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "I",
- "sharedGallonAbbreviation": "galonas",
- "sharedLiter": "Litras",
- "sharedImpGallon": "Standartinis galonas",
- "sharedUsGallon": "JAV galonas",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Gauti žemėlapio buseną",
- "sharedComputedAttribute": "Apskaičiuotas parametras",
- "sharedComputedAttributes": "Apskaičiuoti parametrai",
- "sharedCheckComputedAttribute": "Patikrinti apskaičiuotą parametrą",
- "sharedExpression": "Išraiška",
- "sharedDevice": "Prietaisas",
- "sharedTest": "Testas",
- "sharedTestNotification": "Siųsti bandomąjį perspėjimą",
- "sharedTestNotificators": "Bandyti kanalus",
- "sharedTestExpression": "Bandyti reikšmę",
- "sharedCalendar": "Kalendorius",
- "sharedCalendars": "Kalendoriai",
- "sharedFile": "Failas",
- "sharedSearchDevices": "Ieškoti įrenginių",
- "sharedSortBy": "Rūšiuoti pagal",
- "sharedFilterMap": "Filtruoti žemėlapyje",
- "sharedSelectFile": "Parinkite failą",
- "sharedPhone": "Telefonas",
- "sharedRequired": "Privalomas",
- "sharedPreferences": "Pasirinkimai",
- "sharedPermissions": "Leidimai",
- "sharedConnections": "Susijungimai",
- "sharedExtra": "Extra",
- "sharedPrimary": "Pagrindinis",
- "sharedSecondary": "Antrinis",
- "sharedTypeString": "Tekstas",
- "sharedTypeNumber": "Skaičius",
- "sharedTypeBoolean": "Loginis",
- "sharedTimezone": "Laiko zona",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Išsaugota komanda",
- "sharedSavedCommands": "Išsaugotos komandos",
- "sharedNew": "Naujas...",
- "sharedShowAddress": "Rodyti adresą",
- "sharedShowDetails": "Daugiau informacijos",
- "sharedDisabled": "Išjungtas",
- "sharedMaintenance": "Aptarnavimas",
- "sharedDeviceAccumulators": "Akumuliatorius",
- "sharedAlarms": "Perspėjimai",
- "sharedLocation": "Lokacija",
- "sharedImport": "Importuoti",
- "sharedColumns": "Stulpeliai",
- "sharedDropzoneText": "Nutempkite failą čia arba paspauskite",
- "sharedLogs": "Žurnalai",
- "sharedLink": "Link",
- "calendarSimple": "Paprastas",
- "calendarRecurrence": "Pasikartojimas",
- "calendarOnce": "Vienkartinis",
- "calendarDaily": "Kasdien",
- "calendarWeekly": "Savaitinis",
- "calendarMonthly": "Mėnesinis",
- "calendarDays": "Dienos",
- "calendarSunday": "Sekmadienis",
- "calendarMonday": "Pirmadienis",
- "calendarTuesday": "Antradienis",
- "calendarWednesday": "Trečiadienis",
- "calendarThursday": "Ketvirtadienis",
- "calendarFriday": "Penktadienis",
- "calendarSaturday": "Šeštadienis",
- "attributeShowGeofences": "Rodyti Georibas",
- "attributeSpeedLimit": "Greičio limitas",
- "attributeFuelDropThreshold": "Kuro mažėjimo riba",
- "attributeFuelIncreaseThreshold": "Kuro didėjimo riba",
- "attributePolylineDistance": "Linijos atstumas",
- "attributeReportIgnoreOdometer": "Ataskaita: Ignoruoti odometrą",
- "attributeWebReportColor": "Web: Ataskaitos spalva",
- "attributeDevicePassword": "Įrenginio slaptažodis",
- "attributeDeviceImage": "Įrenginio vaizdas",
- "attributeDeviceInactivityStart": "Įrenginio neaktyvumo pradžia",
- "attributeDeviceInactivityPeriod": "Įrenginio neaktyvumo trukmė",
- "attributeProcessingCopyAttributes": "Apdorojimas: Kopijuoti atributus",
- "attributeColor": "Spalva",
- "attributeWebLiveRouteLength": "Web: Tiesioginio maršruto ilgis",
- "attributeWebSelectZoom": "Web: Išdidinti pažymėjus",
- "attributeWebMaxZoom": "Web: Maximalus išdidinimas",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP adresas",
- "attributeMailSmtpPort": "Mail: SMTP prievadas",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS įjungtas",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTLS privalomas",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL įjungtas",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL protokolai",
- "attributeMailSmtpFrom": "Mail: SMTP Siuntėjas",
- "attributeMailSmtpAuth": "Mail: SMTP autentifikacija įjungta",
- "attributeMailSmtpUsername": "Mail: SMTP prisijungimas",
- "attributeMailSmtpPassword": "Mail: SMTP slaptažodis",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: išjungti atributus",
- "attributeUiDisableGroups": "UI: išjungti grupes",
- "attributeUiDisableEvents": "UI: Išjungti įvykius",
- "attributeUiDisableVehicleFeatures": "UI: Išjungti automobilio funkcijas",
- "attributeUiDisableDrivers": "UI: Išjungti vairuotojus",
- "attributeUiDisableComputedAttributes": "UI: Išjungti apskaičiuotus parametrus",
- "attributeUiDisableCalendars": "UI: Išjungti kalendorius",
- "attributeUiDisableMaintenance": "UI: Išjungti aptarnavimus",
- "attributeUiHidePositionAttributes": "UI: Slėpti pozicijos adresą",
- "attributeUiDisableLoginLanguage": "UI: Išjungti prisijungimo kalbą",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Klaida",
- "errorGeneral": "Netinkami parametrai ar apribojimų pažeidimas",
- "errorConnection": "Ryšio klaida",
- "errorSocket": "Web socket prisijungimo klaida",
- "errorZero": "Negali būti nulis",
- "userEmail": "Vartotojo vardas",
- "userPassword": "Slaptažodis",
- "userAdmin": "Administratorius",
- "userRemember": "Prisiminti",
- "userExpirationTime": "Galiojimas",
- "userDeviceLimit": "Prietaiso limitas",
- "userUserLimit": "Vartotojo limitas",
- "userDeviceReadonly": "Prietaisai skaitymo rėžimu",
- "userLimitCommands": "Apriboti komandas",
- "userDisableReports": "Išjungti ataskaitas",
- "userFixedEmail": "Neleisti keisti Email",
- "userToken": "Token",
- "userDeleteAccount": "Pašalinti vartotoją",
- "userTemporary": "Temporary",
- "loginTitle": "Prisijungimas",
- "loginLanguage": "Kalba",
- "loginReset": "Atstatyti slaptažodį",
- "loginRegister": "Registruotis",
- "loginLogin": "Prisijungti",
- "loginOpenId": "Jungtis naudojant Google",
- "loginFailed": "Neteisingas el.paštas ir/ar slaptažodis",
- "loginCreated": "Registracija sėkminga",
- "loginResetSuccess": "Patikrinkite savo el. paštą",
- "loginUpdateSuccess": "Naujas slaptažodis sukurtas",
- "loginLogout": "Atsijungti",
- "loginLogo": "Logotipas",
- "loginTotpCode": "Vienkartinio slaptažodžio kodas",
- "loginTotpKey": "Vienkartinio slaptažodžio raktas",
- "devicesAndState": "Prietaisai ir Statusas",
- "deviceSelected": "Pasirinktas įrenginys",
- "deviceTitle": "Prietaisai",
- "devicePrimaryInfo": "Įrenginio antraštė",
- "deviceSecondaryInfo": "Įrenginio aprašymas",
- "deviceIdentifier": "Identifikacinis kodas",
- "deviceModel": "Modelis",
- "deviceContact": "Kontaktas",
- "deviceCategory": "Kategorija",
- "deviceLastUpdate": "Naujausias atnaujinimas",
- "deviceCommand": "Komanda",
- "deviceFollow": "Sekti",
- "deviceTotalDistance": "Viso distancija",
- "deviceStatus": "Būsena",
- "deviceStatusOnline": "Prisijungęs",
- "deviceStatusOffline": "Neprisijungęs",
- "deviceStatusUnknown": "Nežinoma",
- "deviceRegisterFirst": "Registruokite savo pirmą įrenginį",
- "deviceIdentifierHelp": "IMEI, serijinis numeris arba identifikacinis ID. Turi atitikti įrenginio ID siunčiamą į serverį.",
- "deviceShare": "Dalintis įrenginiu",
- "groupDialog": "Grupė",
- "groupParent": "Grupė",
- "groupNoGroup": "Nenurodyta grupė",
- "settingsTitle": "Nustatymai",
- "settingsUser": "Paskyra",
- "settingsGroups": "Grupės",
- "settingsServer": "Serveris",
- "settingsUsers": "Vartotojai",
- "settingsDistanceUnit": "Atstumo vienetai",
- "settingsAltitudeUnit": "Aukščio vienetai",
- "settingsSpeedUnit": "Greičio vienetai",
- "settingsVolumeUnit": "Tūrio vienetai",
- "settingsTwelveHourFormat": "12-val formatas",
- "settingsCoordinateFormat": "Koordinačių formatas",
- "settingsServerVersion": "Serverio versija",
- "settingsAppVersion": "App versija",
- "settingsConnection": "Susijungimas",
- "settingsDarkMode": "Tamsi tema",
- "settingsTotpEnable": "Įjungti vienkartinį slaptažodį",
- "settingsTotpForce": "Priverstinis vienkartinis slaptažodis",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker atnaujinimo intervalas",
- "settingsUpdateAvailable": "Yra atnaujinimas.",
- "settingsSupport": "Pagalba",
- "reportTitle": "Ataskaitos",
- "reportScheduled": "Suplanuotos ataskaitos",
- "reportDevice": "Prietaisas",
- "reportGroup": "Grupė",
- "reportFrom": "Nuo",
- "reportTo": "Iki",
- "reportShow": "Rodyti",
- "reportClear": "Valyti",
- "linkGoogleMaps": "Google žemėlapiai",
- "linkAppleMaps": "Apple žemėlapiai",
- "linkStreetView": "Gatvės vaizdas",
- "positionFixTime": "Fiksuoti laiką",
- "positionDeviceTime": "Įrenginio laikas",
- "positionServerTime": "Serverio laikas",
- "positionValid": "Galiojantis",
- "positionAccuracy": "Tikslumas",
- "positionLatitude": "Platuma",
- "positionLongitude": "Ilguma",
- "positionAltitude": "Aukštis",
- "positionSpeed": "Greitis",
- "positionCourse": "Kryptis",
- "positionAddress": "Adresas",
- "positionProtocol": "Protokolas",
- "positionDistance": "Atstumas",
- "positionRpm": "APM",
- "positionFuel": "Kuras",
- "positionPower": "Energija",
- "positionBattery": "Baterija",
- "positionRaw": "Neapdoroti duomenys",
- "positionIndex": "Indeksas",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Palydovai",
- "positionSatVisible": "Matomi palydovai",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Tarptinklinis ryšys",
- "positionEvent": "Įvykis",
- "positionAlarm": "Signalas",
- "positionStatus": "Būsena",
- "positionOdometer": "Odometras",
- "positionServiceOdometer": "Serviso odometras",
- "positionTripOdometer": "Kelionės odometras",
- "positionHours": "Valandos",
- "positionSteps": "Žingsniai",
- "positionInput": "Įvestis",
- "positionHeartRate": "Pulsas",
- "positionOutput": "Išvestis",
- "positionBatteryLevel": "Baterijos lygis",
- "positionFuelConsumption": "Kuro suvartojimas",
- "positionRfid": "RFID",
- "positionVersionFw": "Programinės įrangos versija",
- "positionVersionHw": "Techninės įrangos versija",
- "positionIgnition": "Degimas",
- "positionFlags": "Žymeklis",
- "positionCharge": "Krovimas",
- "positionIp": "IP",
- "positionArchive": "Archyvas",
- "positionVin": "VIN",
- "positionApproximate": "Apytikslis",
- "positionThrottle": "Throttle",
- "positionMotion": "Judantis",
- "positionArmed": "Uždėtas",
- "positionAcceleration": "Akseleracija",
- "positionTemp": "Temperatūra",
- "positionDeviceTemp": "Įrenginio temperatūra",
- "positionCoolantTemp": "Aušinimo temperatūra",
- "positionOperator": "Operatorius",
- "positionCommand": "Komanda",
- "positionBlocked": "Užblokuotas",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD greitis",
- "positionObdOdometer": "OBD odometras",
- "positionDrivingTime": "Vairavimo laikas",
- "positionDriverUniqueId": "Vairuotojo unikalus ID",
- "positionCard": "Kortelė",
- "positionImage": "Atvaizdas",
- "positionVideo": "Vaizdo įrašas",
- "positionAudio": "Garso įrašas",
- "serverTitle": "Serverio nustatymai",
- "serverZoom": "Priartinimas",
- "serverRegistration": "Registracija",
- "serverReadonly": "Skaitymo",
- "serverForceSettings": "Priverstiniai nustatymai",
- "serverAnnouncement": "Pranešimai",
- "serverName": "Serverio pavadinimas",
- "serverDescription": "Serverio aprašymas",
- "serverColorPrimary": "Pirminė spalva",
- "serverColorSecondary": "Papildoma spalva",
- "serverLogo": "Logo vaizdas",
- "serverLogoInverted": "Invertuotas logo vaizdas",
- "serverChangeDisable": "Uždrausti keisti serverį",
- "serverDisableShare": "Išjungti dalinimasi įrenginiais",
- "mapTitle": "Žemėlapis",
- "mapActive": "Aktyvūs žemėlapiai",
- "mapOverlay": "Žemėlapių sluoksniai",
- "mapOverlayCustom": "Pasirinkti sluoksnį",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API raktas",
- "mapOpenWeatherClouds": "OpenWeather debesuotumas",
- "mapOpenWeatherPrecipitation": "OpenWeather krituliai",
- "mapOpenWeatherPressure": "OpenWeather slėgis",
- "mapOpenWeatherWind": "OpenWeather vėjas",
- "mapOpenWeatherTemperature": "OpenWeather temperatūra",
- "mapLayer": "Žemėlapio sluoksnis",
- "mapCustom": "Pasirinkti (XYZ)",
- "mapCustomArcgis": "Pasirinkti (ArcGIS)",
- "mapCustomLabel": "Pasirinkti žemėlapį",
- "mapCarto": "Carto žemėlapiai",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google keliai",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps raktas",
- "mapBingRoad": "Bing Maps Keliai",
- "mapBingAerial": "Bing Maps Palydovas",
- "mapBingHybrid": "Bing Maps Mišrus",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex žemėlapis",
- "mapYandexSat": "Yandex Palydovinis",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox gatvės",
- "mapMapboxStreetsDark": "Tamsus Mapbox Streets",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Palydovinis",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API raktas",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom eismo įvykiai",
- "mapTomTomKey": "TomTom API raktas",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API raktas",
- "mapShapePolygon": "Polygonas",
- "mapShapeCircle": "Apskritimas",
- "mapShapePolyline": "Polilinija",
- "mapLiveRoutes": "Tiesioginiai maršrutai",
- "mapDirection": "Rodyti kryptį",
- "mapCurrentLocation": "Esama pozicija",
- "mapPoiLayer": "Lankytinų vietų sluoksnis",
- "mapClustering": "Žymų grupavimas",
- "mapOnSelect": "Rodyti žemėlapį pažymėjus",
- "mapDefault": "Pagrindinis žemėlapis",
- "stateTitle": "Būklė",
- "stateName": "Parametras",
- "stateValue": "Reikšmė",
- "commandTitle": "Komanda",
- "commandSend": "Siųsti",
- "commandSent": "Komanda nusiųsta",
- "commandQueued": "Komanda eilėje",
- "commandUnit": "Vienetas",
- "commandCustom": "Vartotojo komanda",
- "commandDeviceIdentification": "Įrenginio identifikacija",
- "commandPositionSingle": "Vienkartinė ataskaita",
- "commandPositionPeriodic": "Periodinės ataskaitos",
- "commandPositionStop": "Stabdyti ataskaitas",
- "commandEngineStop": "Stabdyti variklį",
- "commandEngineResume": "Paleisti variklį",
- "commandAlarmArm": "Uždėti signalą",
- "commandAlarmDisarm": "Nuimti signalą",
- "commandAlarmDismiss": "Nutraukti signalą",
- "commandSetTimezone": "Nustatyti laiko zoną",
- "commandRequestPhoto": "Gauti nuotrauką",
- "commandPowerOff": "Išjungti įrenginį",
- "commandRebootDevice": "Perkrauti įrenginį",
- "commandFactoryReset": "Gamykliniai nustatymai",
- "commandSendSms": "Siųsti SMS",
- "commandSendUssd": "Siųsti USSD",
- "commandSosNumber": "Nustatyti SOS numerį",
- "commandSilenceTime": "Nustatyti tylos laiką",
- "commandSetPhonebook": "Nustatyti adresatų knygą",
- "commandVoiceMessage": "Balso žinutė",
- "commandOutputControl": "Įšvesties kontrolė",
- "commandVoiceMonitoring": "Balso stebėjimas",
- "commandSetAgps": "Nustatyti A-GPS",
- "commandSetIndicator": "Nustatyti Indikatorių",
- "commandConfiguration": "Konfigūracija",
- "commandGetVersion": "Gauti versiją",
- "commandFirmwareUpdate": "Atnaujinti programinę įrangą",
- "commandSetConnection": "Nustatyti prisijungimą",
- "commandSetOdometer": "Nustatyti odometrą",
- "commandGetModemStatus": "Gauti modemo būseną",
- "commandGetDeviceStatus": "Gauti įrenginio būseną",
- "commandSetSpeedLimit": "Nustatyti greičio limitą",
- "commandModePowerSaving": "Energijos taupymo režimas",
- "commandModeDeepSleep": "\"Užmigdyti\" įrenginį",
- "commandAlarmGeofence": "Nustatyti georibos signalą",
- "commandAlarmBattery": "Nustatyti baterijos signalą",
- "commandAlarmSos": "Nustatyti SOS signalą",
- "commandAlarmRemove": "Nustatyti pašalinimo signalą",
- "commandAlarmClock": "Nustatyti laiko signalą",
- "commandAlarmSpeed": "Nustatyti greičio signalą",
- "commandAlarmFall": "Nustatyti kritimo signalą",
- "commandAlarmVibration": "Nustatyti vibravimo signalą",
- "commandFrequency": "Dažnis",
- "commandTimezone": "Laiko zonos pataisa",
- "commandMessage": "Žinutė",
- "commandRadius": "Spindulys",
- "commandEnable": "Įgalinti",
- "commandData": "Duomenys",
- "commandIndex": "Indeksas",
- "commandPhone": "Telefono numeris",
- "commandServer": "Serveris",
- "commandPort": "Prievadas",
- "eventAll": "Visi įvykiai",
- "eventDeviceOnline": "Būsena pasiekiamas",
- "eventDeviceUnknown": "Būsena nežinoma",
- "eventDeviceOffline": "Būsena atsijungęs",
- "eventDeviceInactive": "Įrenginys neaktyvus",
- "eventQueuedCommandSent": "Išsiųsta komanda eilėje",
- "eventDeviceMoving": "Įrenginys juda",
- "eventDeviceStopped": "Įrenginys sustojo",
- "eventDeviceOverspeed": "Greičio limitas viršytas",
- "eventDeviceFuelDrop": "Kuras sumažėjo",
- "eventDeviceFuelIncrease": "Kuras papildytas",
- "eventCommandResult": "Komandos rezultatas",
- "eventGeofenceEnter": "Georibų viduje",
- "eventGeofenceExit": "Už georibų",
- "eventAlarm": "Signalas",
- "eventIgnitionOn": "Degimas įjungtas",
- "eventIgnitionOff": "Degimas išjungtas",
- "eventMaintenance": "Aptarnavimo poreikis",
- "eventTextMessage": "Gauta tekstinė žinutė",
- "eventDriverChanged": "Vairuotojas pasikeitė",
- "eventMedia": "Medija",
- "eventsScrollToLast": "Slinkti iki paskutinio",
- "eventsSoundEvents": "Garso įvykiai",
- "eventsSoundAlarms": "Garso signalai",
- "alarmGeneral": "Pagrindinis",
- "alarmSos": "SOS",
- "alarmVibration": "Vibracija",
- "alarmMovement": "Judėjimas",
- "alarmLowspeed": "Mažas greitis",
- "alarmOverspeed": "Greičio viršijimas",
- "alarmFallDown": "Nukrito",
- "alarmLowPower": "Žema įtampa",
- "alarmLowBattery": "Mažas baterijos lygis",
- "alarmFault": "Klaida",
- "alarmPowerOff": "Išjungtas",
- "alarmPowerOn": "Įjungtas",
- "alarmDoor": "Durys",
- "alarmLock": "Užrakinta",
- "alarmUnlock": "Atrakinta",
- "alarmGeofence": "Georiba",
- "alarmGeofenceEnter": "Georiba įeiti",
- "alarmGeofenceExit": "Georiba išeiti",
- "alarmGpsAntennaCut": "GPS antena nutraukta",
- "alarmAccident": "Įvykis",
- "alarmTow": "Vilkimas",
- "alarmIdle": "Tuščia eiga",
- "alarmHighRpm": "Aukštos apsukos",
- "alarmHardAcceleration": "Didelis pagreitis",
- "alarmHardBraking": "Staigus stabdymas",
- "alarmHardCornering": "Staigus posūkis",
- "alarmLaneChange": "Juostų keitimas",
- "alarmFatigueDriving": "Nuovargis",
- "alarmPowerCut": "Atjungtas maitinimas",
- "alarmPowerRestored": "Maitinimas atstatytas",
- "alarmJamming": "Kamštis",
- "alarmTemperature": "Temperatūra",
- "alarmParking": "Parkavimas",
- "alarmBonnet": "Variklio dangtis",
- "alarmFootBrake": "Pertrauka maistui",
- "alarmFuelLeak": "Kuro nuotekis",
- "alarmTampering": "Gadinimas",
- "alarmRemoving": "Pašalinimas",
- "notificationType": "Įspėjimo tipas",
- "notificationAlways": "Visi prietaisai",
- "notificationNotificators": "Kanalai",
- "notificatorCommand": "Komanda",
- "notificatorWeb": "Web",
- "notificatorMail": "El. paštas",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Pakartoti",
- "reportCombined": "Sujungta",
- "reportRoute": "Maršrutas",
- "reportEvents": "Įvykiai",
- "reportTrips": "Kelionės",
- "reportStops": "Sustojimai",
- "reportSummary": "Suvestinė",
- "reportDaily": "Dienos suvestinė",
- "reportChart": "Diagrama",
- "reportConfigure": "Konfigūruoti",
- "reportEventTypes": "Įvykių tipai",
- "reportChartType": "Diagramų tipai",
- "reportShowMarkers": "Rodyti žymeklius",
- "reportExport": "Eksportuoti",
- "reportEmail": "Ataskaitą siųsti el. paštu",
- "reportSchedule": "Planuoti",
- "reportPeriod": "Periodas",
- "reportCustom": "Custom",
- "reportToday": "Šiandien",
- "reportYesterday": "Vakar",
- "reportThisWeek": "Šią savaitę",
- "reportPreviousWeek": "Praėjusią savaitę",
- "reportThisMonth": "Šį mėnesį",
- "reportPreviousMonth": "Praėjusį mėnesį",
- "reportDeviceName": "Prietaiso vardas",
- "reportAverageSpeed": "Vidutinis greitis",
- "reportMaximumSpeed": "Maksimalus greitis",
- "reportEngineHours": "Variklio valandos",
- "reportDuration": "Trukmė",
- "reportStartDate": "Pradžios data",
- "reportStartTime": "Pradžios laikas",
- "reportStartAddress": "Pradžios adresas",
- "reportEndTime": "Pabaigos laikas",
- "reportEndAddress": "Pabaigos adresas",
- "reportSpentFuel": "Suvartoto kuro",
- "reportStartOdometer": "Odometras startas",
- "reportEndOdometer": "Odometras pabaiga",
- "statisticsTitle": "Statistika",
- "statisticsCaptureTime": "Užfiksuotas laikas",
- "statisticsActiveUsers": "Aktyvus vartotojai",
- "statisticsActiveDevices": "Aktyvūs prietaisai",
- "statisticsRequests": "Prašymai",
- "statisticsMessagesReceived": "Žinutė gauta",
- "statisticsMessagesStored": "Žinutė išsaugota",
- "statisticsGeocoder": "Geokoderio užklausos",
- "statisticsGeolocation": "Geolokacijos užklausos",
- "categoryArrow": "Rodyklė",
- "categoryDefault": "Numatytas",
- "categoryAnimal": "Gyvūnas",
- "categoryBicycle": "Dviratis",
- "categoryBoat": "Valtis",
- "categoryBus": "Autobusas",
- "categoryCar": "Automobilis",
- "categoryCamper": "Kemperis",
- "categoryCrane": "Kranas",
- "categoryHelicopter": "Sraigtasparnis",
- "categoryMotorcycle": "Motociklas",
- "categoryOffroad": "Bekelės transportas",
- "categoryPerson": "Asmuo",
- "categoryPickup": "Pikapas",
- "categoryPlane": "Lėktuvas",
- "categoryShip": "Laivas",
- "categoryTractor": "Traktorius",
- "categoryTrain": "Traukinys",
- "categoryTram": "Tramvajus",
- "categoryTrolleybus": "Troleibusas",
- "categoryTruck": "Vilkikas",
- "categoryVan": "Autobusiuskas",
- "categoryScooter": "Mopedas",
- "maintenanceStart": "Pradėti",
- "maintenancePeriod": "Periodas"
-} \ No newline at end of file
diff --git a/web/l10n/lv.json b/web/l10n/lv.json
deleted file mode 100644
index 5769fe30..00000000
--- a/web/l10n/lv.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Ielādē...",
- "sharedHide": "Paslēpt",
- "sharedSave": "Saglabāt",
- "sharedUpload": "Upload",
- "sharedSet": "Iestatīt",
- "sharedCancel": "Atcelt",
- "sharedCopy": "Copy",
- "sharedAdd": "Pievienot",
- "sharedEdit": "Rediģēt",
- "sharedRemove": "Dzēst",
- "sharedRemoveConfirm": "Izdzēst?",
- "sharedNoData": "Nav datu",
- "sharedSubject": "Subject",
- "sharedYes": "Jā",
- "sharedNo": "Nē",
- "sharedKm": "km",
- "sharedMi": "jū",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Stunda",
- "sharedMinute": "Minūte",
- "sharedSecond": "Sekunde",
- "sharedDays": "dienas",
- "sharedHours": "stundas",
- "sharedMinutes": "minūtes",
- "sharedDecimalDegrees": "Decimāldaļas",
- "sharedDegreesDecimalMinutes": "Decimālgrādu minūtes",
- "sharedDegreesMinutesSeconds": "Decimālgrādu sekundes",
- "sharedName": "Vārds",
- "sharedDescription": "Apraksts",
- "sharedSearch": "Meklēt",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geolaukums",
- "sharedGeofences": "Geolaukumi",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Paziņojumi",
- "sharedNotification": "Paziņojums",
- "sharedAttributes": "Vērtības",
- "sharedAttribute": "Vērtība",
- "sharedDrivers": "Vadītāji",
- "sharedDriver": "Vadītājs",
- "sharedArea": "Laukums",
- "sharedSound": "Paziņojuma skaņa",
- "sharedType": "Tips",
- "sharedDistance": "Attālums",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Litri",
- "sharedImpGallon": "Imperiālie galoni",
- "sharedUsGallon": "ASV galoni",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Saņemt kartes stāvokli",
- "sharedComputedAttribute": "Aprēķināmās vērtības",
- "sharedComputedAttributes": "Aprēķinātās vērtības",
- "sharedCheckComputedAttribute": "Pārbaudīt aprēķinātās vērtības",
- "sharedExpression": "Izteiksme",
- "sharedDevice": "Ierīce",
- "sharedTest": "Pārbaude",
- "sharedTestNotification": "Nosūtīt testa paziņojumu",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Kalendārs",
- "sharedCalendars": "Kalendāri",
- "sharedFile": "Fails",
- "sharedSearchDevices": "Meklēt ierīces",
- "sharedSortBy": "Kārtot pēc",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Izvēlieties failu",
- "sharedPhone": "Tālrunis",
- "sharedRequired": "Obligāts",
- "sharedPreferences": "Izvēlnes",
- "sharedPermissions": "Atļaujas",
- "sharedConnections": "Savienojumi",
- "sharedExtra": "Ekstra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Teksts",
- "sharedTypeNumber": "Skaitlis",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Laika zona",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Saglabatā komanda",
- "sharedSavedCommands": "Saglabātās komandas",
- "sharedNew": "Jauns...",
- "sharedShowAddress": "Rādīt adresi",
- "sharedShowDetails": "Vairāk detaļu",
- "sharedDisabled": "Atspējots",
- "sharedMaintenance": "Uzturēšana",
- "sharedDeviceAccumulators": "Akumulatori",
- "sharedAlarms": "Trauksmes",
- "sharedLocation": "Atrašanās vieta",
- "sharedImport": "Importēt",
- "sharedColumns": "Kolonnas",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Ātruma ierobežojums",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Maršruta Distance",
- "attributeReportIgnoreOdometer": "Ziņojums: Ignorēt Odometru",
- "attributeWebReportColor": "Web: Atskaites krāsa",
- "attributeDevicePassword": "Ierīces parole",
- "attributeDeviceImage": "Ierīces attēls",
- "attributeDeviceInactivityStart": "Ierīces Neaktivitātes Sākšana",
- "attributeDeviceInactivityPeriod": "Ierīces Neaktivitātes Periods",
- "attributeProcessingCopyAttributes": "Apstrāde: Kopē Atribūtus",
- "attributeColor": "Krāsa",
- "attributeWebLiveRouteLength": "Web: Reāllaika Ceļa Garums",
- "attributeWebSelectZoom": "Web: Palielināt Iezīmēto",
- "attributeWebMaxZoom": "Web: Maksimālais zooms",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "E-pasts: SMTP adrese ",
- "attributeMailSmtpPort": "E-pasts: SMTP Ports",
- "attributeMailSmtpStarttlsEnable": "E-pasts: Ieslēgt SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "E-pasts: Nepieciešams SMTP STARTTLS",
- "attributeMailSmtpSslEnable": "E-pasts: Iespējot SMTP SSL",
- "attributeMailSmtpSslTrust": "E-pasts: SMTP SSL Uzticams",
- "attributeMailSmtpSslProtocols": "E-pasts: SMTP SSL Protokoli",
- "attributeMailSmtpFrom": "E-pats: SMTP Forma",
- "attributeMailSmtpAuth": "E-pats: SMTP Autentif. Ieslēgta",
- "attributeMailSmtpUsername": "E-pats: SMTP Lietotājvārds",
- "attributeMailSmtpPassword": "E-pats: SMTP Parole",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Atslēgt notikumus",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Atslēgt vadītājus",
- "attributeUiDisableComputedAttributes": "UI: Atslēgt aprēķinātos atribūtus",
- "attributeUiDisableCalendars": "UI: Atslēgt kalendārus",
- "attributeUiDisableMaintenance": "UI: Atslegt Apkopi",
- "attributeUiHidePositionAttributes": "UI: Slēpt pozīcijas atribūtus",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Paziņojumu Žetoni",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Kļūda",
- "errorGeneral": "Kļūdaini parametri vai satur kļūdas",
- "errorConnection": "Savienojuma kļūda",
- "errorSocket": "Web socket savienojuma kļūda",
- "errorZero": "Nevar būt nulle",
- "userEmail": "E-pasts",
- "userPassword": "Parole",
- "userAdmin": "Administrators",
- "userRemember": "Atcerēties",
- "userExpirationTime": "Derīguma termiņš",
- "userDeviceLimit": "Ierīču Limits",
- "userUserLimit": "Lietotāju Limits",
- "userDeviceReadonly": "Tikai lasāma ierīce",
- "userLimitCommands": "Ierobežot komandas",
- "userDisableReports": "Atslēgt Atskaites",
- "userFixedEmail": "No Email Change",
- "userToken": "Zīme",
- "userDeleteAccount": "Dzēst Kontu",
- "userTemporary": "Temporary",
- "loginTitle": "Lietotājvārds",
- "loginLanguage": "Valoda",
- "loginReset": "Atiestatīt paroli",
- "loginRegister": "Reģistrēties",
- "loginLogin": "Ieiet",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Kļūdains e-pasts vai parole",
- "loginCreated": "Jauns lietotājs tika veiksmīgi reģistrēts ",
- "loginResetSuccess": "Pārbaudiet savu e-pastu",
- "loginUpdateSuccess": "Jaunā parole saglabāta",
- "loginLogout": "Iziet",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Ierīces un to statusi",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Ierīces",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifikators",
- "deviceModel": "Modelis",
- "deviceContact": "Kontakti",
- "deviceCategory": "Kategorija",
- "deviceLastUpdate": "Pēdējā atjaunošana",
- "deviceCommand": "Komanda",
- "deviceFollow": "Sekojiet",
- "deviceTotalDistance": "Kopējais attālums",
- "deviceStatus": "Statuss",
- "deviceStatusOnline": "Tiešsaistē",
- "deviceStatusOffline": "Bezsaistē",
- "deviceStatusUnknown": "Nezināms",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Grupa",
- "groupParent": "Grupa",
- "groupNoGroup": "Neviena grupa",
- "settingsTitle": "Iestatījumi",
- "settingsUser": "Konts",
- "settingsGroups": "Grupas",
- "settingsServer": "Server",
- "settingsUsers": "Lietotāji",
- "settingsDistanceUnit": "Attāluma mērvienība",
- "settingsAltitudeUnit": "Augstuma mērvienība",
- "settingsSpeedUnit": "Ātruma mērvienība",
- "settingsVolumeUnit": "Tilpuma mērvienība",
- "settingsTwelveHourFormat": "12-h Formāts",
- "settingsCoordinateFormat": "Koordinātu formāts",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Atskaites",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Ierīce",
- "reportGroup": "Grupa",
- "reportFrom": "No",
- "reportTo": "Līdz",
- "reportShow": "Parādīt",
- "reportClear": "Notīrīt",
- "linkGoogleMaps": "Google kartes",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Ielas skats",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Ierīces laiks",
- "positionServerTime": "Servera Laiks",
- "positionValid": "Derīgs",
- "positionAccuracy": "Precizitāte",
- "positionLatitude": "Platums",
- "positionLongitude": "Garums",
- "positionAltitude": "Augstums",
- "positionSpeed": "Ātrums",
- "positionCourse": "Kurss",
- "positionAddress": "Adrese",
- "positionProtocol": "Protokols",
- "positionDistance": "Attālums",
- "positionRpm": "RPM",
- "positionFuel": "Degviela",
- "positionPower": "Jauda",
- "positionBattery": "Baterija",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelīti",
- "positionSatVisible": "Redzamie satelīti",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Viesabonēšana",
- "positionEvent": "Notikums",
- "positionAlarm": "Trauksme",
- "positionStatus": "Statuss",
- "positionOdometer": "Odometrs",
- "positionServiceOdometer": "Servisa nobraukums",
- "positionTripOdometer": "Nobraukums",
- "positionHours": "Stundas",
- "positionSteps": "Soļi",
- "positionInput": "Ievade",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Izvade",
- "positionBatteryLevel": "Baterijas līmenis",
- "positionFuelConsumption": "Degvielas patēriņš",
- "positionRfid": "RFID",
- "positionVersionFw": "Programmatūras versija",
- "positionVersionHw": "Aparatūras versija",
- "positionIgnition": "Aizdedze",
- "positionFlags": "Marķieri",
- "positionCharge": "Lādējas",
- "positionIp": "IP",
- "positionArchive": "Arhīvs",
- "positionVin": "VIN",
- "positionApproximate": "Aptuvenais",
- "positionThrottle": "Akselerators",
- "positionMotion": "Kustība",
- "positionArmed": "Aizsargāts",
- "positionAcceleration": "Paātrinājums",
- "positionTemp": "Temperatūra",
- "positionDeviceTemp": "Ierīces Temperatūra",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operators",
- "positionCommand": "Komanda",
- "positionBlocked": "Bloķēts",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Ātrums",
- "positionObdOdometer": "ODB Nobraukums",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Vadītāja unikālais ID",
- "positionCard": "Card",
- "positionImage": "Attēls",
- "positionVideo": "Video",
- "positionAudio": "Skaņa",
- "serverTitle": "Servera iestatījumi ",
- "serverZoom": "Palielinājums",
- "serverRegistration": "Reģistrācija",
- "serverReadonly": "Tikai lasāms",
- "serverForceSettings": "Pāriestatīt Iestatījumus",
- "serverAnnouncement": "Paziņojums",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Karte",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Kartes slānis",
- "mapCustom": "Personalizēts (XYZ)",
- "mapCustomArcgis": "Personalizēts (ArcGIS)",
- "mapCustomLabel": "Personalizēta karte",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetKarte",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Karšu Atslēga",
- "mapBingRoad": "Bing Karšu Ceļi",
- "mapBingAerial": "Bing Karšu Apgabals",
- "mapBingHybrid": "Bing Hibrīdkarte",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Kartes",
- "mapYandexSat": "Yandex Satelliti",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Ielas",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satelīts",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here vienkāršā",
- "mapHereHybrid": "Here hibrīda",
- "mapHereSatellite": "Here satelītu",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Daudzstūris",
- "mapShapeCircle": "Aplis",
- "mapShapePolyline": "Lauzta līnija",
- "mapLiveRoutes": "Reāllaika Maršruti",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Pašreizējā atrašanās vieta",
- "mapPoiLayer": "POI Slānis",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Stāvoklis",
- "stateName": "Īpašības",
- "stateValue": "Vērtība",
- "commandTitle": "Komanda",
- "commandSend": "Sūtīt",
- "commandSent": "Komanda nosūtīta",
- "commandQueued": "Komanda ierindota",
- "commandUnit": "Vienība",
- "commandCustom": "Pielāgota komanda",
- "commandDeviceIdentification": "Ierīces Identifikācija",
- "commandPositionSingle": "Vienas Reizes Atskaite",
- "commandPositionPeriodic": "Periodiska Atskaite",
- "commandPositionStop": "Apturēt Atskaites",
- "commandEngineStop": "Motora Slāpēšana",
- "commandEngineResume": "Motora Startēšana",
- "commandAlarmArm": "Aktivizēt Trauksmi",
- "commandAlarmDisarm": "Izslēgt Trauksmi",
- "commandAlarmDismiss": "Atslēgt Paziņojumu",
- "commandSetTimezone": "Iestatīt Laika Zonu",
- "commandRequestPhoto": "Pieprasīt Fotoattēlu",
- "commandPowerOff": "Izslēgt Ierīci",
- "commandRebootDevice": "Pārstartēt Ierīci",
- "commandFactoryReset": "Sākotnējā režīma iestatīšana",
- "commandSendSms": "Nosūtīt Īsziņu",
- "commandSendUssd": "Nosūtīt USSD",
- "commandSosNumber": "Iestatīt SOS numuru",
- "commandSilenceTime": "Iestatīt Klusuma Laiku",
- "commandSetPhonebook": "Iestatīt Tālruņa Grāmatu",
- "commandVoiceMessage": "Balss Ziņojums",
- "commandOutputControl": "Izejas Kontrole",
- "commandVoiceMonitoring": "Balss uzraudzība",
- "commandSetAgps": "Uzstādīt AGPS",
- "commandSetIndicator": "Iestatīt Indikatoru",
- "commandConfiguration": "Konfigurācija",
- "commandGetVersion": "Saņemt versiju",
- "commandFirmwareUpdate": "Atjaunot programmatūru",
- "commandSetConnection": "Iestatīt savienojumu",
- "commandSetOdometer": "Iestatīt odometru",
- "commandGetModemStatus": "Saņemt modema statusu",
- "commandGetDeviceStatus": "Saņemt ierīces statusu",
- "commandSetSpeedLimit": "Iestatīt ātruma limitu",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Iestatīt akulumatora brīdinājumu",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Biežums",
- "commandTimezone": "Laika Joslas Nobīde",
- "commandMessage": "Ziņa",
- "commandRadius": "Rādiuss",
- "commandEnable": "Iespējot",
- "commandData": "Datums",
- "commandIndex": "Indekss",
- "commandPhone": "Telefona Numurs",
- "commandServer": "Serveris",
- "commandPort": "Ports",
- "eventAll": "Visi Notikumi",
- "eventDeviceOnline": "Statuss aktīvs",
- "eventDeviceUnknown": "Statuss nezināms",
- "eventDeviceOffline": "Statuss bezsaistē",
- "eventDeviceInactive": "Ierīce neaktīva",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Ierīce pārvietojas",
- "eventDeviceStopped": "Ierīce apturēta",
- "eventDeviceOverspeed": "Ātruma limits pārsniegts",
- "eventDeviceFuelDrop": "Degvielas kritums",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Komandas rezultāts",
- "eventGeofenceEnter": "Ienāca apgabalā",
- "eventGeofenceExit": "Pameta apgabalu",
- "eventAlarm": "Trauksme",
- "eventIgnitionOn": "Aizdedze Iesl.",
- "eventIgnitionOff": "Aizdedze Izsl.",
- "eventMaintenance": "Nepieciešama tehniskā apkope",
- "eventTextMessage": "Saņemta īsziņa",
- "eventDriverChanged": "Mainījies vadītājs",
- "eventMedia": "Media",
- "eventsScrollToLast": "Ritināt Uz Pēdējo",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Vispārēji",
- "alarmSos": "SOS",
- "alarmVibration": "Vibrācija",
- "alarmMovement": "Kustība",
- "alarmLowspeed": "Zems Ātrums",
- "alarmOverspeed": "Ātruma pārsniegšana",
- "alarmFallDown": "Savienojuma Pārrāvums",
- "alarmLowPower": "Zema Enerģija",
- "alarmLowBattery": "Tukša Baterija",
- "alarmFault": "Kļūda",
- "alarmPowerOff": "Barošana Izsl.",
- "alarmPowerOn": "Barošana Iesl.",
- "alarmDoor": "Durvis",
- "alarmLock": "Slēgt",
- "alarmUnlock": "Atslēgt",
- "alarmGeofence": "Apgabals",
- "alarmGeofenceEnter": "Ienākšana Apgabalā",
- "alarmGeofenceExit": "Apgabala pamešana",
- "alarmGpsAntennaCut": "GPS Antena Atvienota",
- "alarmAccident": "Negadījums",
- "alarmTow": "Vilkšana",
- "alarmIdle": "Tukšgaita",
- "alarmHighRpm": "Augsti Apgriezieni",
- "alarmHardAcceleration": "Straujšs paātrinājums",
- "alarmHardBraking": "Strauja Bremzēšana",
- "alarmHardCornering": "Strauja Manevrēšana",
- "alarmLaneChange": "Joslas Maiņa",
- "alarmFatigueDriving": "Neadekvāta Braukšana",
- "alarmPowerCut": "Barošana Noslēgta",
- "alarmPowerRestored": "Barošana Atjaunota",
- "alarmJamming": "Sastrēgums",
- "alarmTemperature": "Temperatūra",
- "alarmParking": "Stāvvieta",
- "alarmBonnet": "Motora pārsegs",
- "alarmFootBrake": "Kājas bremze",
- "alarmFuelLeak": "Degvielas noplūde",
- "alarmTampering": "Iespaido",
- "alarmRemoving": "Noņem",
- "notificationType": "Ziņojuma Tips",
- "notificationAlways": "Visas ierīces",
- "notificationNotificators": "Kanāli",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "e-pasts",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Atkārtot",
- "reportCombined": "Combined",
- "reportRoute": "Maršruts",
- "reportEvents": "Notikumi",
- "reportTrips": "Braucieni",
- "reportStops": "Pieturas",
- "reportSummary": "Kopsavilkums",
- "reportDaily": "Dienas Kopsavilkums",
- "reportChart": "Grafiks",
- "reportConfigure": "Konfigurēt",
- "reportEventTypes": "Notikumu Veidi",
- "reportChartType": "Grafika Veids",
- "reportShowMarkers": "Rādīt Marķierus",
- "reportExport": "Eksportēt",
- "reportEmail": "e-pasta Ziņojums",
- "reportSchedule": "Schedule",
- "reportPeriod": "Periods",
- "reportCustom": "Pielāgoti",
- "reportToday": "Šodien",
- "reportYesterday": "Vakar",
- "reportThisWeek": "Šonedēļ",
- "reportPreviousWeek": "Iepriekšējā nedēļa",
- "reportThisMonth": "Šis mēnesis",
- "reportPreviousMonth": "Iepriekšējais mēnesis",
- "reportDeviceName": "Ierīces Nosaukums",
- "reportAverageSpeed": "Vidējais Ātrums",
- "reportMaximumSpeed": "Maksimālais Ātrums",
- "reportEngineHours": "Motorstundas",
- "reportDuration": "Ilgums",
- "reportStartDate": "Sākuma Datums",
- "reportStartTime": "Sākuma Laiks",
- "reportStartAddress": "Sākuma Adrese",
- "reportEndTime": "Beigu Laiks",
- "reportEndAddress": "Beigu Adrese",
- "reportSpentFuel": "Patērētā Degviela",
- "reportStartOdometer": "Odometra sākums",
- "reportEndOdometer": "Odometra beigas",
- "statisticsTitle": "Statistika",
- "statisticsCaptureTime": "Uzņemšanas Laiks",
- "statisticsActiveUsers": "Aktīvie Lietotāji",
- "statisticsActiveDevices": "Aktīvās Ierīces",
- "statisticsRequests": "Pieprasījumi",
- "statisticsMessagesReceived": "Saņemtie Ziņojumi",
- "statisticsMessagesStored": "Saglabātie Ziņojumi",
- "statisticsGeocoder": "Geocoder Pieprasījumi",
- "statisticsGeolocation": "Atrašanās Vietu Pieprasījumi",
- "categoryArrow": "Bultiņa",
- "categoryDefault": "Noklusējums",
- "categoryAnimal": "Dzīvnieks",
- "categoryBicycle": "Velosipēds",
- "categoryBoat": "Laiva",
- "categoryBus": "Autobuss",
- "categoryCar": "Automašīna",
- "categoryCamper": "Camper",
- "categoryCrane": "Celtnis",
- "categoryHelicopter": "Helikopters",
- "categoryMotorcycle": "Motocikls",
- "categoryOffroad": "Bezceļnieks",
- "categoryPerson": "Persona",
- "categoryPickup": "Pikaps",
- "categoryPlane": "Lidmašīna",
- "categoryShip": "Kuģis",
- "categoryTractor": "Traktors",
- "categoryTrain": "Vilciens",
- "categoryTram": "Tramvajs",
- "categoryTrolleybus": "Trolejbuss",
- "categoryTruck": "Smagā mašīna",
- "categoryVan": "Busiņš",
- "categoryScooter": "Skrejritenis",
- "maintenanceStart": "Sākt",
- "maintenancePeriod": "Periods"
-} \ No newline at end of file
diff --git a/web/l10n/mk.json b/web/l10n/mk.json
deleted file mode 100644
index 4aa2119e..00000000
--- a/web/l10n/mk.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Вчитување...",
- "sharedHide": "Сокриј",
- "sharedSave": "Зачувај",
- "sharedUpload": "Прикачи",
- "sharedSet": "Постави",
- "sharedCancel": "Откажи",
- "sharedCopy": "Копирај",
- "sharedAdd": "Додади",
- "sharedEdit": "Уреди",
- "sharedRemove": "Отстрани",
- "sharedRemoveConfirm": "Дали да се отстрани предметот?",
- "sharedNoData": "Нема податоци",
- "sharedSubject": "Тема",
- "sharedYes": "Да",
- "sharedNo": "Не",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Час",
- "sharedMinute": "Минута",
- "sharedSecond": "Секунда",
- "sharedDays": "денови",
- "sharedHours": "часови",
- "sharedMinutes": "минути",
- "sharedDecimalDegrees": "Децимални Степени",
- "sharedDegreesDecimalMinutes": "Степени Децимални Минути",
- "sharedDegreesMinutesSeconds": "Степени Минути Секунди",
- "sharedName": "Име",
- "sharedDescription": "Опис",
- "sharedSearch": "Пребарување",
- "sharedIconScale": "Размер на икони",
- "sharedGeofence": "Географска зона",
- "sharedGeofences": "Географски зони",
- "sharedCreateGeofence": "Креирај Географска зона",
- "sharedNotifications": "Известувања",
- "sharedNotification": "Известување",
- "sharedAttributes": "Атрибути",
- "sharedAttribute": "Атрибут",
- "sharedDrivers": "Возачи",
- "sharedDriver": "Возач",
- "sharedArea": "Област",
- "sharedSound": "Звук за известување",
- "sharedType": "Тип",
- "sharedDistance": "Растојание",
- "sharedHourAbbreviation": "ч",
- "sharedMinuteAbbreviation": "м",
- "sharedSecondAbbreviation": "с",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "I",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Литар",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "л/ч",
- "sharedGetMapState": "Состојба на Мапа",
- "sharedComputedAttribute": "Пресметан Атрибут",
- "sharedComputedAttributes": "Пресметани Атрибути",
- "sharedCheckComputedAttribute": "Провери го пресметаниот атрибут",
- "sharedExpression": "Израз",
- "sharedDevice": "Уред",
- "sharedTest": "Тест",
- "sharedTestNotification": "Испрати тест известување",
- "sharedTestNotificators": "Тест Канали",
- "sharedTestExpression": "Тестирај Изразување",
- "sharedCalendar": "Календар",
- "sharedCalendars": "Календари",
- "sharedFile": "Фајл",
- "sharedSearchDevices": "Пребарај Уреди",
- "sharedSortBy": "Подреди по",
- "sharedFilterMap": "Филтер на Мапа",
- "sharedSelectFile": "Избери фајл",
- "sharedPhone": "Телефон",
- "sharedRequired": "Задолжително",
- "sharedPreferences": "Подесувања",
- "sharedPermissions": "Дозволи",
- "sharedConnections": "Конекции",
- "sharedExtra": "Екстра",
- "sharedPrimary": "Примарен",
- "sharedSecondary": "Секундарен",
- "sharedTypeString": "Стринг",
- "sharedTypeNumber": "Број",
- "sharedTypeBoolean": "Булеан",
- "sharedTimezone": "Временска зона",
- "sharedInfoTitle": "Инфо",
- "sharedSavedCommand": "Зачувана Команда",
- "sharedSavedCommands": "Зачувани Команди",
- "sharedNew": "Нов...",
- "sharedShowAddress": "Прикажи Адреса",
- "sharedShowDetails": "Повеќе Детали",
- "sharedDisabled": "Оневозможено",
- "sharedMaintenance": "Одржување",
- "sharedDeviceAccumulators": "Акумулатори",
- "sharedAlarms": "Аларми",
- "sharedLocation": "Локација",
- "sharedImport": "Импортирај",
- "sharedColumns": "Колони",
- "sharedDropzoneText": "Повлечи фајл овде или кликни",
- "sharedLogs": "Логови",
- "sharedLink": "Линк",
- "calendarSimple": "Едноставно",
- "calendarRecurrence": "Повторување",
- "calendarOnce": "Еднаш",
- "calendarDaily": "Дневно",
- "calendarWeekly": "Неделно",
- "calendarMonthly": "Месечно",
- "calendarDays": "Денови",
- "calendarSunday": "Недела",
- "calendarMonday": "Понеделник",
- "calendarTuesday": "Вторник",
- "calendarWednesday": "Среда",
- "calendarThursday": "Четврток",
- "calendarFriday": "Петок",
- "calendarSaturday": "Сабота",
- "attributeShowGeofences": "Прикажи Географски зони",
- "attributeSpeedLimit": "Ограничување на брзината",
- "attributeFuelDropThreshold": "Граница на прелиено гориво",
- "attributeFuelIncreaseThreshold": "Граница на надополнето гориво",
- "attributePolylineDistance": "Повеќелиниска оддалеченост",
- "attributeReportIgnoreOdometer": "Извештај: Игнорирај го одометарот",
- "attributeWebReportColor": "Веб: Боја на извештај",
- "attributeDevicePassword": "Лозинка на уредот",
- "attributeDeviceImage": "Слика на уредот",
- "attributeDeviceInactivityStart": "Почеток на неактивност на уредот",
- "attributeDeviceInactivityPeriod": "Период на неактивност на уредот",
- "attributeProcessingCopyAttributes": "Процесирање: Копирање на атрибути",
- "attributeColor": "Боја",
- "attributeWebLiveRouteLength": "Веб: Должина на рута",
- "attributeWebSelectZoom": "Веб: Зумирај го селектираното",
- "attributeWebMaxZoom": "Веб: Максимално зумирање",
- "attributeTelegramChatId": "Телеграм ID",
- "attributePushoverUserKey": "Прoследи кориснички клуч",
- "attributePushoverDeviceNames": "Проследи ги имињата на уредите",
- "attributeMailSmtpHost": "Меил: SMTP хост",
- "attributeMailSmtpPort": "Меил: SMTP порт",
- "attributeMailSmtpStarttlsEnable": "Меил: Овозможи SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "Меил: SMTP STARTTLS е потребен",
- "attributeMailSmtpSslEnable": "Меил: Овозможи SMTP SSL",
- "attributeMailSmtpSslTrust": "Меил: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Меил: SMTP SSL протоколи",
- "attributeMailSmtpFrom": "Меил: SMTP Испраќач",
- "attributeMailSmtpAuth": "Меил: Овозможи SMTP автентикација",
- "attributeMailSmtpUsername": "Меил: SMTP корисничко име",
- "attributeMailSmtpPassword": "Меил: SMTP лозинка",
- "attributeUiDisableSavedCommands": "Исклучи зачувани команди",
- "attributeUiDisableAttributes": "UI: Оневозможи атрибути",
- "attributeUiDisableGroups": "UI: Оневозможи групи",
- "attributeUiDisableEvents": "UI: Оневозможи настани",
- "attributeUiDisableVehicleFeatures": "UI: Оневозможи карактеристики на возила",
- "attributeUiDisableDrivers": "UI: Оневозможи возачи",
- "attributeUiDisableComputedAttributes": "UI: Оневозможи пресметани атрибути",
- "attributeUiDisableCalendars": "UI: Оневозможи календари",
- "attributeUiDisableMaintenance": "UI: Оневозможи одржување",
- "attributeUiHidePositionAttributes": "UI: Сокриј атрибути на позиција",
- "attributeUiDisableLoginLanguage": "UI: Оневозможи промена на јазик при најава",
- "attributeNotificationTokens": "Токени за известување",
- "attributePopupInfo": "Popup инфо",
- "errorTitle": "Грешка",
- "errorGeneral": "Невалидни параметри или кршење на ограничувањето",
- "errorConnection": "Грешка во комуникација",
- "errorSocket": "Web socket грешка во комуникација",
- "errorZero": "Не може да биди нула",
- "userEmail": "e-mail",
- "userPassword": "Лозинка",
- "userAdmin": "Администратор",
- "userRemember": "Запамти",
- "userExpirationTime": "Истекува на",
- "userDeviceLimit": "Максимален број на уреди",
- "userUserLimit": "Максимален број на корисници",
- "userDeviceReadonly": "Уредот е Readonly",
- "userLimitCommands": "Ограничи команди",
- "userDisableReports": "Оневозможи извештаи",
- "userFixedEmail": "Забрани промена на e-mail",
- "userToken": "Токен",
- "userDeleteAccount": "Избриши Акаунт",
- "userTemporary": "Привремено",
- "loginTitle": "Најава",
- "loginLanguage": "Јазик",
- "loginReset": "Ресетирај лозинка",
- "loginRegister": "Регистрација",
- "loginLogin": "Најава",
- "loginOpenId": "Најава со OpenID",
- "loginFailed": "невалидна e-mail адреса или лозинка",
- "loginCreated": "Нов корисник е регистриран",
- "loginResetSuccess": "Проверете ја вашата e-mail адреса",
- "loginUpdateSuccess": "Новата лозинка е поставена",
- "loginLogout": "Одјава",
- "loginLogo": "Лого",
- "loginTotpCode": "Еднократен код за лозинка",
- "loginTotpKey": "Еднократен клуч за лозинка",
- "devicesAndState": "Уреди и статус",
- "deviceSelected": "Избран уред",
- "deviceTitle": "Уреди",
- "devicePrimaryInfo": "Назив на уред",
- "deviceSecondaryInfo": "Детали за уред",
- "deviceIdentifier": "Идентификатор",
- "deviceModel": "Модел",
- "deviceContact": "Контакт",
- "deviceCategory": "Категорија",
- "deviceLastUpdate": "Последна промена",
- "deviceCommand": "Команда",
- "deviceFollow": "Прати",
- "deviceTotalDistance": "Вкупно растојание",
- "deviceStatus": "Статус",
- "deviceStatusOnline": "Достапен",
- "deviceStatusOffline": "Недостапен",
- "deviceStatusUnknown": "Непознато",
- "deviceRegisterFirst": "Регистрирај го твојот прв уред",
- "deviceIdentifierHelp": "IMEI, сериски број или друг ID. Треба да биде ист со уредот кој се поврзува на сервер",
- "deviceShare": "Сподели уред",
- "groupDialog": "Група",
- "groupParent": "Група",
- "groupNoGroup": "Нема група",
- "settingsTitle": "Подесувања",
- "settingsUser": "Акаунт",
- "settingsGroups": "Групи",
- "settingsServer": "Сервер",
- "settingsUsers": "Корисници",
- "settingsDistanceUnit": "Единица за растојание",
- "settingsAltitudeUnit": "Единица за висина",
- "settingsSpeedUnit": "Единица за брзина",
- "settingsVolumeUnit": "Единица за волумен",
- "settingsTwelveHourFormat": "12-часовен формат",
- "settingsCoordinateFormat": "Формат за координати",
- "settingsServerVersion": "Верзија на сервер",
- "settingsAppVersion": "Верзија на апликација",
- "settingsConnection": "Конекција",
- "settingsDarkMode": "Dark мод",
- "settingsTotpEnable": "Овозможи еднократна лозинка",
- "settingsTotpForce": "Форсирај еднократна лозинка",
- "settingsServiceWorkerUpdateInterval": "Интервал на ажурирање за ServiceWorker",
- "settingsUpdateAvailable": "Достапна е нова верзија",
- "settingsSupport": "Поддршка",
- "reportTitle": "Извештаи",
- "reportScheduled": "Редовни извештаи",
- "reportDevice": "Уред",
- "reportGroup": "Група",
- "reportFrom": "Од",
- "reportTo": "До",
- "reportShow": "Прикажи",
- "reportClear": "Избриши",
- "linkGoogleMaps": "Google мапи",
- "linkAppleMaps": "Apple мапи",
- "linkStreetView": "Уличен поглед мод",
- "positionFixTime": "Време за фиксирање",
- "positionDeviceTime": "Време на уредот",
- "positionServerTime": "Време на сервер",
- "positionValid": "Валидно",
- "positionAccuracy": "Прецизност",
- "positionLatitude": "Географска ширина",
- "positionLongitude": "Географска должина",
- "positionAltitude": "Висина",
- "positionSpeed": "Брзина",
- "positionCourse": "Правец",
- "positionAddress": "Адреса",
- "positionProtocol": "Протокол",
- "positionDistance": "Растојание",
- "positionRpm": "Обртаи",
- "positionFuel": "Гориво",
- "positionPower": "Напојување",
- "positionBattery": "Батерија",
- "positionRaw": "Сирови податоци",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Сателити",
- "positionSatVisible": "Видливи сателити",
- "positionRssi": "RSSI",
- "positionGps": "ГПС",
- "positionRoaming": "Роаминг",
- "positionEvent": "Настан",
- "positionAlarm": "Аларм",
- "positionStatus": "Статус",
- "positionOdometer": "Одометар",
- "positionServiceOdometer": "Сервисен одометар",
- "positionTripOdometer": "Патен одометар",
- "positionHours": "Часови",
- "positionSteps": "Чекори",
- "positionInput": "Влез",
- "positionHeartRate": "Пулс",
- "positionOutput": "Излез",
- "positionBatteryLevel": "Ниво на батерија",
- "positionFuelConsumption": "Потрошувачка на гориво",
- "positionRfid": "RFID",
- "positionVersionFw": "Верзија на фирмвер",
- "positionVersionHw": "Верзија на хардвер",
- "positionIgnition": "Контакт-IGN",
- "positionFlags": "Ознаки",
- "positionCharge": "Полнење",
- "positionIp": "IP",
- "positionArchive": "Архива",
- "positionVin": "Бр. шасија",
- "positionApproximate": "Приближно",
- "positionThrottle": "Гас",
- "positionMotion": "Движење",
- "positionArmed": "Активен",
- "positionAcceleration": "Забрзување",
- "positionTemp": "Температура",
- "positionDeviceTemp": "Температура на уред",
- "positionCoolantTemp": "Температура на разладен елемент",
- "positionOperator": "Оператор",
- "positionCommand": "Команда",
- "positionBlocked": "Блокирано",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Брзина",
- "positionObdOdometer": "OBD одометар",
- "positionDrivingTime": "Време на возење",
- "positionDriverUniqueId": "ID на возач",
- "positionCard": "Картичка",
- "positionImage": "Слика",
- "positionVideo": "Видео",
- "positionAudio": "Аудио",
- "serverTitle": "Подесувања за сервер",
- "serverZoom": "Зумирање",
- "serverRegistration": "Регистрација",
- "serverReadonly": "Само преглед",
- "serverForceSettings": "Форсирани поставки",
- "serverAnnouncement": "Објава",
- "serverName": "Име на сервер",
- "serverDescription": "Опис на сервер",
- "serverColorPrimary": "Примарна боја",
- "serverColorSecondary": "Секундарна боја",
- "serverLogo": "Слика за лого",
- "serverLogoInverted": "Инверзна слика за лого",
- "serverChangeDisable": "Оневозможи промена на сервер",
- "serverDisableShare": "Оневозможи споделување на уреди",
- "mapTitle": "Мапа",
- "mapActive": "Активни мапи",
- "mapOverlay": "Преклопени мапи",
- "mapOverlayCustom": "Прилагодено преклопување",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API клуч",
- "mapOpenWeatherClouds": "OpenWeather облаци",
- "mapOpenWeatherPrecipitation": "OpenWeather врнежи",
- "mapOpenWeatherPressure": "OpenWeather атм. притисок",
- "mapOpenWeatherWind": "OpenWeather Ветер",
- "mapOpenWeatherTemperature": "OpenWeather Температура",
- "mapLayer": "Тип на мапа",
- "mapCustom": "Прилагодено (XYZ)",
- "mapCustomArcgis": "Прилагодено (ArcGIS)",
- "mapCustomLabel": "Прилагодена мапа",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google патишта",
- "mapGoogleHybrid": "Google хибрид",
- "mapGoogleSatellite": "Google сателити",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps клуч",
- "mapBingRoad": "Bing Maps патишта",
- "mapBingAerial": "Bing Maps воздушна",
- "mapBingHybrid": "Bing Maps хибрид",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex сателит",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox сателит",
- "mapMapboxKey": "Mapbox Токен за пристап",
- "mapMapTilerBasic": "MapTiler основна",
- "mapMapTilerHybrid": "MapTiler хибрид",
- "mapMapTilerKey": "MapTiler API клуч",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ токен за пристап",
- "mapTomTomBasic": "TomTom основна",
- "mapTomTomFlow": "TomTom сообраќај",
- "mapTomTomIncidents": "TomTom инциденти во сообраќај",
- "mapTomTomKey": "TomTom API клуч",
- "mapHereBasic": "Here основна",
- "mapHereHybrid": "Here хибрид",
- "mapHereSatellite": "Here сателит",
- "mapHereFlow": "Here сообраќај",
- "mapHereKey": "Here API клуч",
- "mapShapePolygon": "Полигон",
- "mapShapeCircle": "Круг",
- "mapShapePolyline": "Полилинија",
- "mapLiveRoutes": "Рути во живо",
- "mapDirection": "Покажи насоки",
- "mapCurrentLocation": "Моментална локација",
- "mapPoiLayer": "Слој за точки од интерес",
- "mapClustering": "Организација на маркери",
- "mapOnSelect": "Прикажи мапа при селекција",
- "mapDefault": "Предефинирана мапа",
- "stateTitle": "Состојба",
- "stateName": "Атрибут",
- "stateValue": "Вредност",
- "commandTitle": "Команда",
- "commandSend": "Испрати",
- "commandSent": "Командата е испратена",
- "commandQueued": "Командата е на чекање",
- "commandUnit": "Единица",
- "commandCustom": "Прилагодена команда",
- "commandDeviceIdentification": "Идентификација на уред",
- "commandPositionSingle": "Единечно известување",
- "commandPositionPeriodic": "Периодично известување",
- "commandPositionStop": "Исклучи известување",
- "commandEngineStop": "Изгаснат мотор",
- "commandEngineResume": "Мотор во работа",
- "commandAlarmArm": "Активирај аларм",
- "commandAlarmDisarm": "Деактивирај аларм",
- "commandAlarmDismiss": "Откажи аларм",
- "commandSetTimezone": "Постави временска зона",
- "commandRequestPhoto": "Побарај фотографија",
- "commandPowerOff": "Исклучи уред",
- "commandRebootDevice": "Рестартирај уред",
- "commandFactoryReset": "Фабрични подесувања",
- "commandSendSms": "Испрати СМС",
- "commandSendUssd": "Испрати USSD",
- "commandSosNumber": "Постави SOS број",
- "commandSilenceTime": "Постави тивко време",
- "commandSetPhonebook": "Постави Контакти",
- "commandVoiceMessage": "Говорна порака",
- "commandOutputControl": "Контрола на излез",
- "commandVoiceMonitoring": "Гласовен мониторинг",
- "commandSetAgps": "Постави АГПС",
- "commandSetIndicator": "Постави индикатор",
- "commandConfiguration": "Конфигурација",
- "commandGetVersion": "Провери верзија",
- "commandFirmwareUpdate": "Надградба на фирмвер",
- "commandSetConnection": "Постави конекција",
- "commandSetOdometer": "Постави одометар",
- "commandGetModemStatus": "Провери статус на модем",
- "commandGetDeviceStatus": "Провери статус на уред",
- "commandSetSpeedLimit": "Постави ограничување на брзина",
- "commandModePowerSaving": "Економичен мод",
- "commandModeDeepSleep": "Deep Sleep мод",
- "commandAlarmGeofence": "Постави аларм за географска зона",
- "commandAlarmBattery": "Постави аларм за батерија",
- "commandAlarmSos": "Постави СОС аларм",
- "commandAlarmRemove": "Поставки за бришење на аларм",
- "commandAlarmClock": "Постави временски аларм",
- "commandAlarmSpeed": "Постави аларм за брзина",
- "commandAlarmFall": "Постави аларм за пад",
- "commandAlarmVibration": "Постави аларм за вибрации",
- "commandFrequency": "Фреквенција",
- "commandTimezone": "Отстапување од временска зона",
- "commandMessage": "Порака",
- "commandRadius": "Радиус",
- "commandEnable": "Овозможи",
- "commandData": "Податоци",
- "commandIndex": "Индекс",
- "commandPhone": "Телефонски број",
- "commandServer": "Сервер",
- "commandPort": "Порт",
- "eventAll": "Сите настани",
- "eventDeviceOnline": "Статус вклучен",
- "eventDeviceUnknown": "Статус напознат",
- "eventDeviceOffline": "Статус исклучен",
- "eventDeviceInactive": "Уредот е неактивен",
- "eventQueuedCommandSent": "Испратена команда на чекање",
- "eventDeviceMoving": "Уредот е во движење",
- "eventDeviceStopped": "Уредот е запрен",
- "eventDeviceOverspeed": "Брзината е над дозволената",
- "eventDeviceFuelDrop": "Пад на ниво на гориво",
- "eventDeviceFuelIncrease": "Дотур на гориво",
- "eventCommandResult": "Статус од команда",
- "eventGeofenceEnter": "Влез во географска зона",
- "eventGeofenceExit": "Излез од географска зона",
- "eventAlarm": "Аларм",
- "eventIgnitionOn": "Вклучен контакт-IGN",
- "eventIgnitionOff": "Исклучен контакт-IGN",
- "eventMaintenance": "Потребно е да се изврши одржување",
- "eventTextMessage": "Примена е текст порака",
- "eventDriverChanged": "Променет возач",
- "eventMedia": "Media",
- "eventsScrollToLast": "Прелистај до последна",
- "eventsSoundEvents": "Звучни настани",
- "eventsSoundAlarms": "звучни аларми",
- "alarmGeneral": "Општо",
- "alarmSos": "СОС",
- "alarmVibration": "Вибрација",
- "alarmMovement": "Движење",
- "alarmLowspeed": "Мала брзина",
- "alarmOverspeed": "Прекорачување на брзината",
- "alarmFallDown": "Пад",
- "alarmLowPower": "Слаб напон",
- "alarmLowBattery": "Ниско ниво на батерија",
- "alarmFault": "дефект, грешка",
- "alarmPowerOff": "Исклучи",
- "alarmPowerOn": "Уклучи",
- "alarmDoor": "Врата",
- "alarmLock": "Заклучи",
- "alarmUnlock": "Отклучи",
- "alarmGeofence": "Географска зона",
- "alarmGeofenceEnter": "Влез во географска зона",
- "alarmGeofenceExit": "Излез од географска зона",
- "alarmGpsAntennaCut": "ГПС антената е исклучена",
- "alarmAccident": "Несреќа",
- "alarmTow": "Влечи",
- "alarmIdle": "Неутрална брзина-лер",
- "alarmHighRpm": "Високи обртаи",
- "alarmHardAcceleration": "Нагло забрзување",
- "alarmHardBraking": "Нагло кочење",
- "alarmHardCornering": "Нагло свртување",
- "alarmLaneChange": "Промена на траса",
- "alarmFatigueDriving": "Возење со замор",
- "alarmPowerCut": "Прекин на напојување",
- "alarmPowerRestored": "Напојувањето е вратено во функција",
- "alarmJamming": "Блокирање",
- "alarmTemperature": "Температура",
- "alarmParking": "Паркирање",
- "alarmBonnet": "Хауба",
- "alarmFootBrake": "Кочница",
- "alarmFuelLeak": "Истекување на гориво",
- "alarmTampering": "Манипулирање",
- "alarmRemoving": "Отстранување",
- "notificationType": "Тип на известување",
- "notificationAlways": "Сите уреди",
- "notificationNotificators": "Канали",
- "notificatorCommand": "Команда",
- "notificatorWeb": "Веб",
- "notificatorMail": "е-mail",
- "notificatorSms": "СМС",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Телеграм",
- "notificatorPushover": "Проследи",
- "reportReplay": "Репродукција",
- "reportCombined": "Комбинирано",
- "reportRoute": "Рута",
- "reportEvents": "Настани",
- "reportTrips": "Патувања",
- "reportStops": "Застанувања",
- "reportSummary": "Преглед",
- "reportDaily": "Дневен преглед",
- "reportChart": "Графикон",
- "reportConfigure": "Конфигурирај",
- "reportEventTypes": "Типови на настани",
- "reportChartType": "Тип на графикон",
- "reportShowMarkers": "Покажи маркери",
- "reportExport": "Извези",
- "reportEmail": "Извештај по е-mail",
- "reportSchedule": "Распоред",
- "reportPeriod": "Период",
- "reportCustom": "Прилагодено",
- "reportToday": "Денес",
- "reportYesterday": "Вчера",
- "reportThisWeek": "Тековна седмица",
- "reportPreviousWeek": "Претходна седмица",
- "reportThisMonth": "Тековен месец",
- "reportPreviousMonth": "Претходен месец",
- "reportDeviceName": "Име на уред",
- "reportAverageSpeed": "Просечна брзина",
- "reportMaximumSpeed": "Максимална брзина",
- "reportEngineHours": "Работни саати",
- "reportDuration": "Времетраење",
- "reportStartDate": "Почетен датум",
- "reportStartTime": "Почетно време",
- "reportStartAddress": "Почетна адреса",
- "reportEndTime": "Крајно време",
- "reportEndAddress": "Крајна адреса",
- "reportSpentFuel": "Потрошено гориво",
- "reportStartOdometer": "Почетна километража",
- "reportEndOdometer": "Крајна километража",
- "statisticsTitle": "Статистики",
- "statisticsCaptureTime": "Време на сликање",
- "statisticsActiveUsers": "Активни корисници",
- "statisticsActiveDevices": "Активни уреди",
- "statisticsRequests": "Барања",
- "statisticsMessagesReceived": "Примени пораки",
- "statisticsMessagesStored": "Сочувани пораки",
- "statisticsGeocoder": "барања од геокодер",
- "statisticsGeolocation": "барања од геолокација",
- "categoryArrow": "Стрелка",
- "categoryDefault": "Основно",
- "categoryAnimal": "Животно",
- "categoryBicycle": "Велосипед",
- "categoryBoat": "Чамец",
- "categoryBus": "Автобус",
- "categoryCar": "Автомобил",
- "categoryCamper": "Кампер",
- "categoryCrane": "Кран",
- "categoryHelicopter": "Хеликоптер",
- "categoryMotorcycle": "Моторцикл",
- "categoryOffroad": "Теренец",
- "categoryPerson": "Личност",
- "categoryPickup": "Пикап",
- "categoryPlane": "Авион",
- "categoryShip": "Брод",
- "categoryTractor": "Трактор",
- "categoryTrain": "Воз",
- "categoryTram": "Трамвај",
- "categoryTrolleybus": "Тролејбус",
- "categoryTruck": "Камион",
- "categoryVan": "Комбе",
- "categoryScooter": "Скутер",
- "maintenanceStart": "Почеток",
- "maintenancePeriod": "Период"
-} \ No newline at end of file
diff --git a/web/l10n/ml.json b/web/l10n/ml.json
deleted file mode 100644
index 40dde8f2..00000000
--- a/web/l10n/ml.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "ലോഡുചെയ്യുന്നു ..",
- "sharedHide": "മറയ്ക്കുക",
- "sharedSave": "സേവ്",
- "sharedUpload": "Upload",
- "sharedSet": "സെറ്റ്",
- "sharedCancel": "റദ്ദാക്കുക",
- "sharedCopy": "Copy",
- "sharedAdd": "ചേര്‍ക്കുക",
- "sharedEdit": "തിരുത്തുക",
- "sharedRemove": "നീക്കം ചെയ്യുക",
- "sharedRemoveConfirm": "ഐറ്റം നീക്കം ചെയ്യട്ടെ ?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "കി.മീ.",
- "sharedMi": "മൈൽ",
- "sharedNmi": "നൗട്ടിക്കൽ മൈൽ",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "കനോട്സ്",
- "sharedKmh": "കിലോമീറ്റർ /മണിക്കൂർ",
- "sharedMph": "മൈൽസ് / മണിക്കൂർ",
- "sharedHour": "മണിക്കൂർ",
- "sharedMinute": "മിനിറ്റ്",
- "sharedSecond": "സെക്കന്റ്",
- "sharedDays": "ദിവസങ്ങൾ ",
- "sharedHours": "മണിക്കൂറുകൾ",
- "sharedMinutes": "മിനിറ്റ് ",
- "sharedDecimalDegrees": "ദശാംശ ഡിഗ്രി",
- "sharedDegreesDecimalMinutes": "ഡിഗ്രി ദശാംശ മിനിറ്റ് ",
- "sharedDegreesMinutesSeconds": "ഡിഗ്രി മിനിറ്റ് സെക്കൻഡ് ",
- "sharedName": "പേര്",
- "sharedDescription": "വിവരണം",
- "sharedSearch": "സെർച്ച് ",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "ജിയോഫെൻസ് ",
- "sharedGeofences": "ജിയോഫെൻസെസ് ",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "അറിയിപ്പുകൾ",
- "sharedNotification": "Notification",
- "sharedAttributes": "അട്രീബൂട്ട്സ് ",
- "sharedAttribute": "അട്രീബൂട്ട്",
- "sharedDrivers": "Drivers",
- "sharedDriver": "Driver",
- "sharedArea": "ഏരിയ",
- "sharedSound": "അറിയിപ്പ് ശബ്ദം",
- "sharedType": "ടൈപ്പ്",
- "sharedDistance": "ദൂരം ",
- "sharedHourAbbreviation": "മണിക്കൂർ ",
- "sharedMinuteAbbreviation": "മിനിറ്റ് ",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "വോൾട്ട് ",
- "sharedLiterAbbreviation": "ലിറ്റർ ",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "ലിറ്റർ / മണിക്കൂർ ",
- "sharedGetMapState": "മാപ് സ്റ്റേറ്റ് ലഭ്യമാക്കുക ",
- "sharedComputedAttribute": "കമ്പ്യൂട്ടേഡ്‌ അട്രീബൂട്ട് ",
- "sharedComputedAttributes": "കമ്പ്യൂട്ടേഡ്‌ അട്രിബൂട്ടുകൾ ",
- "sharedCheckComputedAttribute": "കമ്പ്യൂട്ടേഡ്‌ അട്രീബൂട്ട് പരിശോധിക്കുക ",
- "sharedExpression": "എക്സ്പ്രെഷൻ ",
- "sharedDevice": "വാഹനം",
- "sharedTest": "Test",
- "sharedTestNotification": "ടെസ്റ്റ് നോട്ടിഫിക്കേഷൻ അയക്കുക ",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "കലണ്ടർ ",
- "sharedCalendars": "കലണ്ടറുകൾ ",
- "sharedFile": "ഫയൽ ",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "ഫയൽ തിരഞ്ഞെടുക്കുക",
- "sharedPhone": "ഫോൺ",
- "sharedRequired": "അനിവാര്യം",
- "sharedPreferences": "ഇഷ്ടങ്ങൾ ",
- "sharedPermissions": "പെർമിഷനുകൾ",
- "sharedConnections": "Connections",
- "sharedExtra": "എക്സ്ട്രാ ",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "സ്ട്രിംഗ്",
- "sharedTypeNumber": "നമ്പർ ",
- "sharedTypeBoolean": "ബൂളിയാൻ ",
- "sharedTimezone": "ടൈം സോൺ ",
- "sharedInfoTitle": "ഇൻഫോ ",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "സ്പീഡ് ലിമിറ്റ്‌ ",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Report: Ignore Odometer",
- "attributeWebReportColor": "Web: Report Color",
- "attributeDevicePassword": "Device Password",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "Color",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "എറർ !",
- "errorGeneral": "പാരാമീറ്റർ എറർ !",
- "errorConnection": "കണക്ഷൻ എറർ !",
- "errorSocket": "വെബ് സോക്കറ്റ് കണക്ഷൻ എറർ !",
- "errorZero": "Can't be zero",
- "userEmail": "ഇമെയിൽ",
- "userPassword": "പാസ്സ്‌വേർഡ് ",
- "userAdmin": "അഡ്മിൻ ",
- "userRemember": "ഓർത്തിരിക്കുക ",
- "userExpirationTime": "Expiration",
- "userDeviceLimit": "Device Limit",
- "userUserLimit": "User Limit",
- "userDeviceReadonly": "Device Readonly",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "ലോഗിൻ ചെയ്യുക ",
- "loginLanguage": "ഭാഷ",
- "loginReset": "Reset Password",
- "loginRegister": "രെജിസ്റ്റർ ",
- "loginLogin": "അകത്തു പ്രവേശിക്കുക",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "തെറ്റായ ഇമെയിൽ വിലാസവും പാസ്വേഡും",
- "loginCreated": "പുതിയ ഉപയോക്താവ് രജിസ്റ്റർ ചെയ്തു",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "പുറത്തുകടക്കുക",
- "loginLogo": "ലോഗോ",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "സാധനങ്ങളിന് നില ",
- "deviceSelected": "Selected Device",
- "deviceTitle": "സാധനങ്ങളിന് ",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "ഐഡന്റിഫയർ",
- "deviceModel": "Model",
- "deviceContact": "Contact",
- "deviceCategory": "Category",
- "deviceLastUpdate": "Last Update",
- "deviceCommand": "Command",
- "deviceFollow": "Follow",
- "deviceTotalDistance": "Total Distance",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Unknown",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "ഗ്രൂപ്പ്",
- "groupParent": "Group",
- "groupNoGroup": "No Group",
- "settingsTitle": "Settings",
- "settingsUser": "Account",
- "settingsGroups": "Groups",
- "settingsServer": "Server",
- "settingsUsers": "Users",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "12-hour Format",
- "settingsCoordinateFormat": "Coordinates Format",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Reports",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "ഉപകരണം",
- "reportGroup": "Group",
- "reportFrom": "From",
- "reportTo": "To",
- "reportShow": "Show",
- "reportClear": "Clear",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Valid",
- "positionAccuracy": "Accuracy",
- "positionLatitude": "അക്ഷാംശം",
- "positionLongitude": "രേഖാംശം",
- "positionAltitude": "Altitude",
- "positionSpeed": "വേഗം",
- "positionCourse": "Course",
- "positionAddress": "Address",
- "positionProtocol": "Protocol",
- "positionDistance": "Distance",
- "positionRpm": "RPM",
- "positionFuel": "Fuel",
- "positionPower": "Power",
- "positionBattery": "Battery",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Event",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hours",
- "positionSteps": "Steps",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Battery Level",
- "positionFuelConsumption": "Fuel Consumption",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Ignition",
- "positionFlags": "Flags",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Motion",
- "positionArmed": "Armed",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Device Temperature",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Command",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Server Settings",
- "serverZoom": "വലുതാക്കിയോ ചെറുതാക്കിയോ കാണിക്കുക",
- "serverRegistration": "രജിസ്ട്രേഷൻ",
- "serverReadonly": "Readonly",
- "serverForceSettings": "Force Settings",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "ഭൂപടം",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Map Layer",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polygon",
- "mapShapeCircle": "Circle",
- "mapShapePolyline": "Polyline",
- "mapLiveRoutes": "Live Routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "State",
- "stateName": "Attribute",
- "stateValue": "Value",
- "commandTitle": "Command",
- "commandSend": "Send",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "Unit",
- "commandCustom": "Custom command",
- "commandDeviceIdentification": "Device Identification",
- "commandPositionSingle": "Single Reporting",
- "commandPositionPeriodic": "Periodic Reporting",
- "commandPositionStop": "Stop Reporting",
- "commandEngineStop": "Engine Stop",
- "commandEngineResume": "Engine Resume",
- "commandAlarmArm": "Arm Alarm",
- "commandAlarmDisarm": "Disarm Alarm",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Set Timezone",
- "commandRequestPhoto": "Request Photo",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Reboot Device",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Send SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "Set SOS Number",
- "commandSilenceTime": "Set Silence Time",
- "commandSetPhonebook": "Set Phonebook",
- "commandVoiceMessage": "Voice Message",
- "commandOutputControl": "Output Control",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Set Indicator",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frequency",
- "commandTimezone": "Timezone Offset",
- "commandMessage": "Message",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Data",
- "commandIndex": "Index",
- "commandPhone": "Phone Number",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "All Events",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Command result",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Maintenance required",
- "eventTextMessage": "Text message received",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Type of Notification",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Route",
- "reportEvents": "Events",
- "reportTrips": "Trips",
- "reportStops": "Stops",
- "reportSummary": "Summary",
- "reportDaily": "Daily Summary",
- "reportChart": "Chart",
- "reportConfigure": "Configure",
- "reportEventTypes": "Event Types",
- "reportChartType": "Chart Type",
- "reportShowMarkers": "Show Markers",
- "reportExport": "Export",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "Device Name",
- "reportAverageSpeed": "Average Speed",
- "reportMaximumSpeed": "Maximum Speed",
- "reportEngineHours": "Engine Hours",
- "reportDuration": "Duration",
- "reportStartDate": "Start Date",
- "reportStartTime": "Start Time",
- "reportStartAddress": "Start Address",
- "reportEndTime": "End Time",
- "reportEndAddress": "End Address",
- "reportSpentFuel": "Spent Fuel",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Statistics",
- "statisticsCaptureTime": "Capture Time",
- "statisticsActiveUsers": "Active Users",
- "statisticsActiveDevices": "Active Devices",
- "statisticsRequests": "Requests",
- "statisticsMessagesReceived": "Messages Received",
- "statisticsMessagesStored": "Messages Stored",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Arrow",
- "categoryDefault": "Default",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicycle",
- "categoryBoat": "Boat",
- "categoryBus": "Bus",
- "categoryCar": "Car",
- "categoryCamper": "Camper",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "Motorcycle",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Plane",
- "categoryShip": "Ship",
- "categoryTractor": "Tractor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Truck",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/mn.json b/web/l10n/mn.json
deleted file mode 100644
index ea3ecedb..00000000
--- a/web/l10n/mn.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Ачааллаж байна...",
- "sharedHide": "Нуух",
- "sharedSave": "Хадгалах",
- "sharedUpload": "Upload",
- "sharedSet": "Тааруулах",
- "sharedCancel": "Цуцлах",
- "sharedCopy": "Copy",
- "sharedAdd": "Нэмэх",
- "sharedEdit": "Засах",
- "sharedRemove": "Хасах",
- "sharedRemoveConfirm": "Үүнийг устгах уу?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Тийм",
- "sharedNo": "Үгүй",
- "sharedKm": "км",
- "sharedMi": "миль",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "Зангилаа",
- "sharedKmh": "км/ц",
- "sharedMph": "миль/цаг",
- "sharedHour": "Цаг",
- "sharedMinute": "Минут",
- "sharedSecond": "Секунд",
- "sharedDays": "өдөр",
- "sharedHours": "цаг",
- "sharedMinutes": "минут",
- "sharedDecimalDegrees": "Градус 10-тын бутархай",
- "sharedDegreesDecimalMinutes": "Градус Минут нь 10-тын бутархай",
- "sharedDegreesMinutesSeconds": "Градус Минут Секунд",
- "sharedName": "Нэр",
- "sharedDescription": "Тайлбар",
- "sharedSearch": "Хайх",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Хязгаарлалт",
- "sharedGeofences": "Хязгаарлалтууд",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Мэдэгдэлүүд",
- "sharedNotification": "Мэдэгдэл",
- "sharedAttributes": "Утгууд",
- "sharedAttribute": "Утга",
- "sharedDrivers": "Жолооч нар",
- "sharedDriver": "Жолооч",
- "sharedArea": "Талбай",
- "sharedSound": "Дуут дохио",
- "sharedType": "Төрөл",
- "sharedDistance": "Зай",
- "sharedHourAbbreviation": "цаг",
- "sharedMinuteAbbreviation": "мин",
- "sharedSecondAbbreviation": "сек",
- "sharedVoltAbbreviation": "Вольт",
- "sharedLiterAbbreviation": "л",
- "sharedGallonAbbreviation": "галлон",
- "sharedLiter": "литр",
- "sharedImpGallon": "Англи галлон",
- "sharedUsGallon": "Америк галлон",
- "sharedLiterPerHourAbbreviation": "литр/цаг",
- "sharedGetMapState": "Зургийн нөхцөл хуулбарлах",
- "sharedComputedAttribute": "Тооцолсон утга",
- "sharedComputedAttributes": "Тооцолсон утганууд",
- "sharedCheckComputedAttribute": "Тооцолсон утга шалгах",
- "sharedExpression": "Илэрхийлэл",
- "sharedDevice": "Төхөөрөмж",
- "sharedTest": "Test",
- "sharedTestNotification": "Туршилтын мэдэгдэл илгээх",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Календар",
- "sharedCalendars": "Календарууд",
- "sharedFile": "Файл",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Файл сонгох",
- "sharedPhone": "Утас",
- "sharedRequired": "Шаардлагатай",
- "sharedPreferences": "Тохиргоо",
- "sharedPermissions": "Зөвшөөрөл",
- "sharedConnections": "Холболт",
- "sharedExtra": "Нэмэлт",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Бутархай утга",
- "sharedTypeNumber": "Тоон утга",
- "sharedTypeBoolean": "Логик утга",
- "sharedTimezone": "Цагийн бүс",
- "sharedInfoTitle": "Мэдээлэл",
- "sharedSavedCommand": "Хадгалсан комманд",
- "sharedSavedCommands": "Хадгалсан коммандууд",
- "sharedNew": "Шинэ...",
- "sharedShowAddress": "Хаягийг харуулах",
- "sharedShowDetails": "Дэлгэрэнгүй мэдээлэл",
- "sharedDisabled": "Хүчингүй",
- "sharedMaintenance": "Засвар үйлчилгээ",
- "sharedDeviceAccumulators": "Хуримтлагдах утга",
- "sharedAlarms": "Дохиолол",
- "sharedLocation": "Байрлал",
- "sharedImport": "Оруулах",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Хурдны хязгаар",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Тайлан: Хянахын гүйлт тооцоохгүй",
- "attributeWebReportColor": "Веб: Тайлангийн өнгө",
- "attributeDevicePassword": "Төхөөрөмжийн нууц үг",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Төхөөрөмж Хэзээ унтсан",
- "attributeDeviceInactivityPeriod": "Төхөөрөмж Унтсан хугацаа",
- "attributeProcessingCopyAttributes": "Боловсруулж байна: Утга хуулж байна",
- "attributeColor": "Өнгө",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Алдаа",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "Холболтын алдаа",
- "errorSocket": "Web socket connection error",
- "errorZero": "Нойл утга байж болохгүй",
- "userEmail": "Имэйл",
- "userPassword": "Нууц үг",
- "userAdmin": "Админ",
- "userRemember": "Санах",
- "userExpirationTime": "Expiration",
- "userDeviceLimit": "Device Limit",
- "userUserLimit": "User Limit",
- "userDeviceReadonly": "Device Readonly",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Нэвтрэх",
- "loginLanguage": "Хэл",
- "loginReset": "Нууц үг сэргээх",
- "loginRegister": "Бүртгүүлэх",
- "loginLogin": "Нэвтрэх",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Имэйл хаяг эсвэл нууц үг буруу байна",
- "loginCreated": "Шинэ хэрэглэгч бүртгэгдлээ",
- "loginResetSuccess": "Имэйлээ шалгана уу",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Системээс гарах",
- "loginLogo": "Лого",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Devices and State",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Төхөөрөмжүүд",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifier",
- "deviceModel": "Модел",
- "deviceContact": "Contact",
- "deviceCategory": "Category",
- "deviceLastUpdate": "Last Update",
- "deviceCommand": "Комманд",
- "deviceFollow": "Follow",
- "deviceTotalDistance": "Total Distance",
- "deviceStatus": "Статус",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Unknown",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Бүлэг",
- "groupParent": "Бүлэг",
- "groupNoGroup": "No Group",
- "settingsTitle": "Тохиргоонууд",
- "settingsUser": "Account",
- "settingsGroups": "Groups",
- "settingsServer": "Сервер",
- "settingsUsers": "Хэрэглэгчид",
- "settingsDistanceUnit": "Зайн нэгж",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Хурдны нэгж",
- "settingsVolumeUnit": "Эзэлхүүний нэгж",
- "settingsTwelveHourFormat": "12-цагийн формат",
- "settingsCoordinateFormat": "Coordinates Format",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Тайлангууд",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Төхөөрөмж",
- "reportGroup": "Group",
- "reportFrom": "From",
- "reportTo": "To",
- "reportShow": "Харуулах",
- "reportClear": "Clear",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Valid",
- "positionAccuracy": "Accuracy",
- "positionLatitude": "Өргөрөг",
- "positionLongitude": "Уртраг",
- "positionAltitude": "Өндөр",
- "positionSpeed": "Хурд",
- "positionCourse": "Course",
- "positionAddress": "Хаяг",
- "positionProtocol": "Протокол",
- "positionDistance": "Distance",
- "positionRpm": "RPM",
- "positionFuel": "Түлш",
- "positionPower": "Power",
- "positionBattery": "Батарей",
- "positionRaw": "Raw",
- "positionIndex": "Индекс",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Event",
- "positionAlarm": "Alarm",
- "positionStatus": "Статус",
- "positionOdometer": "Гүйлт",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hours",
- "positionSteps": "Steps",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Battery Level",
- "positionFuelConsumption": "Fuel Consumption",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Ignition",
- "positionFlags": "Flags",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Motion",
- "positionArmed": "Armed",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Device Temperature",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Комманд",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Серверийн тохиргоо",
- "serverZoom": "Zoom",
- "serverRegistration": "Registration",
- "serverReadonly": "Readonly",
- "serverForceSettings": "Force Settings",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Map",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Map Layer",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polygon",
- "mapShapeCircle": "Circle",
- "mapShapePolyline": "Polyline",
- "mapLiveRoutes": "Live Routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "State",
- "stateName": "Attribute",
- "stateValue": "Value",
- "commandTitle": "Command",
- "commandSend": "Send",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "Нэгж",
- "commandCustom": "Custom command",
- "commandDeviceIdentification": "Device Identification",
- "commandPositionSingle": "Single Reporting",
- "commandPositionPeriodic": "Periodic Reporting",
- "commandPositionStop": "Stop Reporting",
- "commandEngineStop": "Engine Stop",
- "commandEngineResume": "Engine Resume",
- "commandAlarmArm": "Arm Alarm",
- "commandAlarmDisarm": "Disarm Alarm",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Set Timezone",
- "commandRequestPhoto": "Request Photo",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Reboot Device",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Send SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "Set SOS Number",
- "commandSilenceTime": "Set Silence Time",
- "commandSetPhonebook": "Set Phonebook",
- "commandVoiceMessage": "Voice Message",
- "commandOutputControl": "Output Control",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Set Indicator",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frequency",
- "commandTimezone": "Timezone Offset",
- "commandMessage": "Message",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Data",
- "commandIndex": "Index",
- "commandPhone": "Phone Number",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "All Events",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Command result",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Maintenance required",
- "eventTextMessage": "Text message received",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Type of Notification",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Route",
- "reportEvents": "Events",
- "reportTrips": "Trips",
- "reportStops": "Stops",
- "reportSummary": "Summary",
- "reportDaily": "Daily Summary",
- "reportChart": "Chart",
- "reportConfigure": "Configure",
- "reportEventTypes": "Event Types",
- "reportChartType": "Chart Type",
- "reportShowMarkers": "Show Markers",
- "reportExport": "Export",
- "reportEmail": "Имэйл тайлан",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Өнөөдөр",
- "reportYesterday": "Өчигдөр",
- "reportThisWeek": "Энэ долоо хоног",
- "reportPreviousWeek": "Өмнөх долоо хоног",
- "reportThisMonth": "Энэ сар",
- "reportPreviousMonth": "Өмнөх сар",
- "reportDeviceName": "Төхөөрөмжийн нэр",
- "reportAverageSpeed": "Дундаж хурд",
- "reportMaximumSpeed": "Дээд хурд",
- "reportEngineHours": "Engine Hours",
- "reportDuration": "Хугацаа",
- "reportStartDate": "Эхлэх өдөр",
- "reportStartTime": "Эхлэх цаг",
- "reportStartAddress": "Start Address",
- "reportEndTime": "End Time",
- "reportEndAddress": "End Address",
- "reportSpentFuel": "Spent Fuel",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Статистик",
- "statisticsCaptureTime": "Capture Time",
- "statisticsActiveUsers": "Идэвхитэй хэрэглэгчид",
- "statisticsActiveDevices": "Идэвхитэй төхөөрөмжүүд",
- "statisticsRequests": "Requests",
- "statisticsMessagesReceived": "Messages Received",
- "statisticsMessagesStored": "Messages Stored",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Arrow",
- "categoryDefault": "Default",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicycle",
- "categoryBoat": "Boat",
- "categoryBus": "Bus",
- "categoryCar": "Car",
- "categoryCamper": "Camper",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "Motorcycle",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Plane",
- "categoryShip": "Ship",
- "categoryTractor": "Tractor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Truck",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/ms.json b/web/l10n/ms.json
deleted file mode 100644
index 50b4048a..00000000
--- a/web/l10n/ms.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Memuatkan...",
- "sharedHide": "Hide",
- "sharedSave": "Simpan",
- "sharedUpload": "Upload",
- "sharedSet": "Set",
- "sharedCancel": "Batal",
- "sharedCopy": "Copy",
- "sharedAdd": "Tambah",
- "sharedEdit": "Ubah",
- "sharedRemove": "Hapus",
- "sharedRemoveConfirm": "Hapuskan item?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Jam",
- "sharedMinute": "Minit",
- "sharedSecond": "Saat",
- "sharedDays": "days",
- "sharedHours": "hours",
- "sharedMinutes": "minutes",
- "sharedDecimalDegrees": "Decimal Degrees",
- "sharedDegreesDecimalMinutes": "Degrees Decimal Minutes",
- "sharedDegreesMinutesSeconds": "Degrees Minutes Seconds",
- "sharedName": "Name",
- "sharedDescription": "Description",
- "sharedSearch": "Search",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geofence",
- "sharedGeofences": "Geofences",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Notifications",
- "sharedNotification": "Notification",
- "sharedAttributes": "Attributes",
- "sharedAttribute": "Attribute",
- "sharedDrivers": "Drivers",
- "sharedDriver": "Driver",
- "sharedArea": "Area",
- "sharedSound": "Notification Sound",
- "sharedType": "Type",
- "sharedDistance": "Distance",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Get Map State",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "Expression",
- "sharedDevice": "Device",
- "sharedTest": "Test",
- "sharedTestNotification": "Send Test Notification",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Calendar",
- "sharedCalendars": "Calendars",
- "sharedFile": "File",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Select File",
- "sharedPhone": "Phone",
- "sharedRequired": "Required",
- "sharedPreferences": "Preferences",
- "sharedPermissions": "Permissions",
- "sharedConnections": "Connections",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Number",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Timezone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Speed Limit",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Report: Ignore Odometer",
- "attributeWebReportColor": "Web: Report Color",
- "attributeDevicePassword": "Device Password",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "Color",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Ralat",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "Ralat penyambungan",
- "errorSocket": "Web socket connection error",
- "errorZero": "Can't be zero",
- "userEmail": "Emel",
- "userPassword": "Katalaluan",
- "userAdmin": "Admin",
- "userRemember": "Remember",
- "userExpirationTime": "Expiration",
- "userDeviceLimit": "Device Limit",
- "userUserLimit": "User Limit",
- "userDeviceReadonly": "Device Readonly",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Log masuk",
- "loginLanguage": "Bahasa",
- "loginReset": "Reset Password",
- "loginRegister": "Daftar",
- "loginLogin": "Log masuk",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Kesalahan emel atau katalaluan",
- "loginCreated": "Pengguna baru telah didaftarkan",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Keluar",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Peranti dan State",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Peranti",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "IMEI/ID",
- "deviceModel": "Model",
- "deviceContact": "Contact",
- "deviceCategory": "Category",
- "deviceLastUpdate": "Kemaskini Terakhir",
- "deviceCommand": "Arahan",
- "deviceFollow": "Ikut",
- "deviceTotalDistance": "Total Distance",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Unknown",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Group",
- "groupParent": "Group",
- "groupNoGroup": "No Group",
- "settingsTitle": "Tetapan",
- "settingsUser": "Akaun",
- "settingsGroups": "Groups",
- "settingsServer": "Server",
- "settingsUsers": "Pengguna",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "12-hour Format",
- "settingsCoordinateFormat": "Coordinates Format",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Laporan",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Peranti",
- "reportGroup": "Group",
- "reportFrom": "Daripada",
- "reportTo": "Ke",
- "reportShow": "Papar",
- "reportClear": "Kosongkan",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Sah",
- "positionAccuracy": "Accuracy",
- "positionLatitude": "Latitud",
- "positionLongitude": "Longitud",
- "positionAltitude": "Altitud",
- "positionSpeed": "Kelajuan",
- "positionCourse": "Course",
- "positionAddress": "Alamat",
- "positionProtocol": "Protokol",
- "positionDistance": "Distance",
- "positionRpm": "RPM",
- "positionFuel": "Fuel",
- "positionPower": "Power",
- "positionBattery": "Battery",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Event",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hours",
- "positionSteps": "Steps",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Battery Level",
- "positionFuelConsumption": "Fuel Consumption",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Ignition",
- "positionFlags": "Flags",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Motion",
- "positionArmed": "Armed",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Device Temperature",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Command",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Tetapan Server",
- "serverZoom": "Besarkan",
- "serverRegistration": "Pendaftaran",
- "serverReadonly": "Baca Sahaja",
- "serverForceSettings": "Force Settings",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Peta",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Map Layer",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polygon",
- "mapShapeCircle": "Circle",
- "mapShapePolyline": "Polyline",
- "mapLiveRoutes": "Live Routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Negeri",
- "stateName": "Atribut",
- "stateValue": "Nilai",
- "commandTitle": "Arahan",
- "commandSend": "Hantar",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "Unit",
- "commandCustom": "Custom command",
- "commandDeviceIdentification": "Device Identification",
- "commandPositionSingle": "Single Reporting",
- "commandPositionPeriodic": "Laporan Berkala",
- "commandPositionStop": "Hentikan Laporan",
- "commandEngineStop": "Matikan Enjin",
- "commandEngineResume": "Hidupkan Enjin",
- "commandAlarmArm": "Arm Alarm",
- "commandAlarmDisarm": "Disarm Alarm",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Set Timezone",
- "commandRequestPhoto": "Request Photo",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Reboot Device",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Send SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "Set SOS Number",
- "commandSilenceTime": "Set Silence Time",
- "commandSetPhonebook": "Set Phonebook",
- "commandVoiceMessage": "Voice Message",
- "commandOutputControl": "Output Control",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Set Indicator",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekuensi",
- "commandTimezone": "Timezone Offset",
- "commandMessage": "Message",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Data",
- "commandIndex": "Index",
- "commandPhone": "Phone Number",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "All Events",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Command result",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Maintenance required",
- "eventTextMessage": "Text message received",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Type of Notification",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Route",
- "reportEvents": "Events",
- "reportTrips": "Trips",
- "reportStops": "Stops",
- "reportSummary": "Summary",
- "reportDaily": "Daily Summary",
- "reportChart": "Chart",
- "reportConfigure": "Configure",
- "reportEventTypes": "Event Types",
- "reportChartType": "Chart Type",
- "reportShowMarkers": "Show Markers",
- "reportExport": "Export",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "Device Name",
- "reportAverageSpeed": "Average Speed",
- "reportMaximumSpeed": "Maximum Speed",
- "reportEngineHours": "Engine Hours",
- "reportDuration": "Duration",
- "reportStartDate": "Start Date",
- "reportStartTime": "Start Time",
- "reportStartAddress": "Start Address",
- "reportEndTime": "End Time",
- "reportEndAddress": "End Address",
- "reportSpentFuel": "Spent Fuel",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Statistics",
- "statisticsCaptureTime": "Capture Time",
- "statisticsActiveUsers": "Active Users",
- "statisticsActiveDevices": "Active Devices",
- "statisticsRequests": "Requests",
- "statisticsMessagesReceived": "Messages Received",
- "statisticsMessagesStored": "Messages Stored",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Arrow",
- "categoryDefault": "Default",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicycle",
- "categoryBoat": "Boat",
- "categoryBus": "Bus",
- "categoryCar": "Car",
- "categoryCamper": "Camper",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "Motorcycle",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Plane",
- "categoryShip": "Ship",
- "categoryTractor": "Tractor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Truck",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/nb.json b/web/l10n/nb.json
deleted file mode 100644
index a3faa8c0..00000000
--- a/web/l10n/nb.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Laster...",
- "sharedHide": "Skjul",
- "sharedSave": "Lagre",
- "sharedUpload": "Upload",
- "sharedSet": "Sett",
- "sharedCancel": "Avbryt",
- "sharedCopy": "Copy",
- "sharedAdd": "Legg til",
- "sharedEdit": "Endre",
- "sharedRemove": "Fjern",
- "sharedRemoveConfirm": "Fjern element?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nm",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/t",
- "sharedMph": "mph",
- "sharedHour": "Time",
- "sharedMinute": "Minutt",
- "sharedSecond": "Sekund",
- "sharedDays": "dager",
- "sharedHours": "timer",
- "sharedMinutes": "minutter",
- "sharedDecimalDegrees": "Desimalgrader",
- "sharedDegreesDecimalMinutes": "Grader desimalminutter",
- "sharedDegreesMinutesSeconds": "Grader minutter sekund",
- "sharedName": "Navn",
- "sharedDescription": "Beskrivelse",
- "sharedSearch": "Søk",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "geo-gjerde",
- "sharedGeofences": "Geo-gjerder",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Varsler",
- "sharedNotification": "Varsel",
- "sharedAttributes": "Atributter",
- "sharedAttribute": "Egenskap",
- "sharedDrivers": "Sjåfører",
- "sharedDriver": "Sjåfør",
- "sharedArea": "Område",
- "sharedSound": "Varslingslyd",
- "sharedType": "Type",
- "sharedDistance": "Avstand",
- "sharedHourAbbreviation": "t",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Britisk Gallon",
- "sharedUsGallon": "Amerikansk Gallon",
- "sharedLiterPerHourAbbreviation": "l/t",
- "sharedGetMapState": "Få karttilstand",
- "sharedComputedAttribute": "Utregnede atributter",
- "sharedComputedAttributes": "Utregnede atributter",
- "sharedCheckComputedAttribute": "Sjekk utregnede atributter",
- "sharedExpression": "Uttrykk",
- "sharedDevice": "Enhet",
- "sharedTest": "Test",
- "sharedTestNotification": "Send testvarsling",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Kalender",
- "sharedCalendars": "Kalendere",
- "sharedFile": "Fil",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Velg fil",
- "sharedPhone": "Telefon",
- "sharedRequired": "Nødvendig",
- "sharedPreferences": "Innstillinger",
- "sharedPermissions": "Tilgang",
- "sharedConnections": "Connections",
- "sharedExtra": "Ekstra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Streng",
- "sharedTypeNumber": "Nummer",
- "sharedTypeBoolean": "Boolsk",
- "sharedTimezone": "Tidssone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Lagret kommando",
- "sharedSavedCommands": "Lagrede kommandoer",
- "sharedNew": "Ny",
- "sharedShowAddress": "Vis adresse",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Deaktivert",
- "sharedMaintenance": "Vedlikehold",
- "sharedDeviceAccumulators": "Målere",
- "sharedAlarms": "Alarmer",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Fartsgrense",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polylinjedistanse",
- "attributeReportIgnoreOdometer": "Rapport: Ignorer odometer",
- "attributeWebReportColor": "Web: Rapport farge",
- "attributeDevicePassword": "Enhetspassord",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Behandling: Kopier egenskaper",
- "attributeColor": "Farge",
- "attributeWebLiveRouteLength": "Web: Live rute lengde",
- "attributeWebSelectZoom": "Web: Skaler ved valg",
- "attributeWebMaxZoom": "Web: Maksimal forstørring",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP-vert",
- "attributeMailSmtpPort": "Mail: SMTP-port",
- "attributeMailSmtpStarttlsEnable": "Mail: Aktiver SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS påkrevd",
- "attributeMailSmtpSslEnable": "Mail: Aktiver SMTP SSL",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL tillit",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL protokoller",
- "attributeMailSmtpFrom": "Mail: SMTP Fra",
- "attributeMailSmtpAuth": "E-post: Aktiver SMTP autentisering",
- "attributeMailSmtpUsername": "Mail: SMTP brukernavn",
- "attributeMailSmtpPassword": "Mail: SMTP passord",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Deaktiver hendelser",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Deaktiver sjåfører",
- "attributeUiDisableComputedAttributes": "UI: Deaktiver utregnede egenskaper",
- "attributeUiDisableCalendars": "UI: Deaktiver kalendere",
- "attributeUiDisableMaintenance": "UI: Deaktiver Vedlikehold",
- "attributeUiHidePositionAttributes": "UI: Skjul posisjonsegenskaper",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Feil",
- "errorGeneral": "Ugyldige parametere eller begrensingsbrudd",
- "errorConnection": "Forbindelse feilet",
- "errorSocket": "Web socket tilkoblingsfeil",
- "errorZero": "Kan ikke være null",
- "userEmail": "E-post",
- "userPassword": "Passord",
- "userAdmin": "Admin",
- "userRemember": "Husk",
- "userExpirationTime": "Utløpstid",
- "userDeviceLimit": "Enhetsgrense",
- "userUserLimit": "Brukergrense",
- "userDeviceReadonly": "Skrivebeskyttet enhet",
- "userLimitCommands": "Begrens kommandoer",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Symbol",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Logg inn",
- "loginLanguage": "Språk",
- "loginReset": "Reset Password",
- "loginRegister": "Registrer",
- "loginLogin": "Logg inn",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Feil e-post eller passord",
- "loginCreated": "Ny bruker har blitt registrert",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Logg ut",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Enheter og status",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Enheter",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifikator",
- "deviceModel": "Modell",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategori",
- "deviceLastUpdate": "Sist oppdatert",
- "deviceCommand": "Kommando",
- "deviceFollow": "Følg",
- "deviceTotalDistance": "Total distanse",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Tilkoblet",
- "deviceStatusOffline": "Frakoblet",
- "deviceStatusUnknown": "Ukjent",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Gruppe",
- "groupParent": "Gruppe",
- "groupNoGroup": "Ingen gruppe",
- "settingsTitle": "Innstillinger",
- "settingsUser": "Konto",
- "settingsGroups": "Grupper",
- "settingsServer": "Server",
- "settingsUsers": "Brukere",
- "settingsDistanceUnit": "Avstandsenhet",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Hastighetsenhet",
- "settingsVolumeUnit": "Volumenhet",
- "settingsTwelveHourFormat": "Tolvtimersformat",
- "settingsCoordinateFormat": "Koordinatformat",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Rapporter",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Enhet",
- "reportGroup": "Gruppe",
- "reportFrom": "Fra",
- "reportTo": "Til",
- "reportShow": "Vis",
- "reportClear": "Nullstill",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Gyldig",
- "positionAccuracy": "Nøyaktighet",
- "positionLatitude": "Breddegrad",
- "positionLongitude": "Lengdegrad",
- "positionAltitude": "Høyde",
- "positionSpeed": "Hastighet",
- "positionCourse": "Retning",
- "positionAddress": "Adresse",
- "positionProtocol": "Protokoll",
- "positionDistance": "Avstand",
- "positionRpm": "r/min",
- "positionFuel": "Drivstoff",
- "positionPower": "Spenning",
- "positionBattery": "Batteri",
- "positionRaw": "Rå",
- "positionIndex": "Register",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelitter",
- "positionSatVisible": "Synlige satelitter",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Nettveksling (Roaming)",
- "positionEvent": "Hendelse",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Kilometerteller",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Turmåler",
- "positionHours": "Timer",
- "positionSteps": "Steg",
- "positionInput": "Inngang",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Utgang",
- "positionBatteryLevel": "Batterinivå",
- "positionFuelConsumption": "Drivstofforbruk",
- "positionRfid": "RFID",
- "positionVersionFw": "Fastvareversjon",
- "positionVersionHw": "Maskinvareversjon",
- "positionIgnition": "Tenning",
- "positionFlags": "Status indikatorer",
- "positionCharge": "Lade",
- "positionIp": "IP",
- "positionArchive": "Arkiv",
- "positionVin": "VIN",
- "positionApproximate": "Tilnærmet",
- "positionThrottle": "Gasspedal",
- "positionMotion": "Bevegelse",
- "positionArmed": "Slått På",
- "positionAcceleration": "Akselerasjon",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Enhetstemperatur",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operatør",
- "positionCommand": "Kommando",
- "positionBlocked": "Blokkert",
- "positionDtcs": "Diagnosefeilkoder",
- "positionObdSpeed": "OBD hastighet",
- "positionObdOdometer": "OBD kilometerteller",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Sjåførunik ID",
- "positionCard": "Card",
- "positionImage": "Bilde",
- "positionVideo": "Video",
- "positionAudio": "Lyd",
- "serverTitle": "Serverinnstillinger",
- "serverZoom": "Zoom",
- "serverRegistration": "Registering",
- "serverReadonly": "Skrivebeskyttet",
- "serverForceSettings": "Tving innstillinger",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Kart",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Kartlag",
- "mapCustom": "Tilpasset (XYZ)",
- "mapCustomArcgis": "Tilpasset (ArcGIS)",
- "mapCustomLabel": "Tilpasset kart",
- "mapCarto": "Carto basiskart",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps-nøkkel",
- "mapBingRoad": "Bing Maps-veg",
- "mapBingAerial": "Bing Maps-flyfoto",
- "mapBingHybrid": "Bing Kart Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satelitt",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Mangekant",
- "mapShapeCircle": "Sirkel",
- "mapShapePolyline": "Polylinje",
- "mapLiveRoutes": "Live rute",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI-lag",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Status",
- "stateName": "Egenskap",
- "stateValue": "Verdi",
- "commandTitle": "Kommando",
- "commandSend": "Send",
- "commandSent": "Kommando er sent",
- "commandQueued": "Kommando er satt i kø",
- "commandUnit": "Enhet",
- "commandCustom": "Egendefinert kommando",
- "commandDeviceIdentification": "Enhetsidentifikasjon",
- "commandPositionSingle": "Enkel-rapportering",
- "commandPositionPeriodic": "Periodisk rapportering",
- "commandPositionStop": "Stopp rapportering",
- "commandEngineStop": "Stopp motor",
- "commandEngineResume": "Fortsett motor",
- "commandAlarmArm": "Slå alarm på",
- "commandAlarmDisarm": "Slå alarm av",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Sett tidssone",
- "commandRequestPhoto": "Be om foto",
- "commandPowerOff": "Skru av enhet",
- "commandRebootDevice": "Omstart enhet",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Send SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "Sett SOS-nummer",
- "commandSilenceTime": "Sett stilletid",
- "commandSetPhonebook": "Sett telefonbok",
- "commandVoiceMessage": "Talemelding",
- "commandOutputControl": "Utgangkontroll",
- "commandVoiceMonitoring": "Stemmeovervåking",
- "commandSetAgps": "Sett AGPS",
- "commandSetIndicator": "Sett Indikator",
- "commandConfiguration": "Oppsett",
- "commandGetVersion": "Vis versjon",
- "commandFirmwareUpdate": "Oppdater fastvare",
- "commandSetConnection": "Angi tilkobling",
- "commandSetOdometer": "Angi kilometerteller",
- "commandGetModemStatus": "Få modemtilstand",
- "commandGetDeviceStatus": "Få enhetstilstand",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekvens",
- "commandTimezone": "Tidszoneforskyvning",
- "commandMessage": "Melding",
- "commandRadius": "Radius",
- "commandEnable": "Aktiver",
- "commandData": "Data",
- "commandIndex": "Register",
- "commandPhone": "Telefonnummer",
- "commandServer": "Tjener",
- "commandPort": "Port",
- "eventAll": "Alle hendelser",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Enhetsstatus ukjent",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Enheten beveger seg",
- "eventDeviceStopped": "Enhet stoppet",
- "eventDeviceOverspeed": "Fartsgrense overskredet",
- "eventDeviceFuelDrop": "Drivstoffall",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Kommandoresultat",
- "eventGeofenceEnter": "Ankommet geogjerde",
- "eventGeofenceExit": "Forlatt geogjerde",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Tenning på",
- "eventIgnitionOff": "Tenning av",
- "eventMaintenance": "Vedlikehold Kreves",
- "eventTextMessage": "Tekst melding mottatt",
- "eventDriverChanged": "Sjåfør endret",
- "eventMedia": "Media",
- "eventsScrollToLast": "Vis siste",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Generell",
- "alarmSos": "SOS",
- "alarmVibration": "Vibrasjon",
- "alarmMovement": "Bevegelse",
- "alarmLowspeed": "Lav hastighet",
- "alarmOverspeed": "Høgt turtall",
- "alarmFallDown": "Fall",
- "alarmLowPower": "Lite strøm",
- "alarmLowBattery": "Lavt batterinivå",
- "alarmFault": "Feil",
- "alarmPowerOff": "Spenning av",
- "alarmPowerOn": "Spenning På",
- "alarmDoor": "Dør",
- "alarmLock": "Lås",
- "alarmUnlock": "lås opp",
- "alarmGeofence": "Geo-gjerde",
- "alarmGeofenceEnter": "Ankommet Geogjerde",
- "alarmGeofenceExit": "Forlatt Geogjerde",
- "alarmGpsAntennaCut": "GPS-Antenne Fjernet",
- "alarmAccident": "Ulykke",
- "alarmTow": "Tauing",
- "alarmIdle": "Tomgang",
- "alarmHighRpm": "Høyt turtall",
- "alarmHardAcceleration": "Hard Akselerasjon",
- "alarmHardBraking": "Hard Oppbremsing",
- "alarmHardCornering": "Hard svingning",
- "alarmLaneChange": "Filskifte",
- "alarmFatigueDriving": "Tretthetskjøring",
- "alarmPowerCut": "Spenning Kuttet",
- "alarmPowerRestored": "Spenning Gjenopprettet",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Tempratur",
- "alarmParking": "Parkering",
- "alarmBonnet": "Panser",
- "alarmFootBrake": "Bremsepedal",
- "alarmFuelLeak": "Drivstofflekasje",
- "alarmTampering": "Tukling",
- "alarmRemoving": "Fjerner",
- "notificationType": "Varseltype",
- "notificationAlways": "Alle enheter",
- "notificationNotificators": "Kanaler",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Rute",
- "reportEvents": "Hendelser",
- "reportTrips": "Turer",
- "reportStops": "Stopp",
- "reportSummary": "Oppsumering",
- "reportDaily": "Daily Summary",
- "reportChart": "Diagram",
- "reportConfigure": "Sett opp",
- "reportEventTypes": "Hendelsestyper",
- "reportChartType": "Diagramtype",
- "reportShowMarkers": "Vis markører",
- "reportExport": "Eksporter",
- "reportEmail": "E-post-rapport",
- "reportSchedule": "Schedule",
- "reportPeriod": "Periode",
- "reportCustom": "Egendefinert",
- "reportToday": "Idag",
- "reportYesterday": "I går",
- "reportThisWeek": "Denne uken",
- "reportPreviousWeek": "Forrige uke",
- "reportThisMonth": "Denne måneden",
- "reportPreviousMonth": "Forrige måned",
- "reportDeviceName": "Enhetsnavn",
- "reportAverageSpeed": "Gjennomsnittshastighet ",
- "reportMaximumSpeed": "Maksimumshastighet",
- "reportEngineHours": "Motortimer",
- "reportDuration": "Varighet",
- "reportStartDate": "Start Date",
- "reportStartTime": "Starttidspunkt",
- "reportStartAddress": "Startadresse",
- "reportEndTime": "Sluttidspunkt",
- "reportEndAddress": "Sluttadresse",
- "reportSpentFuel": "Brukt drivstoff",
- "reportStartOdometer": "Kilometerteller start",
- "reportEndOdometer": "Kilometerteller stopp",
- "statisticsTitle": "Statistikk",
- "statisticsCaptureTime": "Opptakstidspunkt",
- "statisticsActiveUsers": "Aktive brukere",
- "statisticsActiveDevices": "Aktive enheter",
- "statisticsRequests": "Forespørsler",
- "statisticsMessagesReceived": "Meldinger mottatt",
- "statisticsMessagesStored": "Meldinger lagret",
- "statisticsGeocoder": "Geocoder-forespørsler",
- "statisticsGeolocation": "Geolocation-forespørsler",
- "categoryArrow": "Pil",
- "categoryDefault": "Standard",
- "categoryAnimal": "Dyr",
- "categoryBicycle": "Sykkel",
- "categoryBoat": "Båt",
- "categoryBus": "Buss",
- "categoryCar": "Bil",
- "categoryCamper": "Camper",
- "categoryCrane": "Kran",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motorsykkel",
- "categoryOffroad": "Terrengkjøretøy",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Fly",
- "categoryShip": "Skip",
- "categoryTractor": "Traktor",
- "categoryTrain": "Tog",
- "categoryTram": "Trikk",
- "categoryTrolleybus": "Strømbuss",
- "categoryTruck": "Lastebil",
- "categoryVan": "Varebil",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Periode"
-} \ No newline at end of file
diff --git a/web/l10n/ne.json b/web/l10n/ne.json
deleted file mode 100644
index 0c89df5d..00000000
--- a/web/l10n/ne.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "लोड हुँदै ",
- "sharedHide": "लुकाउने ",
- "sharedSave": "सुरक्षित गर्ने ",
- "sharedUpload": "Upload",
- "sharedSet": "सेट गर्ने ",
- "sharedCancel": "रद्ध गर्ने ",
- "sharedCopy": "Copy",
- "sharedAdd": "थप्ने",
- "sharedEdit": "सच्याउने",
- "sharedRemove": "हटाउने ",
- "sharedRemoveConfirm": "हटाउने हो?",
- "sharedNoData": "डाटा छैन",
- "sharedSubject": "Subject",
- "sharedYes": "हो",
- "sharedNo": "छैन",
- "sharedKm": "कि मि ",
- "sharedMi": "माइल",
- "sharedNmi": "नटिकल माइल",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "किलो नट ",
- "sharedKmh": "कि मि /घण्टा ",
- "sharedMph": "माइल /घण्टा ",
- "sharedHour": "घण्टा ",
- "sharedMinute": "मिनेट ",
- "sharedSecond": "सेकेन्ड ",
- "sharedDays": "दिन ",
- "sharedHours": "घण्टा ",
- "sharedMinutes": "मिनेट",
- "sharedDecimalDegrees": "डेसिमल डिग्री ",
- "sharedDegreesDecimalMinutes": "डिग्री डेसिमल मिनेट ",
- "sharedDegreesMinutesSeconds": "डिग्री मिनेट सेकेन्ड ",
- "sharedName": "नाम ",
- "sharedDescription": "विवरण ",
- "sharedSearch": "खोज्ने ",
- "sharedIconScale": "आइकन स्केल",
- "sharedGeofence": "भू परिधि ",
- "sharedGeofences": "भू परिधिहरू ",
- "sharedCreateGeofence": "geofence सिर्जना गर्नुहोस्",
- "sharedNotifications": "सूचनाहरु ",
- "sharedNotification": "सूचना ",
- "sharedAttributes": "विशेषताहरू",
- "sharedAttribute": "विशेषता",
- "sharedDrivers": "चालकहरु ",
- "sharedDriver": "चालक ",
- "sharedArea": "क्षेत्र ",
- "sharedSound": "सूचना ध्वनि ",
- "sharedType": "प्रकार ",
- "sharedDistance": "दूरी ",
- "sharedHourAbbreviation": "घ ",
- "sharedMinuteAbbreviation": "मि",
- "sharedSecondAbbreviation": "से ",
- "sharedVoltAbbreviation": "भोल्ट ",
- "sharedLiterAbbreviation": "ई",
- "sharedGallonAbbreviation": "ग्या",
- "sharedLiter": "लिटर ",
- "sharedImpGallon": "ग्यालन ",
- "sharedUsGallon": "अमेरिकी ग्यालन ",
- "sharedLiterPerHourAbbreviation": "ई/घ",
- "sharedGetMapState": "नक्साको स्थिति पाउने ",
- "sharedComputedAttribute": "गणना गरिएको विशेषता",
- "sharedComputedAttributes": "गणना गरिएको विशेषताहरू",
- "sharedCheckComputedAttribute": "गणना गरिएको विशेषता जाँच गर्नुहोस्",
- "sharedExpression": "अभिव्यक्ति",
- "sharedDevice": "यन्त्र ",
- "sharedTest": "परीक्षण",
- "sharedTestNotification": "परीक्षण सूचना पठाउनुहोस्",
- "sharedTestNotificators": "परीक्षण च्यानलहरू",
- "sharedTestExpression": "परीक्षण अभिव्यक्ति",
- "sharedCalendar": "पात्रो",
- "sharedCalendars": "पात्रोहरू",
- "sharedFile": "फाइल",
- "sharedSearchDevices": "खोज उपकरण",
- "sharedSortBy": "द्वारा क्रमबद्ध",
- "sharedFilterMap": "नक्सामा फिल्टर गर्नुहोस्",
- "sharedSelectFile": "फाइल चयन गर्नुहोस्",
- "sharedPhone": "फोन",
- "sharedRequired": "आवश्यक छ",
- "sharedPreferences": "प्राथमिकताहरू",
- "sharedPermissions": "अनुमतिहरू",
- "sharedConnections": "जडानहरू",
- "sharedExtra": "अतिरिक्त",
- "sharedPrimary": "प्राथमिक",
- "sharedSecondary": "माध्यमिक",
- "sharedTypeString": "स्ट्रिंग",
- "sharedTypeNumber": "संख्या",
- "sharedTypeBoolean": "बूलियन",
- "sharedTimezone": "समय क्षेत्र",
- "sharedInfoTitle": "जानकारी",
- "sharedSavedCommand": "संचित आदेश",
- "sharedSavedCommands": "संचित आदेशहरू",
- "sharedNew": "नयाँ...",
- "sharedShowAddress": "ठेगाना देखाउनुहोस्",
- "sharedShowDetails": "थप विवरण",
- "sharedDisabled": "अक्षम",
- "sharedMaintenance": "मर्मत",
- "sharedDeviceAccumulators": "सञ्चयकर्ताहरू",
- "sharedAlarms": "अलार्म",
- "sharedLocation": "स्थान",
- "sharedImport": "आयात",
- "sharedColumns": "स्तम्भहरू",
- "sharedDropzoneText": "यहाँ एउटा फाइल तान्नुहोस् र छोड्नुहोस् वा क्लिक गर्नुहोस्",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "सरल",
- "calendarRecurrence": "पुनरावृत्ति",
- "calendarOnce": "एक पटक",
- "calendarDaily": "दैनिक",
- "calendarWeekly": "साप्ताहिक",
- "calendarMonthly": "मासिक",
- "calendarDays": "दिनहरू",
- "calendarSunday": "आइतबार",
- "calendarMonday": "सोमबार",
- "calendarTuesday": "मंगलबार",
- "calendarWednesday": "बुधबार",
- "calendarThursday": "बिहीबार",
- "calendarFriday": "शुक्रबार",
- "calendarSaturday": "शनिबार",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "गति सिमित",
- "attributeFuelDropThreshold": "इन्धन ड्रप थ्रेसहोल्ड",
- "attributeFuelIncreaseThreshold": "इन्धन वृद्धि थ्रेसहोल्ड",
- "attributePolylineDistance": "बहुरेखा दूरि",
- "attributeReportIgnoreOdometer": "प्रतिबेदन: ओडोमिटर वेवास्ता",
- "attributeWebReportColor": "वेब: प्रतिबेदन रङ्ग",
- "attributeDevicePassword": "यन्त्र गोप्य शब्द",
- "attributeDeviceImage": "उपकरण फोटो",
- "attributeDeviceInactivityStart": "यन्त्र निष्क्रियता सुरु",
- "attributeDeviceInactivityPeriod": "यन्त्र निष्क्रियता अवधि",
- "attributeProcessingCopyAttributes": "प्रशोधन: प्रतिलिपि विशेषताहरू",
- "attributeColor": "रङ्ग",
- "attributeWebLiveRouteLength": "वेब: प्रत्यक्ष मार्ग लम्बाई",
- "attributeWebSelectZoom": "वेब: जूम अन चयन गर्नुहोस्",
- "attributeWebMaxZoom": "वेब: अधिकतम जुम",
- "attributeTelegramChatId": "टेलिग्राम च्याट आईडी",
- "attributePushoverUserKey": "Pushover प्रयोगकर्ता कुञ्जी",
- "attributePushoverDeviceNames": "Pushover उपकरण नामहरू",
- "attributeMailSmtpHost": "मेल: SMTP होस्ट",
- "attributeMailSmtpPort": "मेल: SMTP पोर्ट",
- "attributeMailSmtpStarttlsEnable": "मेल: SMTP STARTTLS सक्षम गर्नुहोस्",
- "attributeMailSmtpStarttlsRequired": "मेल: SMTP STARTTLS आवश्यक छ",
- "attributeMailSmtpSslEnable": "मेल: SMTP SSL सक्षम गर्नुहोस्",
- "attributeMailSmtpSslTrust": "मेल: SMTP SSL ट्रस्ट",
- "attributeMailSmtpSslProtocols": "मेल: SMTP SSL प्रोटोकलहरू",
- "attributeMailSmtpFrom": "मेल: SMTP बाट",
- "attributeMailSmtpAuth": "मेल: SMTP प्रमाणीकरण सक्षम गर्नुहोस्",
- "attributeMailSmtpUsername": "मेल: SMTP प्रयोगकर्ता नाम",
- "attributeMailSmtpPassword": "मेल: SMTP पासवर्ड",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: विशेषताहरू असक्षम गर्नुहोस्",
- "attributeUiDisableGroups": "UI: समूहहरू असक्षम पार्नुहोस्",
- "attributeUiDisableEvents": "UI: अक्षम घटनाहरू",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: अक्षम ड्राईभरहरू",
- "attributeUiDisableComputedAttributes": "UI: गणना गरिएका विशेषताहरू असक्षम पार्नुहोस्",
- "attributeUiDisableCalendars": "UI: अक्षम पात्रो",
- "attributeUiDisableMaintenance": "UI: अक्षम मर्मत",
- "attributeUiHidePositionAttributes": "UI: स्थिति विशेषताहरू लुकाउनुहोस्",
- "attributeUiDisableLoginLanguage": "UI: लगइन भाषा असक्षम गर्नुहोस्",
- "attributeNotificationTokens": "सूचना टोकनहरू",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "त्रुटी",
- "errorGeneral": "अवैध प्यारामिटर वा बाधा उल्लङ्घन",
- "errorConnection": "जडान मा त्रुटी भयो ",
- "errorSocket": "वेब सकेट जडान त्रुटि",
- "errorZero": "शून्य हुन सक्दैन",
- "userEmail": "इ मेल ",
- "userPassword": "गोप्य शब्द ",
- "userAdmin": "ब्यबस्थापक",
- "userRemember": "सम्झनु",
- "userExpirationTime": "मिति समाप्ति",
- "userDeviceLimit": "यन्त्र सिमित",
- "userUserLimit": "प्रयोगकर्ता सिमित",
- "userDeviceReadonly": "यन्त्र पढ्ने मात्र",
- "userLimitCommands": "सिमित आदेशहरू",
- "userDisableReports": "रिपोर्टहरू असक्षम गर्नुहोस्",
- "userFixedEmail": "कुनै इमेल परिवर्तन छैन",
- "userToken": "टोकन",
- "userDeleteAccount": "खाता मेटाउनुहोस्",
- "userTemporary": "Temporary",
- "loginTitle": "लगिन गर्ने ",
- "loginLanguage": "भाषा ",
- "loginReset": "पासवर्ड रिसेट",
- "loginRegister": "दर्ता गर्ने",
- "loginLogin": "भित्रिने ",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "इ मेल वा गोप्य शब्द गलत भयो ",
- "loginCreated": "नया प्रयोगकर्ता दर्ता भयो ",
- "loginResetSuccess": "आफ्नो इमेल जाँच गर्नुहोस्",
- "loginUpdateSuccess": "नयाँ पासवर्ड सेट गरिएको छ",
- "loginLogout": "बाहिरिने ",
- "loginLogo": "लोगो",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "यन्त्रहरू तथा अवस्था ",
- "deviceSelected": "Selected Device",
- "deviceTitle": "यन्त्रहरू ",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "परिचायक ",
- "deviceModel": "मोडेल",
- "deviceContact": "सम्पर्क गर्नुहोस्",
- "deviceCategory": "वर्ग",
- "deviceLastUpdate": "अन्तिम अपडेट ",
- "deviceCommand": "आदेश ",
- "deviceFollow": "पिछा गर्ने ",
- "deviceTotalDistance": "कुल दूरि",
- "deviceStatus": "स्थिति",
- "deviceStatusOnline": "अनलाईन",
- "deviceStatusOffline": "अफलाईन",
- "deviceStatusUnknown": "अज्ञात",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "समुह",
- "groupParent": "समुह",
- "groupNoGroup": "समुह नभएको",
- "settingsTitle": "सेटिङ्ग ",
- "settingsUser": "खाता ",
- "settingsGroups": "समुहहरू",
- "settingsServer": "सर्भर ",
- "settingsUsers": "प्रयोगकर्ताहरु ",
- "settingsDistanceUnit": "दूरि एकाई",
- "settingsAltitudeUnit": "उचाई एकाइ",
- "settingsSpeedUnit": "गति एकाई",
- "settingsVolumeUnit": "आयातन एकाई",
- "settingsTwelveHourFormat": "12-घण्टे ढाचाँ",
- "settingsCoordinateFormat": "निर्देशांक ढाचाँ",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "प्रतिबेदनहरु ",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "यन्त्र ",
- "reportGroup": "समुह",
- "reportFrom": "बाट ",
- "reportTo": "सम्म ",
- "reportShow": "देखाउने ",
- "reportClear": "सफा गर्ने ",
- "linkGoogleMaps": "गुगल नक्शा",
- "linkAppleMaps": "एप्पल नक्शा",
- "linkStreetView": "सडक दृश्य",
- "positionFixTime": "समय तय गर्नुहोस्",
- "positionDeviceTime": "उपकरण समय",
- "positionServerTime": "सर्भर समय",
- "positionValid": "ठिक",
- "positionAccuracy": "शुद्धता",
- "positionLatitude": "अक्षांश",
- "positionLongitude": "देशान्तर ",
- "positionAltitude": "उचाई ",
- "positionSpeed": "गति ",
- "positionCourse": "दिशा ",
- "positionAddress": "ठेगाना ",
- "positionProtocol": "प्रोटोकल ",
- "positionDistance": "दूरि",
- "positionRpm": "RPM",
- "positionFuel": "ईन्धन",
- "positionPower": "शक्ति",
- "positionBattery": "ब्याट्री",
- "positionRaw": "कच्चा",
- "positionIndex": "अनुक्रमणिका",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "भू-उपग्रहहरू",
- "positionSatVisible": "देखिने भू-उपग्रहहरू",
- "positionRssi": "RSSI",
- "positionGps": "जिपियस्",
- "positionRoaming": "Roaming",
- "positionEvent": "घटना",
- "positionAlarm": "अलार्म",
- "positionStatus": "स्थिति",
- "positionOdometer": "ओडोमिटर",
- "positionServiceOdometer": "Service ओडोमीटर",
- "positionTripOdometer": "ट्रिप ओडोमीटर",
- "positionHours": "घण्टा",
- "positionSteps": "पाइलाहरू",
- "positionInput": "निवेश",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "आउटपुट",
- "positionBatteryLevel": "ब्याट्री स्तर",
- "positionFuelConsumption": "इन्धन खपत",
- "positionRfid": "RFID",
- "positionVersionFw": "फर्मवेयर संस्करण",
- "positionVersionHw": "हार्डवेयर संस्करण",
- "positionIgnition": "प्रज्वलन",
- "positionFlags": "झण्डाहरू",
- "positionCharge": "चार्ज",
- "positionIp": "IP",
- "positionArchive": "अभिलेख",
- "positionVin": "VIN",
- "positionApproximate": "अनुमान",
- "positionThrottle": "थ्रोटल",
- "positionMotion": "गति",
- "positionArmed": "सशस्त्र",
- "positionAcceleration": "प्रवेग",
- "positionTemp": "तापक्रम",
- "positionDeviceTemp": "यन्त्र तापक्रम",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "सञ्चालक",
- "positionCommand": "आदेश",
- "positionBlocked": "अवरुद्ध",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD गति",
- "positionObdOdometer": "OBD ओडोमिटर",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "चालक अद्वितीय आईडी",
- "positionCard": "Card",
- "positionImage": "छवि",
- "positionVideo": "भिडियो",
- "positionAudio": "ध्वनि",
- "serverTitle": "सर्भर सेटिंग",
- "serverZoom": "ठुलो बनाउने ",
- "serverRegistration": "दर्ता ",
- "serverReadonly": "पढ्ने मात्रै ",
- "serverForceSettings": "बल सेटिङहरू",
- "serverAnnouncement": "घोषणा",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "नक्शा ",
- "mapActive": "सक्रिय नक्शा",
- "mapOverlay": "नक्सा ओभरले",
- "mapOverlayCustom": "अनुकूलन ओभरले",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API कुञ्जी",
- "mapOpenWeatherClouds": "OpenWeather बादलहरू",
- "mapOpenWeatherPrecipitation": "OpenWeather वर्षा",
- "mapOpenWeatherPressure": "OpenWeather दबाब",
- "mapOpenWeatherWind": "OpenWeather पवन",
- "mapOpenWeatherTemperature": "OpenWeather तापमान",
- "mapLayer": "नक्शा को तह ",
- "mapCustom": "अनुकूलन (XYZ)",
- "mapCustomArcgis": "अनुकूलन (ArcGIS)",
- "mapCustomLabel": "अनुकूल नक्शा",
- "mapCarto": "कार्टो आधारनक्सा",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "बिंग नक्शाको चाबी (कि) ",
- "mapBingRoad": "बिंग नक्शा (सडक)",
- "mapBingAerial": "बिंग नक्शा (एरियल)",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "बाईडु",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "यान्डेक्स नक्सा",
- "mapYandexSat": "यान्डेक्स भू-उपग्रह",
- "mapWikimedia": "विकिमिडिया",
- "mapOrdnanceSurvey": "आयुध सर्वेक्षण",
- "mapMapboxStreets": "म्यापबक्स सडकहरू",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "आउटडोर आउटडोर",
- "mapMapboxSatellite": "म्यापबक्स उपग्रह",
- "mapMapboxKey": "म्यापबक्स पहुँच टोकन",
- "mapMapTilerBasic": "MapTiler आधारभूत",
- "mapMapTilerHybrid": "MapTiler हाइब्रिड",
- "mapMapTilerKey": "MapTiler API कुञ्जी",
- "mapLocationIqStreets": "स्थानIQ सडकहरू",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ पहुँच टोकन",
- "mapTomTomBasic": "टमटम बेसिक",
- "mapTomTomFlow": "TomTom यातायात प्रवाह",
- "mapTomTomIncidents": "टमटम ट्राफिक घटनाहरू",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "यहाँ ट्राफिक प्रवाह",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "बहुभुज",
- "mapShapeCircle": "वृत्त",
- "mapShapePolyline": "बहुरेखा",
- "mapLiveRoutes": "प्रत्यक्ष मार्गहरू",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "वर्तमान स्थान",
- "mapPoiLayer": "POI तह",
- "mapClustering": "मार्कर क्लस्टरिङ",
- "mapOnSelect": "चयनमा नक्सा देखाउनुहोस्",
- "mapDefault": "Default Map",
- "stateTitle": "अवस्था ",
- "stateName": "बिषेशता",
- "stateValue": "मूल्य ",
- "commandTitle": "आदेश ",
- "commandSend": "पठाउने ",
- "commandSent": "आदेश पठाइयो",
- "commandQueued": "कमाण्ड पङ्क्तिबद्ध",
- "commandUnit": "इकाई ",
- "commandCustom": "अनुकुल आदेश",
- "commandDeviceIdentification": "यन्त्र पहिचान",
- "commandPositionSingle": "एकल प्रतिबेदन",
- "commandPositionPeriodic": "आवधिक प्रतिबेदन ",
- "commandPositionStop": "प्रतिबेदन बन्द गर्ने ",
- "commandEngineStop": "इन्जिन बन्द गर्ने ",
- "commandEngineResume": "इन्जिन खोल्ने ",
- "commandAlarmArm": "हात चेतावनी",
- "commandAlarmDisarm": "निशस्त्र अलार्म",
- "commandAlarmDismiss": "अलार्म खारेज गर्नुहोस्",
- "commandSetTimezone": "समय क्षेत्र सेट गर्नुहोस्",
- "commandRequestPhoto": "फोटो अनुरोध",
- "commandPowerOff": "पावर अफ यन्त्र",
- "commandRebootDevice": " यन्त्र रिबुट गर्नुहोस्",
- "commandFactoryReset": "Factory रिसेट",
- "commandSendSms": "एसएमएस पठाउनुहोस्",
- "commandSendUssd": "USSD पठाउनुहोस्",
- "commandSosNumber": "SOS नम्बर सेट गर्नुहोस्",
- "commandSilenceTime": "मौन समय सेट गर्नुहोस्",
- "commandSetPhonebook": "फोनबुक सेट गर्नुहोस्",
- "commandVoiceMessage": "आवाज सन्देश",
- "commandOutputControl": "आउटपुट नियन्त्रण",
- "commandVoiceMonitoring": "आवाज निगरानी",
- "commandSetAgps": "जिपियस् सेट गर्नुहोस्",
- "commandSetIndicator": "सूचक सेट गर्नुहोस्",
- "commandConfiguration": "कन्फिगरेसन",
- "commandGetVersion": "संस्करण प्राप्त गर्नुहोस्",
- "commandFirmwareUpdate": "फर्मवेयर अपडेट गर्नुहोस्",
- "commandSetConnection": "जडान सेट गर्नुहोस्",
- "commandSetOdometer": "ओडोमिटर सेट गर्नुहोस्",
- "commandGetModemStatus": "मोदेमको स्थिति जान्नुहोस्",
- "commandGetDeviceStatus": "यन्त्रको स्थिति जान्नुहोस्",
- "commandSetSpeedLimit": "गति सीमा सेट गर्नुहोस्",
- "commandModePowerSaving": "पावर बचत मोड",
- "commandModeDeepSleep": "गहिरो निद्रा मोड",
- "commandAlarmGeofence": "Geofence अलार्म सेट गर्नुहोस्",
- "commandAlarmBattery": "ब्याट्री अलार्म सेट गर्नुहोस्",
- "commandAlarmSos": "SOS अलार्म सेट गर्नुहोस्",
- "commandAlarmRemove": "अलार्म हटाउनुहोस् सेट गर्नुहोस्",
- "commandAlarmClock": "घडी अलार्म सेट गर्नुहोस्",
- "commandAlarmSpeed": "गति अलार्म सेट गर्नुहोस्",
- "commandAlarmFall": "पतन अलार्म सेट गर्नुहोस्",
- "commandAlarmVibration": "कम्पन अलार्म सेट गर्नुहोस्",
- "commandFrequency": "आव्रती ",
- "commandTimezone": "समय क्षेत्र अफसेट",
- "commandMessage": "सन्देश",
- "commandRadius": "त्रिज्या",
- "commandEnable": "सक्षम गर्नुहोस्",
- "commandData": "डाटा",
- "commandIndex": "अनुक्रमणिका",
- "commandPhone": "फोन नम्बर",
- "commandServer": "सर्भर",
- "commandPort": "पोर्ट",
- "eventAll": "सबै घटना",
- "eventDeviceOnline": "अनलाईन स्थिति",
- "eventDeviceUnknown": "अज्ञात स्थिति",
- "eventDeviceOffline": "अफलाईन स्थिति",
- "eventDeviceInactive": "यन्त्र निष्क्रिय छ",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "यन्त्र चलिरहेको छ",
- "eventDeviceStopped": "यन्त्र रोकियो",
- "eventDeviceOverspeed": "गति सिमा नाघ्यो",
- "eventDeviceFuelDrop": "इन्धन खस्यो",
- "eventDeviceFuelIncrease": "इन्धन बढ्यो",
- "eventCommandResult": "आदेश परिणाम",
- "eventGeofenceEnter": "Geofence प्रवेश गर्नुभयो",
- "eventGeofenceExit": "Geofence बाहिर निस्कियो",
- "eventAlarm": "अलार्म",
- "eventIgnitionOn": "इग्निशन अन",
- "eventIgnitionOff": "इग्निशन बन्द",
- "eventMaintenance": "मर्मत आवश्यक",
- "eventTextMessage": "पाठ सन्देश प्राप्त भयो",
- "eventDriverChanged": "चालक परिवर्तन भयो",
- "eventMedia": "मिडिया",
- "eventsScrollToLast": "अन्तिममा स्क्रोल गर्नुहोस्",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "सामान्य",
- "alarmSos": "SOS",
- "alarmVibration": "कम्पन",
- "alarmMovement": "आन्दोलन",
- "alarmLowspeed": "कम गति",
- "alarmOverspeed": "अधिक गति",
- "alarmFallDown": "तल झर्नु",
- "alarmLowPower": "कम शक्ति",
- "alarmLowBattery": "कम ब्याट्री",
- "alarmFault": "गल्ती",
- "alarmPowerOff": "पावर अफ",
- "alarmPowerOn": "चालु गर",
- "alarmDoor": "ढोका",
- "alarmLock": "ताला",
- "alarmUnlock": "अनलक गर्नुहोस्",
- "alarmGeofence": "जियोफेन्स",
- "alarmGeofenceEnter": "Geofence प्रविष्ट गर्नुहोस्",
- "alarmGeofenceExit": "Geofence निकास",
- "alarmGpsAntennaCut": "काटिएको जिपियस् आन्टेना",
- "alarmAccident": "दुर्घटना",
- "alarmTow": "टो",
- "alarmIdle": "निष्क्रिय",
- "alarmHighRpm": "उच्च RPM",
- "alarmHardAcceleration": "हार्ड एक्सेलेरेशन",
- "alarmHardBraking": "कडा ब्रेकिङ",
- "alarmHardCornering": "कडा कुना",
- "alarmLaneChange": "लेन परिवर्तन",
- "alarmFatigueDriving": "थकान ड्राइभिङ",
- "alarmPowerCut": "पावर कट",
- "alarmPowerRestored": "शक्ति पुनर्स्थापित",
- "alarmJamming": "जामिङ",
- "alarmTemperature": "तापक्रम",
- "alarmParking": "पार्किङ",
- "alarmBonnet": "बोनेट",
- "alarmFootBrake": "फुट ब्रेक",
- "alarmFuelLeak": "इन्धन चुहावट",
- "alarmTampering": "छेडछाड",
- "alarmRemoving": "हटाउँदै",
- "notificationType": "सुचना प्रकार",
- "notificationAlways": "सबै उपकरणहरू",
- "notificationNotificators": "च्यानलहरू",
- "notificatorCommand": "Command",
- "notificatorWeb": "वेब",
- "notificatorMail": "पत्र",
- "notificatorSms": "यसएमयस",
- "notificatorFirebase": "फायरबेस",
- "notificatorTraccar": "ट्रयाकर",
- "notificatorTelegram": "टेलिग्राम",
- "notificatorPushover": "पुशओभर",
- "reportReplay": "रिप्ले",
- "reportCombined": "Combined",
- "reportRoute": "रुट",
- "reportEvents": "घटनाहरू",
- "reportTrips": "यात्राहरू",
- "reportStops": "रोकिन्छ",
- "reportSummary": "सारांश",
- "reportDaily": "दैनिक सारांश",
- "reportChart": "मानचित्र",
- "reportConfigure": "कन्फिगर ",
- "reportEventTypes": "घटना प्रकार",
- "reportChartType": "मानचित्र प्रकार",
- "reportShowMarkers": "मार्करहरू देखाउनुहोस्",
- "reportExport": "निकास",
- "reportEmail": "प्रतिबेदन ई-मेल गर्ने",
- "reportSchedule": "Schedule",
- "reportPeriod": "अवधि",
- "reportCustom": "अनुकुल",
- "reportToday": "आज",
- "reportYesterday": "हिजो",
- "reportThisWeek": "हालको हप्ता",
- "reportPreviousWeek": "अघिल्लो हप्ता",
- "reportThisMonth": "हालको महिना",
- "reportPreviousMonth": "अघिल्लो महिना",
- "reportDeviceName": "यन्त्र नाम",
- "reportAverageSpeed": "औसत गति",
- "reportMaximumSpeed": "अधिकतम गति",
- "reportEngineHours": "इन्जिन घण्टा",
- "reportDuration": "अवधि",
- "reportStartDate": "सुरू मिति",
- "reportStartTime": "शुरु समय",
- "reportStartAddress": "शुरु ठेगाना",
- "reportEndTime": "अन्त्य समय",
- "reportEndAddress": "अन्त्य ठेगाना",
- "reportSpentFuel": "खर्चित ईन्धन",
- "reportStartOdometer": "ओडोमिटर सुरु",
- "reportEndOdometer": "ओडोमिटर अन्त्य",
- "statisticsTitle": "तथ्याङ्क ",
- "statisticsCaptureTime": "समय कब्जा",
- "statisticsActiveUsers": "सक्रिय प्रयोगकर्ता",
- "statisticsActiveDevices": "सक्रिय यन्त्रहरू",
- "statisticsRequests": "अनुरोधहरू",
- "statisticsMessagesReceived": "सन्देशहरू प्राप्त भयो",
- "statisticsMessagesStored": "सन्देशहरू भण्डारण गरियो",
- "statisticsGeocoder": "जियोकोडर अनुरोधहरू",
- "statisticsGeolocation": "भौगोलिक स्थान अनुरोधहरू",
- "categoryArrow": "तीर",
- "categoryDefault": "पुर्वनिर्धारित",
- "categoryAnimal": "जनावर ",
- "categoryBicycle": "साइकल ",
- "categoryBoat": "डुंगा ",
- "categoryBus": "बस ",
- "categoryCar": "कार ",
- "categoryCamper": "Camper",
- "categoryCrane": "क्रेन ",
- "categoryHelicopter": "हेलिकप्टर ",
- "categoryMotorcycle": "मोटरसाइकल ",
- "categoryOffroad": "कच्ची बाटो ",
- "categoryPerson": "व्यक्ति ",
- "categoryPickup": "पिकअप ",
- "categoryPlane": "हवाइजहाज ",
- "categoryShip": "जहाज ",
- "categoryTractor": "ट्रयाक्टर",
- "categoryTrain": "रेल",
- "categoryTram": "ट्राम",
- "categoryTrolleybus": "ट्रलिबस",
- "categoryTruck": "ट्रक ",
- "categoryVan": "भ्यान ",
- "categoryScooter": "स्कुटर",
- "maintenanceStart": "शुरु",
- "maintenancePeriod": "अवधि"
-} \ No newline at end of file
diff --git a/web/l10n/nl.json b/web/l10n/nl.json
deleted file mode 100644
index 224adc26..00000000
--- a/web/l10n/nl.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Laden...",
- "sharedHide": "Verberg",
- "sharedSave": "Opslaan",
- "sharedUpload": "Upload",
- "sharedSet": "Instellen",
- "sharedCancel": "Annuleren",
- "sharedCopy": "Copy",
- "sharedAdd": "Toevoegen",
- "sharedEdit": "Bewerken",
- "sharedRemove": "Verwijderen",
- "sharedRemoveConfirm": "Item verwijderen?",
- "sharedNoData": "Geen gegevens",
- "sharedSubject": "Subject",
- "sharedYes": "Ja",
- "sharedNo": "Nee",
- "sharedKm": "km",
- "sharedMi": "mijl",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "knopen",
- "sharedKmh": "km/h",
- "sharedMph": "mijl per uur",
- "sharedHour": "Uur",
- "sharedMinute": "Minuut",
- "sharedSecond": "Seconde",
- "sharedDays": "dagen",
- "sharedHours": "uren",
- "sharedMinutes": "minuten",
- "sharedDecimalDegrees": "Decimale graden",
- "sharedDegreesDecimalMinutes": "Graden decimale minuten",
- "sharedDegreesMinutesSeconds": "Graden minuten/seconden",
- "sharedName": "Naam",
- "sharedDescription": "Omschrijving",
- "sharedSearch": "Zoeken",
- "sharedIconScale": "Schaal van iconen",
- "sharedGeofence": "Geografisch gebied",
- "sharedGeofences": "Geografische gebieden",
- "sharedCreateGeofence": "Maak geofence",
- "sharedNotifications": "Notificatie",
- "sharedNotification": "Notificatie",
- "sharedAttributes": "Attributen",
- "sharedAttribute": "Attribuut",
- "sharedDrivers": "Bestuurders",
- "sharedDriver": "Bestuurder",
- "sharedArea": "Gebied",
- "sharedSound": "Notificatiegeluid",
- "sharedType": "Type",
- "sharedDistance": "Afstand",
- "sharedHourAbbreviation": "u",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "liter",
- "sharedImpGallon": "imperial gallon",
- "sharedUsGallon": "U.S. gallon",
- "sharedLiterPerHourAbbreviation": "l/u",
- "sharedGetMapState": "Haal kaartstatus op",
- "sharedComputedAttribute": "Berekend attribuut",
- "sharedComputedAttributes": "Berekende attributen",
- "sharedCheckComputedAttribute": "Controleer berekend attribuut",
- "sharedExpression": "Uitdrukking",
- "sharedDevice": "Apparaat",
- "sharedTest": "Test",
- "sharedTestNotification": "Stuur testnotificatie",
- "sharedTestNotificators": "Testkanalen",
- "sharedTestExpression": "Testexpressie",
- "sharedCalendar": "Kalender",
- "sharedCalendars": "Kalenders",
- "sharedFile": "Bestand",
- "sharedSearchDevices": "Zoek apparaten",
- "sharedSortBy": "Sorteer op",
- "sharedFilterMap": "Filter op kaart",
- "sharedSelectFile": "Selecteer bestand",
- "sharedPhone": "Telefoon",
- "sharedRequired": "Verplicht",
- "sharedPreferences": "Voorkeuren",
- "sharedPermissions": "Rechten",
- "sharedConnections": "Connecties",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primair",
- "sharedSecondary": "Secundair",
- "sharedTypeString": "Tekst",
- "sharedTypeNumber": "Getal",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Tijdzone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Opgeslagen commando",
- "sharedSavedCommands": "Opgeslagen commando's",
- "sharedNew": "Nieuw...",
- "sharedShowAddress": "Toon adres",
- "sharedShowDetails": "Meer details",
- "sharedDisabled": "Uitgeschakeld",
- "sharedMaintenance": "Onderhoud",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarmen",
- "sharedLocation": "Locatie",
- "sharedImport": "Importeren",
- "sharedColumns": "Kolommen",
- "sharedDropzoneText": "Sleep en plaats hier een bestand of klik hier",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Eenvoudig",
- "calendarRecurrence": "Herhaling",
- "calendarOnce": "Eenmalig",
- "calendarDaily": "Dagelijks",
- "calendarWeekly": "Wekelijks",
- "calendarMonthly": "Maandelijks",
- "calendarDays": "Dagen",
- "calendarSunday": "Zondag",
- "calendarMonday": "Maandag",
- "calendarTuesday": "Dinsdag",
- "calendarWednesday": "Woensdag",
- "calendarThursday": "Donderdag",
- "calendarFriday": "Vrijdag",
- "calendarSaturday": "Zaterdag",
- "attributeShowGeofences": "Toon geofences",
- "attributeSpeedLimit": "Snelheidslimiet",
- "attributeFuelDropThreshold": "Brandstofafname grens",
- "attributeFuelIncreaseThreshold": "Brandstoftoename grens",
- "attributePolylineDistance": "Polylijn afstand",
- "attributeReportIgnoreOdometer": "Rapport: negeer odometer",
- "attributeWebReportColor": "Web: rapportkleur",
- "attributeDevicePassword": "Apparaatwachtwoord",
- "attributeDeviceImage": "Apparaatafbeelding",
- "attributeDeviceInactivityStart": "Start van inactiviteit",
- "attributeDeviceInactivityPeriod": "Inactiviteitperiode",
- "attributeProcessingCopyAttributes": "Verwerking: kopieer attributen",
- "attributeColor": "Kleur",
- "attributeWebLiveRouteLength": "Web: live routelengte",
- "attributeWebSelectZoom": "Web: zoomen tijdens selecteren",
- "attributeWebMaxZoom": "Web: maximaal zoomniveau",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover gebruikerssleutel",
- "attributePushoverDeviceNames": "Pushover apparaatnamen",
- "attributeMailSmtpHost": "Mail: SMTP host",
- "attributeMailSmtpPort": "Mail: SMTP poort",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTL ingeschakeld",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTL vereist",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL ingeschakeld",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL vertrouwd",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL protocollen",
- "attributeMailSmtpFrom": "Mail: SMTP van",
- "attributeMailSmtpAuth": "Mail: SMTP authenticatie ingeschakeld",
- "attributeMailSmtpUsername": "Mail: SMTP gebruikersnaam",
- "attributeMailSmtpPassword": "Mail: SMTP wachtwoord",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: attributen uitschakelen",
- "attributeUiDisableGroups": "UI: groepen uitschakelen",
- "attributeUiDisableEvents": "UI: Gebeurtenissen uitschakelen",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: bestuurders uitschakelen",
- "attributeUiDisableComputedAttributes": "UI: berekende attributen uitschakelen",
- "attributeUiDisableCalendars": "UI: kalenders uitschakelen",
- "attributeUiDisableMaintenance": "UI: Onderhoud uitschakelen",
- "attributeUiHidePositionAttributes": "UI: Verberg positie-eigenschappen",
- "attributeUiDisableLoginLanguage": "UI: logintaal uitschakelen",
- "attributeNotificationTokens": "Notificatietokens",
- "attributePopupInfo": "Popup info",
- "errorTitle": "Fout",
- "errorGeneral": "Ongeldige parameters of overschrijding van beperkingen",
- "errorConnection": "Verbindingsfout",
- "errorSocket": "Web socket verbindingsfout",
- "errorZero": "Mag niet nul zijn",
- "userEmail": "E-mail",
- "userPassword": "Wachtwoord",
- "userAdmin": "Administrator",
- "userRemember": "Onthouden",
- "userExpirationTime": "Verloopdatum",
- "userDeviceLimit": "Apparaatlimiet",
- "userUserLimit": "Gebruikerlimiet",
- "userDeviceReadonly": "Apparaat alleen-lezen",
- "userLimitCommands": "Limiteer commando's",
- "userDisableReports": "Rapporten uitschakelen",
- "userFixedEmail": "Geen e-mail aanpassing",
- "userToken": "Token",
- "userDeleteAccount": "Geen account",
- "userTemporary": "Temporary",
- "loginTitle": "Inloggen",
- "loginLanguage": "Taal",
- "loginReset": "Wachtwoord herstellen",
- "loginRegister": "Registreren",
- "loginLogin": "Inloggen",
- "loginOpenId": "Inloggen met OpenID",
- "loginFailed": "Onjuist e-mailadres of wachtwoord",
- "loginCreated": "De nieuwe gebruiker is geregistreerd",
- "loginResetSuccess": "Check je e-mail",
- "loginUpdateSuccess": "Het wachtwoord is ingesteld",
- "loginLogout": "Afmelden",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Apparaten en status",
- "deviceSelected": "Geselecteerd apparaat",
- "deviceTitle": "Apparaten",
- "devicePrimaryInfo": "Apparaattitel",
- "deviceSecondaryInfo": "Apparaatdetail",
- "deviceIdentifier": "Identifier",
- "deviceModel": "Model",
- "deviceContact": "Contact",
- "deviceCategory": "Categorie",
- "deviceLastUpdate": "Laatste update",
- "deviceCommand": "Commando",
- "deviceFollow": "Volgen",
- "deviceTotalDistance": "Totale afstand",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Onbekend",
- "deviceRegisterFirst": "Registreer je eerste apparaat",
- "deviceIdentifierHelp": "IMEI, serienummer of ander id. Het moet overeenkomen met het identificatienummer dat het apparaat rapporteert aan de server.",
- "deviceShare": "Share Device",
- "groupDialog": "Groep",
- "groupParent": "Groep",
- "groupNoGroup": "Geen groep",
- "settingsTitle": "Instellingen",
- "settingsUser": "Account",
- "settingsGroups": "Groepen",
- "settingsServer": "Server",
- "settingsUsers": "Gebruikers",
- "settingsDistanceUnit": "Afstandseenheid",
- "settingsAltitudeUnit": "Hoogte eenheid",
- "settingsSpeedUnit": "Snelheidseenheid",
- "settingsVolumeUnit": "Volume-eenheid",
- "settingsTwelveHourFormat": "12-uurs indeling",
- "settingsCoordinateFormat": "Coördinatenformaat ",
- "settingsServerVersion": "Serverversie",
- "settingsAppVersion": "Appversie",
- "settingsConnection": "Verbinding",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Rapportages",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Apparaat",
- "reportGroup": "Groep",
- "reportFrom": "Van",
- "reportTo": "Naar",
- "reportShow": "Laat zien",
- "reportClear": "Leegmaken",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Tijd aanpassen",
- "positionDeviceTime": "Tijd van apparaat",
- "positionServerTime": "Tijd van server",
- "positionValid": "Geldig",
- "positionAccuracy": "Nauwkeurigheid",
- "positionLatitude": "Breedtegraad",
- "positionLongitude": "Lengtegraad",
- "positionAltitude": "Hoogte",
- "positionSpeed": "Snelheid",
- "positionCourse": "Koers",
- "positionAddress": "Adres",
- "positionProtocol": "Protocol",
- "positionDistance": "Afstand",
- "positionRpm": "RPM",
- "positionFuel": "Brandstof",
- "positionPower": "Stroom",
- "positionBattery": "Accu",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellieten",
- "positionSatVisible": "Zichtbare satellieten",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roamen",
- "positionEvent": "Gebeurtenis",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service odometer",
- "positionTripOdometer": "Reis odometer",
- "positionHours": "Uur",
- "positionSteps": "Stappen",
- "positionInput": "Invoer",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Uitvoer",
- "positionBatteryLevel": "Accuniveau",
- "positionFuelConsumption": "Brandstofverbruik",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware versie",
- "positionVersionHw": "Hardware versie",
- "positionIgnition": "Contact",
- "positionFlags": "Vlaggen",
- "positionCharge": "Lading",
- "positionIp": "IP",
- "positionArchive": "Archief",
- "positionVin": "VIN",
- "positionApproximate": "Benadering",
- "positionThrottle": "Throttle",
- "positionMotion": "Beweging",
- "positionArmed": "Armed",
- "positionAcceleration": "Versnelling",
- "positionTemp": "Temperatuur",
- "positionDeviceTemp": "Apparaattemperatuur",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Commando",
- "positionBlocked": "Geblokkeerd",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD snelheid",
- "positionObdOdometer": "OBD odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Bestuurder uniek ID",
- "positionCard": "Card",
- "positionImage": "Afbeelding",
- "positionVideo": "Video",
- "positionAudio": "Geluid",
- "serverTitle": "Serverinstellingen",
- "serverZoom": "Zoom",
- "serverRegistration": "Registratie",
- "serverReadonly": "Alleen lezen",
- "serverForceSettings": "Instellingen forceren",
- "serverAnnouncement": "Aankondiging",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Kaart",
- "mapActive": "Actieve kaarten",
- "mapOverlay": "Kaartlaag",
- "mapOverlayCustom": "Aangepaste laag",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API sleutel",
- "mapOpenWeatherClouds": "OpenWeather wolken",
- "mapOpenWeatherPrecipitation": "OpenWeather neerslag",
- "mapOpenWeatherPressure": "OpenWeather luchtdruk",
- "mapOpenWeatherWind": "OpenWeather wind",
- "mapOpenWeatherTemperature": "OpenWeather temperatuur",
- "mapLayer": "Kaart laag",
- "mapCustom": "Aangepast (XYZ)",
- "mapCustomArcgis": "Aangepast (ArcGIS)",
- "mapCustomLabel": "Aangepaste map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps sleutel",
- "mapBingRoad": "Bing Maps Wegen",
- "mapBingAerial": "Bing Maps Luchtfoto",
- "mapBingHybrid": "Bing Maps hybride",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex kaart",
- "mapYandexSat": "Yandex satelliet",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "MapBox toegangsleutel",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API sleutel",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ toegangsleutel",
- "mapTomTomBasic": "TomTom basis",
- "mapTomTomFlow": "TomTom verkeersstromen",
- "mapTomTomIncidents": "TomTom verkeersincidenten",
- "mapTomTomKey": "TomTom API sleutel",
- "mapHereBasic": "Here basis",
- "mapHereHybrid": "Here hybride",
- "mapHereSatellite": "Here satelliet",
- "mapHereFlow": "Here verkeersstromen",
- "mapHereKey": "Here API sleutel",
- "mapShapePolygon": "Polygoon",
- "mapShapeCircle": "Cirkel",
- "mapShapePolyline": "Polylijn",
- "mapLiveRoutes": "Live routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Huidige locatie",
- "mapPoiLayer": "POI laag",
- "mapClustering": "Markeringen clusteren",
- "mapOnSelect": "Toon kaart bij selectie",
- "mapDefault": "Default Map",
- "stateTitle": "Status",
- "stateName": "Parameter",
- "stateValue": "Waarde",
- "commandTitle": "Commando",
- "commandSend": "Verstuur",
- "commandSent": "Commando verstuurd",
- "commandQueued": "Commando in de wachtrij geplaatst",
- "commandUnit": "Eenheid",
- "commandCustom": "Aangepast commando",
- "commandDeviceIdentification": "Apparaatidentificatie",
- "commandPositionSingle": "Enkel commando",
- "commandPositionPeriodic": "Periodiek rapporteren",
- "commandPositionStop": "Stop rapporteren",
- "commandEngineStop": "Motor stoppen",
- "commandEngineResume": "Motor hervatten",
- "commandAlarmArm": "Alarm aan",
- "commandAlarmDisarm": "Alarm uit",
- "commandAlarmDismiss": "Alarm negeren",
- "commandSetTimezone": "Tijdzone instellen",
- "commandRequestPhoto": "Vraag foto",
- "commandPowerOff": "Apparaat uitschakelen",
- "commandRebootDevice": "Herstart apparaat",
- "commandFactoryReset": "Naar fabrieksinstellingen",
- "commandSendSms": "Stuur SMS",
- "commandSendUssd": "Stuur USDD",
- "commandSosNumber": "Stel SOS-nummer in",
- "commandSilenceTime": "Stel 'Stille tijd' in",
- "commandSetPhonebook": "Bewerk telefoonboek",
- "commandVoiceMessage": "Spraakbericht",
- "commandOutputControl": "Stel output in",
- "commandVoiceMonitoring": "Stemmonitoring",
- "commandSetAgps": "AGPS instellen",
- "commandSetIndicator": "Indicator instellen",
- "commandConfiguration": "Configuratie",
- "commandGetVersion": "Versie ophalen",
- "commandFirmwareUpdate": "Firmware bijwerken",
- "commandSetConnection": "Connectie instellen",
- "commandSetOdometer": "Odometer instellen",
- "commandGetModemStatus": "Modemstatus opvragen",
- "commandGetDeviceStatus": "Apparaatstatus opvragen",
- "commandSetSpeedLimit": "Snelheidslimiet instellen",
- "commandModePowerSaving": "Batterijspaarstand",
- "commandModeDeepSleep": "Diepe slaapstand",
- "commandAlarmGeofence": "Geofence-alarm instellen",
- "commandAlarmBattery": "Accualarm instellen",
- "commandAlarmSos": "SOS-alarm instellen",
- "commandAlarmRemove": "Verwijderalarm instellen",
- "commandAlarmClock": "Klokalarm instellen",
- "commandAlarmSpeed": "Snelheidsalarm instellen",
- "commandAlarmFall": "Probleemalarm instellen",
- "commandAlarmVibration": "Trilalarm instellen",
- "commandFrequency": "Frequentie",
- "commandTimezone": "Tijdzoneverschil",
- "commandMessage": "Bericht",
- "commandRadius": "Radius",
- "commandEnable": "Inschakelen",
- "commandData": "Data",
- "commandIndex": "Index",
- "commandPhone": "Telefoonnummer",
- "commandServer": "Server",
- "commandPort": "Poort",
- "eventAll": "Alle gebeurtenissen",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status onbekend",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Einde van inactiviteit",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Apparaat beweegt",
- "eventDeviceStopped": "Apparaat gestopt",
- "eventDeviceOverspeed": "Snelheidslimiet overschreden",
- "eventDeviceFuelDrop": "Brandstofafname",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Commando resultaat",
- "eventGeofenceEnter": "Geofence binnengegaan",
- "eventGeofenceExit": "Geofence verlaten",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ontsteking aan",
- "eventIgnitionOff": "Ontsteking uit",
- "eventMaintenance": "Onderhoud vereist",
- "eventTextMessage": "Tekstbericht ontvangen",
- "eventDriverChanged": "Bestuurder veranderd",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll naar laatste",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Algemeen",
- "alarmSos": "SOS",
- "alarmVibration": "Trilling",
- "alarmMovement": "Beweging",
- "alarmLowspeed": "Lage snelheid",
- "alarmOverspeed": "Snelheidsoverschreiding",
- "alarmFallDown": "Gevallen",
- "alarmLowPower": "Lage stroom",
- "alarmLowBattery": "Laag accuniveau",
- "alarmFault": "Fout",
- "alarmPowerOff": "Uitgeschakeld",
- "alarmPowerOn": "Ingeschakeld",
- "alarmDoor": "Deur",
- "alarmLock": "Afgesloten",
- "alarmUnlock": "Geopend",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence binnengegaan",
- "alarmGeofenceExit": "Geofence verlaten",
- "alarmGpsAntennaCut": "GPS antenne verbroken",
- "alarmAccident": "Ongeluk",
- "alarmTow": "Gesleept",
- "alarmIdle": "Rust",
- "alarmHighRpm": "Hoge TPM",
- "alarmHardAcceleration": "Harde versnelling",
- "alarmHardBraking": "Harde remming",
- "alarmHardCornering": "Scherpe bocht",
- "alarmLaneChange": "Rijbaanwisseling",
- "alarmFatigueDriving": "Vermoeid rijden",
- "alarmPowerCut": "Stroomonderbreking",
- "alarmPowerRestored": "Stroom hersteld",
- "alarmJamming": "Verstoring",
- "alarmTemperature": "Temperatuur",
- "alarmParking": "Parkeren",
- "alarmBonnet": "Motorkap",
- "alarmFootBrake": "Voetrem",
- "alarmFuelLeak": "Brandstoflek",
- "alarmTampering": "Knoeien",
- "alarmRemoving": "Verwijderd",
- "notificationType": "Notificatietype",
- "notificationAlways": "Alle apparaten",
- "notificationNotificators": "Kanalen",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "E-mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Opnieuw afspelen",
- "reportCombined": "Combined",
- "reportRoute": "Route",
- "reportEvents": "Gebeurtenissen",
- "reportTrips": "Ritten",
- "reportStops": "Stops",
- "reportSummary": "Samenvatting",
- "reportDaily": "Dagelijkse samenvatting",
- "reportChart": "Grafiek",
- "reportConfigure": "Configureer",
- "reportEventTypes": "Gebeurtenistypen",
- "reportChartType": "Grafiektype",
- "reportShowMarkers": "Toon markeringen",
- "reportExport": "Exporteren",
- "reportEmail": "E-mailrapport",
- "reportSchedule": "Schedule",
- "reportPeriod": "Periode",
- "reportCustom": "Aangepast",
- "reportToday": "Vandaag",
- "reportYesterday": "Gisteren",
- "reportThisWeek": "Deze week",
- "reportPreviousWeek": "Vorige week",
- "reportThisMonth": "Deze maand",
- "reportPreviousMonth": "Vorige maand",
- "reportDeviceName": "Apparaatnaam",
- "reportAverageSpeed": "Gemiddelde snelheid",
- "reportMaximumSpeed": "Maximale snelheid",
- "reportEngineHours": "Draaiuren motor",
- "reportDuration": "Duur",
- "reportStartDate": "Startdatum",
- "reportStartTime": "Starttijd",
- "reportStartAddress": "Beginadres",
- "reportEndTime": "Eindtijd",
- "reportEndAddress": "Eindadres",
- "reportSpentFuel": "Verbruikte brandstof",
- "reportStartOdometer": "Odometer start",
- "reportEndOdometer": "Odometer einde",
- "statisticsTitle": "Statistieken",
- "statisticsCaptureTime": "Opnametijd",
- "statisticsActiveUsers": "Actieve gebruikers",
- "statisticsActiveDevices": "Actieve apparaten",
- "statisticsRequests": "Verzoeken",
- "statisticsMessagesReceived": "Ontvangen berichten",
- "statisticsMessagesStored": "Opgeslagen berichten",
- "statisticsGeocoder": "Geocoderverzoeken",
- "statisticsGeolocation": "Geolocatieverzoeken",
- "categoryArrow": "Aanwijzer",
- "categoryDefault": "Standaard",
- "categoryAnimal": "Dier",
- "categoryBicycle": "Fiets",
- "categoryBoat": "Boot",
- "categoryBus": "Bus",
- "categoryCar": "Auto",
- "categoryCamper": "Camper",
- "categoryCrane": "Kraan",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "Motor",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Persoon",
- "categoryPickup": "Pickup",
- "categoryPlane": "Vliegtuig",
- "categoryShip": "Schip",
- "categoryTractor": "Tractor",
- "categoryTrain": "Trein",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Vrachtwagen",
- "categoryVan": "Busje",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Periode"
-} \ No newline at end of file
diff --git a/web/l10n/nn.json b/web/l10n/nn.json
deleted file mode 100644
index 2bdc5a9a..00000000
--- a/web/l10n/nn.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Lastar...",
- "sharedHide": "Gøym",
- "sharedSave": "Lagre",
- "sharedUpload": "Upload",
- "sharedSet": "Sett",
- "sharedCancel": "Avbryt",
- "sharedCopy": "Copy",
- "sharedAdd": "Legg til",
- "sharedEdit": "Endre",
- "sharedRemove": "Fjern",
- "sharedRemoveConfirm": "Fjern element?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nm",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/t",
- "sharedMph": "mph",
- "sharedHour": "Time",
- "sharedMinute": "Minutt",
- "sharedSecond": "Sekund",
- "sharedDays": "dagar",
- "sharedHours": "timar",
- "sharedMinutes": "minuttar",
- "sharedDecimalDegrees": "Disimalgrader",
- "sharedDegreesDecimalMinutes": "Desimalminutter",
- "sharedDegreesMinutesSeconds": "Grader minuttar sekund",
- "sharedName": "Namn",
- "sharedDescription": "Beskriving",
- "sharedSearch": "Søk",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geo-gjerde",
- "sharedGeofences": "Geo-gjerde",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Varsel",
- "sharedNotification": "Varsel",
- "sharedAttributes": "Eigenskapar",
- "sharedAttribute": "Eigenskap",
- "sharedDrivers": "Sjåførar",
- "sharedDriver": "Sjåfør",
- "sharedArea": "Område",
- "sharedSound": "Varslingslyd",
- "sharedType": "Type",
- "sharedDistance": "Avstand",
- "sharedHourAbbreviation": "t",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Britisk gallon",
- "sharedUsGallon": "Amerikansk gallon",
- "sharedLiterPerHourAbbreviation": "l/t",
- "sharedGetMapState": "Få karttilstand",
- "sharedComputedAttribute": "Berekna eigenskap",
- "sharedComputedAttributes": "Berekna eigenskapar",
- "sharedCheckComputedAttribute": "Sjekk berekna eigenskaper",
- "sharedExpression": "Uttrykk",
- "sharedDevice": "Eining",
- "sharedTest": "Test",
- "sharedTestNotification": "Send testvarsel",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Kalender",
- "sharedCalendars": "Kalendrar",
- "sharedFile": "Fil",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Velg fil",
- "sharedPhone": "Telefon",
- "sharedRequired": "Naudsynt",
- "sharedPreferences": "Innstillingar",
- "sharedPermissions": "Løyve",
- "sharedConnections": "Connections",
- "sharedExtra": "Ekstra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Streng",
- "sharedTypeNumber": "Nummer",
- "sharedTypeBoolean": "Boolsk",
- "sharedTimezone": "Tidssone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Lagra kommando",
- "sharedSavedCommands": "Lagra kommandoar",
- "sharedNew": "Ny...",
- "sharedShowAddress": "Vis adresse",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Deaktiver",
- "sharedMaintenance": "Vedlikehald",
- "sharedDeviceAccumulators": "Akkumulatorar",
- "sharedAlarms": "Alarmar",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Fartsgrense",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polylinjedistanse",
- "attributeReportIgnoreOdometer": "Rapporter: Ignorer kilometerteljar",
- "attributeWebReportColor": "Web: Rapportfarge",
- "attributeDevicePassword": "Einingspassord",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Prosesser: Kopier eigenskapar",
- "attributeColor": "Farge",
- "attributeWebLiveRouteLength": "Web: Live rute lengde",
- "attributeWebSelectZoom": "Web: Skaler ved val",
- "attributeWebMaxZoom": "Web: Maksimal forstørring",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "E-post: SMTP-vert",
- "attributeMailSmtpPort": "E-post: SMTP-port",
- "attributeMailSmtpStarttlsEnable": "E-post: aktiver SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "E-post: SMTP STARTTLS nøydsynt",
- "attributeMailSmtpSslEnable": "E-post: aktiver SMTP SSL",
- "attributeMailSmtpSslTrust": "E-Post: SMTP SSL tillit",
- "attributeMailSmtpSslProtocols": "E-post: SMTP SSL protokollar",
- "attributeMailSmtpFrom": "E-post: SMTP Frå",
- "attributeMailSmtpAuth": "E-post: Aktiver SMTP autentisering",
- "attributeMailSmtpUsername": "E-post: SMTP brukarnamn",
- "attributeMailSmtpPassword": "E-post: SMTP passord",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Deaktiver hendingar",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Deaktiver Sjåførar",
- "attributeUiDisableComputedAttributes": "UI: Deaktiver Berekna eigenskaper",
- "attributeUiDisableCalendars": "UI: Deaktiver kalendrar",
- "attributeUiDisableMaintenance": " UI: Deaktiver vedlikehald",
- "attributeUiHidePositionAttributes": "UI: Gøym posisojonseigenskapar",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Feil",
- "errorGeneral": "ugyldige parameterar eller avgrensingsbrot",
- "errorConnection": "Forbindelse feila",
- "errorSocket": "Web socket tilkoplingsfeil",
- "errorZero": "Kan ikkje vere null",
- "userEmail": "E-post",
- "userPassword": "Passord",
- "userAdmin": "Admin",
- "userRemember": "Hugs",
- "userExpirationTime": "Utløp",
- "userDeviceLimit": "Einingsgrense",
- "userUserLimit": "Brukargrense",
- "userDeviceReadonly": "Eining skrivebeskytta",
- "userLimitCommands": "Avgrens kommandoar",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Symbol",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Logg inn",
- "loginLanguage": "Språk",
- "loginReset": "Reset Password",
- "loginRegister": "Registrer",
- "loginLogin": "Logg inn",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Feil e-post eller passord",
- "loginCreated": "Ny brukar har blitt registrert",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Logg ut",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Einingar og status",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Einingar",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifikator",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategori",
- "deviceLastUpdate": "Sist oppdatert",
- "deviceCommand": "Kommando",
- "deviceFollow": "Følj",
- "deviceTotalDistance": "Total avstand",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Tilkopla",
- "deviceStatusOffline": "Fråkopla",
- "deviceStatusUnknown": "Ukjend",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Gruppe",
- "groupParent": "Gruppe",
- "groupNoGroup": "Inga gruppe",
- "settingsTitle": "Innstillingar",
- "settingsUser": "Konto",
- "settingsGroups": "Gruppar",
- "settingsServer": "Tenar",
- "settingsUsers": "Brukarar",
- "settingsDistanceUnit": "Avstanseining",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Hastighetseining",
- "settingsVolumeUnit": "Volumeining",
- "settingsTwelveHourFormat": "Tolvtimersformat",
- "settingsCoordinateFormat": "Koordinatformat",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Rapportar",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Eining",
- "reportGroup": "Gruppe",
- "reportFrom": "Frå",
- "reportTo": "Til",
- "reportShow": "Syn",
- "reportClear": "Nullstill",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Gyldig",
- "positionAccuracy": "Nøyaktigheit",
- "positionLatitude": "Breddegrad",
- "positionLongitude": "Lengdegrad",
- "positionAltitude": "Høgde",
- "positionSpeed": "Hastigheit",
- "positionCourse": "Retning",
- "positionAddress": "Adresse",
- "positionProtocol": "Protokoll",
- "positionDistance": "Avstand",
- "positionRpm": "RPM",
- "positionFuel": "Drivstoff",
- "positionPower": "Kraft",
- "positionBattery": "Batteri",
- "positionRaw": "Rå",
- "positionIndex": "Register",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelittar",
- "positionSatVisible": "Synlege satelittar",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Nettveksling (Roaming)",
- "positionEvent": "Hending",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Kilometerteljar",
- "positionServiceOdometer": "Service kilometerteljar",
- "positionTripOdometer": "Turmålar",
- "positionHours": "Timar",
- "positionSteps": "Steg",
- "positionInput": "Inngang",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Utgang",
- "positionBatteryLevel": "Batterinivå",
- "positionFuelConsumption": "Drivstoff-forbruk",
- "positionRfid": "RFID",
- "positionVersionFw": "Fastvareversjon",
- "positionVersionHw": "Maskinvareversjon",
- "positionIgnition": "Tenning",
- "positionFlags": "Status indikatorar",
- "positionCharge": "Lade",
- "positionIp": "IP",
- "positionArchive": "Arkiv",
- "positionVin": "VIN",
- "positionApproximate": "Tilnærma",
- "positionThrottle": "Gasspedal",
- "positionMotion": "Rørsle",
- "positionArmed": "Armert",
- "positionAcceleration": "Akselerasjon",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Einingstemperatur",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operatør",
- "positionCommand": "Kommando",
- "positionBlocked": "Blokert",
- "positionDtcs": "Diagnosefeilkoder",
- "positionObdSpeed": "OBD-hastigheit",
- "positionObdOdometer": "OBD kilometerteljar",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Sjåførunik ID",
- "positionCard": "Card",
- "positionImage": "Bilete",
- "positionVideo": "Video",
- "positionAudio": "Lyd",
- "serverTitle": "Tenarinnstillingar",
- "serverZoom": "Zoom",
- "serverRegistration": "Registering",
- "serverReadonly": "Skrivebeskytta",
- "serverForceSettings": "Tving innstillingar",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Kart",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Kartlag",
- "mapCustom": "Tilpassa (XYZ)",
- "mapCustomArcgis": "Tilpassa (ArcGIS)",
- "mapCustomLabel": "Tilpassa kart",
- "mapCarto": "Carto basiskart",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps-nøkkel",
- "mapBingRoad": "Bing Maps-veg",
- "mapBingAerial": "Bing Maps-flyfoto",
- "mapBingHybrid": "Bing kart hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex kart",
- "mapYandexSat": "Yandex satellitt",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Mangekant",
- "mapShapeCircle": "Sirkel",
- "mapShapePolyline": "Polylinje",
- "mapLiveRoutes": "Live ruter",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI-lag",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Status",
- "stateName": "Eigenskap",
- "stateValue": "Verdi",
- "commandTitle": "Kommando",
- "commandSend": "Send",
- "commandSent": "Kommando sendt",
- "commandQueued": " Kommando lagt i kø",
- "commandUnit": "Eining",
- "commandCustom": "Eigendefinert kommando",
- "commandDeviceIdentification": "Einingsidentifikasjon",
- "commandPositionSingle": "Enkel-rapportering",
- "commandPositionPeriodic": "Periodisk rapportering",
- "commandPositionStop": "Stopp rapportering",
- "commandEngineStop": "Stopp motor",
- "commandEngineResume": "Fortsett motor",
- "commandAlarmArm": "Slå alarm på",
- "commandAlarmDisarm": "Slå alarm av",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Sett opp tidssone",
- "commandRequestPhoto": "Be om foto",
- "commandPowerOff": "Skru av eining",
- "commandRebootDevice": "Omstart eining",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Send SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "Set SMS-nummer",
- "commandSilenceTime": "Sett stilletid",
- "commandSetPhonebook": "Sett telefonkatalog",
- "commandVoiceMessage": "Talemelding",
- "commandOutputControl": "Utgangkontroll",
- "commandVoiceMonitoring": "Stemmeovervaking",
- "commandSetAgps": "Sett AGPS",
- "commandSetIndicator": "Sett indikator",
- "commandConfiguration": "Oppsett",
- "commandGetVersion": "Syn versjon",
- "commandFirmwareUpdate": "Oppdater fastvare",
- "commandSetConnection": "Sett tilkopling",
- "commandSetOdometer": "Set kilometerteljar",
- "commandGetModemStatus": "Syn Modemstatus",
- "commandGetDeviceStatus": "Synd einingstatus",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekvens",
- "commandTimezone": "Tidszoneforskyving",
- "commandMessage": "Melding",
- "commandRadius": "Radius",
- "commandEnable": "Aktiver",
- "commandData": "Data",
- "commandIndex": "Register",
- "commandPhone": "Telefonnummer",
- "commandServer": "Tenar",
- "commandPort": "Port",
- "eventAll": "Alle hendingar",
- "eventDeviceOnline": "Status tilkopla",
- "eventDeviceUnknown": "Status ukjend",
- "eventDeviceOffline": "Status fråkopla",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Eining rører seg",
- "eventDeviceStopped": "Eining stoppa",
- "eventDeviceOverspeed": "Fartsgrense overstige",
- "eventDeviceFuelDrop": "Fall i drivstoff",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Kommandoresultat",
- "eventGeofenceEnter": "Innkommen Geo-gjerde",
- "eventGeofenceExit": "Forlate Geo-gjerde",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Tenning på",
- "eventIgnitionOff": "Tenning av",
- "eventMaintenance": "Vedlikehald nøydsynt",
- "eventTextMessage": "Tekstmelding motteken",
- "eventDriverChanged": "Sjåfør endra",
- "eventMedia": "Media",
- "eventsScrollToLast": "Syn siste",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Generell",
- "alarmSos": "SOS",
- "alarmVibration": "Vibrasjon",
- "alarmMovement": "Rørsle",
- "alarmLowspeed": "Låg hastigheit",
- "alarmOverspeed": "Høgt turtal",
- "alarmFallDown": "Fall",
- "alarmLowPower": "Lite straum",
- "alarmLowBattery": "Lågt batterinivå",
- "alarmFault": "Feil",
- "alarmPowerOff": "Straum fråkopla",
- "alarmPowerOn": "Straum tilkopla",
- "alarmDoor": "Dør",
- "alarmLock": "Lås",
- "alarmUnlock": "Lås opp",
- "alarmGeofence": "Geo-gjerde",
- "alarmGeofenceEnter": "Innanfor Geo-gjerde",
- "alarmGeofenceExit": "Utanfor Geo-gjerde",
- "alarmGpsAntennaCut": "GPS-antenne fjerna",
- "alarmAccident": "Ulykke",
- "alarmTow": "Tauing",
- "alarmIdle": "Tomgang",
- "alarmHighRpm": "Høgt turtal",
- "alarmHardAcceleration": "Hard akselerasjon",
- "alarmHardBraking": "Hard oppbremsing",
- "alarmHardCornering": "Hard vending",
- "alarmLaneChange": "Filskifte",
- "alarmFatigueDriving": "Trøyttleikskøyring",
- "alarmPowerCut": "Straum fråkopla",
- "alarmPowerRestored": " Straumtilførsel atterreist",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperatur",
- "alarmParking": "Parkering",
- "alarmBonnet": "Motorpanser",
- "alarmFootBrake": "Bremsepedal",
- "alarmFuelLeak": "Drivstofflekkasje",
- "alarmTampering": "Tukling",
- "alarmRemoving": "Fjerning",
- "notificationType": "Varseltype",
- "notificationAlways": "Alle einingar",
- "notificationNotificators": "Kanalar",
- "notificatorCommand": "Command",
- "notificatorWeb": "Vev",
- "notificatorMail": "E-post",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Rute",
- "reportEvents": "Hendingar",
- "reportTrips": "Turar",
- "reportStops": "Stopp",
- "reportSummary": "Oppsumering",
- "reportDaily": "Daily Summary",
- "reportChart": "Graf",
- "reportConfigure": "Set opp",
- "reportEventTypes": "Hendingstypar",
- "reportChartType": "Graf type",
- "reportShowMarkers": "Syn markørar",
- "reportExport": "Eksporter",
- "reportEmail": "E-post-rapport",
- "reportSchedule": "Schedule",
- "reportPeriod": "Periode",
- "reportCustom": "Tilpassa",
- "reportToday": "Idag",
- "reportYesterday": "I går",
- "reportThisWeek": "Denne veka",
- "reportPreviousWeek": "Forrige veke",
- "reportThisMonth": "Denne månaden",
- "reportPreviousMonth": "Forrige månad",
- "reportDeviceName": "Einingsnamn",
- "reportAverageSpeed": "Gjennomsnittshastighet",
- "reportMaximumSpeed": "Maksimumshastighet",
- "reportEngineHours": "Motortimar",
- "reportDuration": "Varigheit",
- "reportStartDate": "Start Date",
- "reportStartTime": "Starttidspunkt",
- "reportStartAddress": "Startadresse",
- "reportEndTime": "Sluttidspunkt",
- "reportEndAddress": "Sluttadresse",
- "reportSpentFuel": "Brukt drivstoff",
- "reportStartOdometer": "Kilometerteljar start",
- "reportEndOdometer": "Kilometerteljar stop",
- "statisticsTitle": "Statistikk",
- "statisticsCaptureTime": "Opptakstid",
- "statisticsActiveUsers": "Aktive brukarar",
- "statisticsActiveDevices": "Aktive einingar",
- "statisticsRequests": "Førespurnadar",
- "statisticsMessagesReceived": "Meldingar motteke",
- "statisticsMessagesStored": "Meldingar lagra",
- "statisticsGeocoder": "Geocoder-førespurnader",
- "statisticsGeolocation": "Geolocation-førespurnader",
- "categoryArrow": "Pil",
- "categoryDefault": "Standard",
- "categoryAnimal": "Dyr",
- "categoryBicycle": "Sykkel",
- "categoryBoat": "Båt",
- "categoryBus": "Buss",
- "categoryCar": "Bil",
- "categoryCamper": "Camper",
- "categoryCrane": "Kran",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motorsykkel",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Fly",
- "categoryShip": "Skip",
- "categoryTractor": "Traktor",
- "categoryTrain": "Tog",
- "categoryTram": "Trikk",
- "categoryTrolleybus": "Trolleybuss",
- "categoryTruck": "Lastebil",
- "categoryVan": "Varebil",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Periode"
-} \ No newline at end of file
diff --git a/web/l10n/pl.json b/web/l10n/pl.json
deleted file mode 100644
index 6e0a57d4..00000000
--- a/web/l10n/pl.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Wczytywanie...",
- "sharedHide": "Ukryj",
- "sharedSave": "Zapisz",
- "sharedUpload": "Wyślij",
- "sharedSet": "Ustaw",
- "sharedCancel": "Anuluj",
- "sharedCopy": "Copy",
- "sharedAdd": "Dodaj",
- "sharedEdit": "Edytuj",
- "sharedRemove": "Usuń",
- "sharedRemoveConfirm": "Usunąć obiekt?",
- "sharedNoData": "Brak danych",
- "sharedSubject": "Subject",
- "sharedYes": "Tak",
- "sharedNo": "Nie",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "Mm",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "w",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Godzina",
- "sharedMinute": "Minuta",
- "sharedSecond": "Sekunda",
- "sharedDays": "dni",
- "sharedHours": "godziny",
- "sharedMinutes": "minuty",
- "sharedDecimalDegrees": "Stopnie Dziesiętne",
- "sharedDegreesDecimalMinutes": "Stopnie Dziesiętne Minuty",
- "sharedDegreesMinutesSeconds": "Stopnie Minuty Sekundy",
- "sharedName": "Nazwa",
- "sharedDescription": "Opis",
- "sharedSearch": "Szukaj",
- "sharedIconScale": "Skala ikon",
- "sharedGeofence": "Obszar monitorowany",
- "sharedGeofences": "Obszary monitorowane",
- "sharedCreateGeofence": "Utwórz obszar monitorowany",
- "sharedNotifications": "Powiadomienia",
- "sharedNotification": "Powiadomienie",
- "sharedAttributes": "Atrybuty",
- "sharedAttribute": "Atrybut",
- "sharedDrivers": "Kierowcy",
- "sharedDriver": "Kierowca",
- "sharedArea": "Strefa",
- "sharedSound": "Dźwięk powiadomienia",
- "sharedType": "Typ",
- "sharedDistance": "Odległość",
- "sharedHourAbbreviation": "g",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Litr",
- "sharedImpGallon": "Galon Ang.",
- "sharedUsGallon": "Galon U.S.",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Pobierz stan mapy",
- "sharedComputedAttribute": "Obliczony atrybut",
- "sharedComputedAttributes": "Obliczone atrybuty",
- "sharedCheckComputedAttribute": "Sprawdź obliczony atrybut",
- "sharedExpression": "Wyrażenie",
- "sharedDevice": "Urządzenie",
- "sharedTest": "Test",
- "sharedTestNotification": "Wyślij powiadomienie testowe",
- "sharedTestNotificators": "Kanały testowe",
- "sharedTestExpression": "Wyrażenie testowe",
- "sharedCalendar": "Kalendarz",
- "sharedCalendars": "Kalendarze",
- "sharedFile": "Plik",
- "sharedSearchDevices": "Szukaj urządzeń",
- "sharedSortBy": "Sortuj według",
- "sharedFilterMap": "Filtruj na mapie",
- "sharedSelectFile": "Wybierz plik",
- "sharedPhone": "Telefon",
- "sharedRequired": "Wymagane",
- "sharedPreferences": "Preferencje",
- "sharedPermissions": "Uprawnienia",
- "sharedConnections": "Połączenia",
- "sharedExtra": "Dodatkowe",
- "sharedPrimary": "Podstawowy",
- "sharedSecondary": "Drugorzędny",
- "sharedTypeString": "Tekst",
- "sharedTypeNumber": "Liczba",
- "sharedTypeBoolean": "Wartość binarna",
- "sharedTimezone": "Strefa czasowa",
- "sharedInfoTitle": "Informacja",
- "sharedSavedCommand": "Zapisane polecenie",
- "sharedSavedCommands": "Zapisane polecenia",
- "sharedNew": "Nowy...",
- "sharedShowAddress": "Pokaż adres",
- "sharedShowDetails": "Więcej szczegółów",
- "sharedDisabled": "Wyłączony",
- "sharedMaintenance": "Konserwacja",
- "sharedDeviceAccumulators": "Akumulatory",
- "sharedAlarms": "Alarmy",
- "sharedLocation": "Lokalizacja",
- "sharedImport": "Importuj",
- "sharedColumns": "Kolumny",
- "sharedDropzoneText": "Przeciągnij i upuść plik tutaj lub kliknij",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Prosty",
- "calendarRecurrence": "Powtarzalny",
- "calendarOnce": "Jednorazowy",
- "calendarDaily": "Codzienny",
- "calendarWeekly": "Tygodniowy",
- "calendarMonthly": "Miesięczny",
- "calendarDays": "Dzienny",
- "calendarSunday": "Niedziela",
- "calendarMonday": "Poniedziałek",
- "calendarTuesday": "Wtorek",
- "calendarWednesday": "Środa",
- "calendarThursday": "Czwartek",
- "calendarFriday": "Piątek",
- "calendarSaturday": "Sobota",
- "attributeShowGeofences": "Pokaż obszar monitorowany",
- "attributeSpeedLimit": "Ograniczenie prędkości",
- "attributeFuelDropThreshold": "Próg spadku paliwa",
- "attributeFuelIncreaseThreshold": "Próg wzrostu paliwa",
- "attributePolylineDistance": "Dystans łamanej",
- "attributeReportIgnoreOdometer": "Raport: Ignoruj licznik kilometrów",
- "attributeWebReportColor": "Web: Kolor raportu",
- "attributeDevicePassword": "Hasło urządzenia",
- "attributeDeviceImage": "Zdjęcie urządzenia",
- "attributeDeviceInactivityStart": "Początek nieaktywności urządzenia",
- "attributeDeviceInactivityPeriod": "Okres nieaktywności urządzenia",
- "attributeProcessingCopyAttributes": "Przetwarzanie: Kopiuj atrybuty",
- "attributeColor": "Kolor",
- "attributeWebLiveRouteLength": "Web: Długość ścieżki na żywo",
- "attributeWebSelectZoom": "Sieć: Powiększ po zaznaczeniu",
- "attributeWebMaxZoom": "Strona: Maksymalne przybliżenie",
- "attributeTelegramChatId": "Identyfikator czatu Telegram",
- "attributePushoverUserKey": "Klucz użytkownika Pushover",
- "attributePushoverDeviceNames": "Nazwy urządzeń Pushover",
- "attributeMailSmtpHost": "Poczta: Nazwa hosta SMTP",
- "attributeMailSmtpPort": "Poczta: Port SMTP",
- "attributeMailSmtpStarttlsEnable": "Poczta: SMTP STARTTLS - Włącz",
- "attributeMailSmtpStarttlsRequired": "Poczta: SMTP STARTTLS - Wymagane ",
- "attributeMailSmtpSslEnable": "Poczta: SMTP SSL - Włącz",
- "attributeMailSmtpSslTrust": "Poczta: SMTP SSL - Ufaj ",
- "attributeMailSmtpSslProtocols": "Poczta: SMTP SSL - Protokoły ",
- "attributeMailSmtpFrom": "Poczta: SMTP - Od",
- "attributeMailSmtpAuth": "Poczta: SMTP - Włącz autoryzację",
- "attributeMailSmtpUsername": "Poczta: SMTP - Nazwa użytkownika",
- "attributeMailSmtpPassword": "Poczta: SMTP - Hasło",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Wyłącz atrybuty",
- "attributeUiDisableGroups": "UI: Wyłącz grupy",
- "attributeUiDisableEvents": "UI: Wyłącz zdarzenia",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Wyłącz kierowców",
- "attributeUiDisableComputedAttributes": "UI: Wyłącz obliczone atrybuty",
- "attributeUiDisableCalendars": "UI: Wyłącz kalendarze",
- "attributeUiDisableMaintenance": "UI: Wyłącz konserwację",
- "attributeUiHidePositionAttributes": "UI: Ukryj atrybuty pozycji",
- "attributeUiDisableLoginLanguage": "UI: Wyłącz język logowania",
- "attributeNotificationTokens": "Tokeny powiadomień",
- "attributePopupInfo": "Wyskakujące informacje",
- "errorTitle": "Błąd",
- "errorGeneral": "Nieprawidłowe parametry lub naruszenie ograniczeń",
- "errorConnection": "Błąd przy połączeniu",
- "errorSocket": "Błąd połączenia gniazda sieciowego",
- "errorZero": "Nie może być zerem",
- "userEmail": "E-mail",
- "userPassword": "Hasło",
- "userAdmin": "Administrator",
- "userRemember": "Zapamiętaj",
- "userExpirationTime": "Wygaśnięcie",
- "userDeviceLimit": "Limit urządzeń",
- "userUserLimit": "Limit użytkownika",
- "userDeviceReadonly": "Urządzenie do odczytu",
- "userLimitCommands": "Ogranicz polecenia",
- "userDisableReports": "Wyłącz raporty",
- "userFixedEmail": "Bez zmiany adresu e-mail",
- "userToken": "Token",
- "userDeleteAccount": "Usuń konto",
- "userTemporary": "Temporary",
- "loginTitle": "Login",
- "loginLanguage": "Język",
- "loginReset": "Zresetuj hasło",
- "loginRegister": "Rejestracja",
- "loginLogin": "Zaloguj",
- "loginOpenId": "Zaloguj się za pomocą OpenID",
- "loginFailed": "Nieprawidłowy adres e-mail lub hasło",
- "loginCreated": "Nowy użytkownik został zarejestrowany",
- "loginResetSuccess": "Sprawdź swój e-mail",
- "loginUpdateSuccess": "Nowe hasło zostało ustawione",
- "loginLogout": "Wyloguj",
- "loginLogo": "Logo",
- "loginTotpCode": "Kod hasła jednorazowego",
- "loginTotpKey": "Klucz hasła jednorazowego",
- "devicesAndState": "Urządzenia i stan",
- "deviceSelected": "Wybrane urządzenie",
- "deviceTitle": "Urządzenia",
- "devicePrimaryInfo": "Tytuł urządzenia",
- "deviceSecondaryInfo": "Szczegóły urządzenia",
- "deviceIdentifier": "Identyfikator",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategoria",
- "deviceLastUpdate": "Ostatnia aktualizacja",
- "deviceCommand": "Komenda",
- "deviceFollow": "Podążaj",
- "deviceTotalDistance": "Całkowity dystans",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Nieznany",
- "deviceRegisterFirst": "Zarejestruj pierwsze urządzenie",
- "deviceIdentifierHelp": "IMEI, numer seryjny lub inny identyfikator. Musi być zgodny z identyfikatorem raportującego urządzenia",
- "deviceShare": "Share Device",
- "groupDialog": "Grupa",
- "groupParent": "Grupa",
- "groupNoGroup": "Brak grupy",
- "settingsTitle": "Ustawienia",
- "settingsUser": "Konto",
- "settingsGroups": "Grupy",
- "settingsServer": "Serwer",
- "settingsUsers": "Użytkownicy",
- "settingsDistanceUnit": "Jednostka odległości",
- "settingsAltitudeUnit": "Jednostka wysokości",
- "settingsSpeedUnit": "Jednostka prędkości",
- "settingsVolumeUnit": "Jednostka objętości",
- "settingsTwelveHourFormat": "Format 12-godz.",
- "settingsCoordinateFormat": "Format współrzędnych",
- "settingsServerVersion": "Wersja serwera",
- "settingsAppVersion": "Wersja aplikacji",
- "settingsConnection": "Połączenie",
- "settingsDarkMode": "Tryb ciemny",
- "settingsTotpEnable": "Włącz hasło jednorazowe",
- "settingsTotpForce": "Wymuś hasło jednorazowe",
- "settingsServiceWorkerUpdateInterval": "Interwał aktualizacji ServiceWorkera",
- "settingsUpdateAvailable": "Dostępna jest aktualizacja.",
- "settingsSupport": "Support",
- "reportTitle": "Raporty",
- "reportScheduled": "Zaplanowane raporty",
- "reportDevice": "Urządzenie",
- "reportGroup": "Grupa",
- "reportFrom": "Z",
- "reportTo": "Do",
- "reportShow": "Pokaż",
- "reportClear": "Wyczyść",
- "linkGoogleMaps": "Mapy Google",
- "linkAppleMaps": "Mapy Apple",
- "linkStreetView": "Street View",
- "positionFixTime": "Czas ustalenia pozycji",
- "positionDeviceTime": "Czas urządzenia",
- "positionServerTime": "Czas serwera",
- "positionValid": "Aktywny",
- "positionAccuracy": "Dokładność",
- "positionLatitude": "Szerokość",
- "positionLongitude": "Długość",
- "positionAltitude": "Wysokość",
- "positionSpeed": "Prędkość",
- "positionCourse": "Kurs",
- "positionAddress": "Adres",
- "positionProtocol": "Protokół",
- "positionDistance": "Odległość",
- "positionRpm": "RPM",
- "positionFuel": "Paliwo",
- "positionPower": "Moc",
- "positionBattery": "Bateria",
- "positionRaw": "Surowy",
- "positionIndex": "Indeks",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelity",
- "positionSatVisible": "Widoczne satelity",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Zdarzenie",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Drogomierz",
- "positionServiceOdometer": "Drogomierz usługi",
- "positionTripOdometer": "Drogomierz podróży",
- "positionHours": "Godziny",
- "positionSteps": "Kroki",
- "positionInput": "Wejście",
- "positionHeartRate": "Tętno",
- "positionOutput": "Wyjście",
- "positionBatteryLevel": "Poziom baterii",
- "positionFuelConsumption": "Zużycie paliwa",
- "positionRfid": "RFID",
- "positionVersionFw": "Wersja firmware",
- "positionVersionHw": "Wersja sprzętu",
- "positionIgnition": "Zapłon",
- "positionFlags": "Flagi",
- "positionCharge": "Ładowanie",
- "positionIp": "IP",
- "positionArchive": "Archiwum",
- "positionVin": "VIN",
- "positionApproximate": "Przybliżony",
- "positionThrottle": "Przepustnica",
- "positionMotion": "Ruch",
- "positionArmed": "Uzbrojony",
- "positionAcceleration": "Przyśpieszenie",
- "positionTemp": "Temperatura",
- "positionDeviceTemp": "Temperatura urządzenia",
- "positionCoolantTemp": "Temperatura płynu chłodzącego",
- "positionOperator": "Operator",
- "positionCommand": "Polecenie",
- "positionBlocked": "Zablokowany",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Prędkość OBD",
- "positionObdOdometer": "Drogomierz OBD",
- "positionDrivingTime": "Czas podróży",
- "positionDriverUniqueId": "Unikalny ID kierowcy",
- "positionCard": "Karta",
- "positionImage": "Obraz",
- "positionVideo": "Wideo",
- "positionAudio": "Dźwięk",
- "serverTitle": "Ustawienia serwera",
- "serverZoom": "Powiększenie",
- "serverRegistration": "Rejestracja",
- "serverReadonly": "Tylko do odczytu",
- "serverForceSettings": "Wymuś ustawienia",
- "serverAnnouncement": "Komunikat",
- "serverName": "Nazwa serwera",
- "serverDescription": "Opis serwera",
- "serverColorPrimary": "Kolor podstawowy",
- "serverColorSecondary": "Kolor drugorzędny",
- "serverLogo": "Obraz logo",
- "serverLogoInverted": "Odwrócony obraz logo",
- "serverChangeDisable": "Wyłącz zmianę serwera",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Mapa",
- "mapActive": "Aktywne mapy",
- "mapOverlay": "Nakładka mapy",
- "mapOverlayCustom": "Niestandardowa nakładka",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "Klucz API OpenWeather",
- "mapOpenWeatherClouds": "Chmury OpenWeather",
- "mapOpenWeatherPrecipitation": "Opady OpenWeather",
- "mapOpenWeatherPressure": "Ciśnienie OpenWeather",
- "mapOpenWeatherWind": "Wiatr OpenWeather",
- "mapOpenWeatherTemperature": "Temperatura OpenWeather",
- "mapLayer": "Rodzaj mapy",
- "mapCustom": "Własny (XYZ)",
- "mapCustomArcgis": "Własny (ArcGIS)",
- "mapCustomLabel": "Własna mapa",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Spis uzbrojenia",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Token dostępu do Mapboxa",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "Klucz API MapTiler",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "Token dostępu LocationIQ",
- "mapTomTomBasic": "Podstawowy TomTom",
- "mapTomTomFlow": "Ruch drogowy TomTom",
- "mapTomTomIncidents": "Wypadki drogowe TomTom",
- "mapTomTomKey": "Klucz API TomTom",
- "mapHereBasic": "Podstawowy Here",
- "mapHereHybrid": "Hybrydowy Here",
- "mapHereSatellite": "Satelitarny Here",
- "mapHereFlow": "Ruch drogowy Here",
- "mapHereKey": "Klucz API Here",
- "mapShapePolygon": "Wielokąt",
- "mapShapeCircle": "Okrąg",
- "mapShapePolyline": "Krzywa",
- "mapLiveRoutes": "Ścieżki na żywo",
- "mapDirection": "Pokaż kierunek",
- "mapCurrentLocation": "Aktualna lokalizacja",
- "mapPoiLayer": "Warstwa POI",
- "mapClustering": "Grupowanie znaczników",
- "mapOnSelect": "Pokaż mapę w zaznaczeniu",
- "mapDefault": "Mapa domyślna",
- "stateTitle": "Stan i lokalizacja",
- "stateName": "Właściwość",
- "stateValue": "Wartość",
- "commandTitle": "Komenda",
- "commandSend": "Wyślij",
- "commandSent": "Polecenie wysłane",
- "commandQueued": "Polecenie zakolejkowane",
- "commandUnit": "Jednostka",
- "commandCustom": "Własna komenda",
- "commandDeviceIdentification": "Identyfikacja urządzenia",
- "commandPositionSingle": "Pojedyncze raportowanie",
- "commandPositionPeriodic": "Okresowy raport",
- "commandPositionStop": "Zatrzymaj raportowanie",
- "commandEngineStop": "Silnik - Stop",
- "commandEngineResume": "Silnik - Wznów",
- "commandAlarmArm": "Włączanie alarmu",
- "commandAlarmDisarm": "Wyłączanie alarmu",
- "commandAlarmDismiss": "Odwołaj alarm",
- "commandSetTimezone": "Ustaw strefę czasową",
- "commandRequestPhoto": "Żądanie zdjęcia\n",
- "commandPowerOff": "Wyłącz urządzenie",
- "commandRebootDevice": "Zresetuj urządzenie",
- "commandFactoryReset": "Przywrócenie ustawień fabrycznych",
- "commandSendSms": "Wyślij SMS",
- "commandSendUssd": "Wyślij USSD",
- "commandSosNumber": "Ustaw numer SOS",
- "commandSilenceTime": "Ustaw czas milczenia",
- "commandSetPhonebook": "Ustaw książkę adresową",
- "commandVoiceMessage": "Wiadomość głosowa",
- "commandOutputControl": "Kontrola wyjścia",
- "commandVoiceMonitoring": "Monitorowanie głosu",
- "commandSetAgps": "Ustaw AGPS",
- "commandSetIndicator": "Ustaw znacznik",
- "commandConfiguration": "Konfiguracja",
- "commandGetVersion": "Pobierz wersję",
- "commandFirmwareUpdate": "Aktualizuj firmware",
- "commandSetConnection": "Ustaw połączenie",
- "commandSetOdometer": "Ustaw drogomierz",
- "commandGetModemStatus": "Pobierz status modemu",
- "commandGetDeviceStatus": "Pobierz status urządzenia",
- "commandSetSpeedLimit": "Ustaw ograniczenie prędkości",
- "commandModePowerSaving": "Tryb oszczędzania energii",
- "commandModeDeepSleep": "Tryb głębokiego uśpienia",
- "commandAlarmGeofence": "Ustaw alarm obszaru monitorowanego",
- "commandAlarmBattery": "Ustaw alarm baterii",
- "commandAlarmSos": "Ustaw alarm SOS",
- "commandAlarmRemove": "Ustaw usunięcie alarmu",
- "commandAlarmClock": "Ustaw alarm zegara",
- "commandAlarmSpeed": "Ustaw alarm prędkości",
- "commandAlarmFall": "Ustaw alarm upadku",
- "commandAlarmVibration": "Ustaw alarm wibracji",
- "commandFrequency": "Częstotliwość",
- "commandTimezone": "Przesunięcie strefy czasowej",
- "commandMessage": "Wiadomość",
- "commandRadius": "Promień",
- "commandEnable": "Włącz",
- "commandData": "Dane",
- "commandIndex": "Index",
- "commandPhone": "Numer telefonu",
- "commandServer": "Serwer",
- "commandPort": "Port",
- "eventAll": "Wszystkie zdarzenia",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status nieznany",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Urządzenie nieaktywne",
- "eventQueuedCommandSent": "Wysłano polecenie z kolejki",
- "eventDeviceMoving": "Urządzenie się porusza",
- "eventDeviceStopped": "Urządzenie zatrzymane",
- "eventDeviceOverspeed": "Przekroczono ograniczenie prędkości",
- "eventDeviceFuelDrop": "Utrata paliwa",
- "eventDeviceFuelIncrease": "Wzrost paliwa",
- "eventCommandResult": "Rezultat polecenia",
- "eventGeofenceEnter": "Wkroczono w obszar monitorowany",
- "eventGeofenceExit": "Opuszczono obszar monitorowany",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Zapłon włączony",
- "eventIgnitionOff": "Zapłon wyłączony",
- "eventMaintenance": "Wymagana konserwacja",
- "eventTextMessage": "Odebrano wiadomość tekstową",
- "eventDriverChanged": "Zmieniana kierowcy",
- "eventMedia": "Media",
- "eventsScrollToLast": "Przewiń do ostatniego",
- "eventsSoundEvents": "Dźwięk wydarzeń",
- "eventsSoundAlarms": "Dźwięk alarmów",
- "alarmGeneral": "Ogólny",
- "alarmSos": "SOS",
- "alarmVibration": "WIbracja",
- "alarmMovement": "Ruch",
- "alarmLowspeed": "Niska prędkość",
- "alarmOverspeed": "Przekroczenie prędkości",
- "alarmFallDown": "Upadek",
- "alarmLowPower": "Mało energii",
- "alarmLowBattery": "Niski stan baterii",
- "alarmFault": "Błąd",
- "alarmPowerOff": "Wyłączenie zasilania",
- "alarmPowerOn": "Włączenie zasilania",
- "alarmDoor": "Drzwi",
- "alarmLock": "Zamknięty",
- "alarmUnlock": "Otwarty",
- "alarmGeofence": "Obszar monitorowany",
- "alarmGeofenceEnter": "Obszar monitorowany wejście",
- "alarmGeofenceExit": "Obszar monitorowany wyjście",
- "alarmGpsAntennaCut": "Odłączenie anteny GPS",
- "alarmAccident": "Wypadek",
- "alarmTow": "Holowanie",
- "alarmIdle": "Bezczynność",
- "alarmHighRpm": "Wysokie obroty silnika",
- "alarmHardAcceleration": "Mocne przyśpiesznie",
- "alarmHardBraking": "Mocne hamowanie",
- "alarmHardCornering": "Ostre zakręty",
- "alarmLaneChange": "Zmiana pasa ruchu",
- "alarmFatigueDriving": "Zmęczenie",
- "alarmPowerCut": "Odcięcie zasilania",
- "alarmPowerRestored": "Zasilanie przywrócone",
- "alarmJamming": "Zakłócanie",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Parkowanie",
- "alarmBonnet": "Maska",
- "alarmFootBrake": "Hamulec nożny",
- "alarmFuelLeak": "Wyciek paliwa",
- "alarmTampering": "Manipulacja",
- "alarmRemoving": "Usuwanie",
- "notificationType": "Rodzaj powiadomienia",
- "notificationAlways": "Wszystkie urządzenia",
- "notificationNotificators": "Kanały",
- "notificatorCommand": "Komenda",
- "notificatorWeb": "Sieć",
- "notificatorMail": "Poczta",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Odtwórz",
- "reportCombined": "Połączone",
- "reportRoute": "Trasa",
- "reportEvents": "Zdarzenia",
- "reportTrips": "Podróże",
- "reportStops": "Zatrzymania",
- "reportSummary": "Podsumowanie",
- "reportDaily": "Podsumowanie dzienne",
- "reportChart": "Wykres",
- "reportConfigure": "Konfiguracja",
- "reportEventTypes": "Rodzaje zdarzeń",
- "reportChartType": "Typ wykresu",
- "reportShowMarkers": "Pokaż znaczniki",
- "reportExport": "Eksportuj",
- "reportEmail": "Raport e-mailowy",
- "reportSchedule": "Zaplanuj",
- "reportPeriod": "Okres",
- "reportCustom": "Własny",
- "reportToday": "Dzisiaj",
- "reportYesterday": "Wczoraj",
- "reportThisWeek": "W tym tygodniu",
- "reportPreviousWeek": "W poprzednim tygodniu",
- "reportThisMonth": "W tym miesiącu",
- "reportPreviousMonth": "W poprzednim miesiącu",
- "reportDeviceName": "Nazwa urządzenia",
- "reportAverageSpeed": "Średnia prędkość",
- "reportMaximumSpeed": "Maksymalna prędkość",
- "reportEngineHours": "Czas pracy silnika",
- "reportDuration": "Czas trwania",
- "reportStartDate": "Data początkowa",
- "reportStartTime": "Czas uruchomienia",
- "reportStartAddress": "Adres początkowy",
- "reportEndTime": "Czas końcowy",
- "reportEndAddress": "Adres końcowy",
- "reportSpentFuel": "Zużyte paliwo",
- "reportStartOdometer": "Start drogomierza",
- "reportEndOdometer": "Stop drogomierza",
- "statisticsTitle": "Statystyki",
- "statisticsCaptureTime": "Czas zapisu",
- "statisticsActiveUsers": "Aktywni użytkownicy",
- "statisticsActiveDevices": "Aktywne urządzenia",
- "statisticsRequests": "Żądania",
- "statisticsMessagesReceived": "Odebrane wiadomości",
- "statisticsMessagesStored": "Zapisane wiadomości",
- "statisticsGeocoder": "Żądania Geokodera",
- "statisticsGeolocation": "Żądania geolokacji",
- "categoryArrow": "Strzałka",
- "categoryDefault": "Domyślny",
- "categoryAnimal": "Zwierzę",
- "categoryBicycle": "Rower",
- "categoryBoat": "Łódź",
- "categoryBus": "Autobus",
- "categoryCar": "Samochód",
- "categoryCamper": "Camper",
- "categoryCrane": "Dźwig",
- "categoryHelicopter": "Śmigłowiec",
- "categoryMotorcycle": "Motocykl",
- "categoryOffroad": "Pojazd terenowy",
- "categoryPerson": "Osoba",
- "categoryPickup": "Pickup",
- "categoryPlane": "Samolot",
- "categoryShip": "Statek",
- "categoryTractor": "Traktor",
- "categoryTrain": "Pociąg",
- "categoryTram": "Tramwaj",
- "categoryTrolleybus": "Trolejbus",
- "categoryTruck": "Ciężarówka",
- "categoryVan": "Van",
- "categoryScooter": "Skuter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Okres"
-} \ No newline at end of file
diff --git a/web/l10n/pt.json b/web/l10n/pt.json
deleted file mode 100644
index 66181d39..00000000
--- a/web/l10n/pt.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "A Carregar...",
- "sharedHide": "Ocultar",
- "sharedSave": "Guardar",
- "sharedUpload": "Upload",
- "sharedSet": "Conjunto",
- "sharedCancel": "Cancelar",
- "sharedCopy": "Copy",
- "sharedAdd": "Adicionar",
- "sharedEdit": "Editar",
- "sharedRemove": "Remover",
- "sharedRemoveConfirm": "Remover item?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Sim",
- "sharedNo": "Não",
- "sharedKm": "Km",
- "sharedMi": "Mi",
- "sharedNmi": "Nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "Km/h",
- "sharedKmh": "Km/h",
- "sharedMph": "Mph",
- "sharedHour": "Hora",
- "sharedMinute": "Minuto",
- "sharedSecond": "Segundo",
- "sharedDays": "Dias",
- "sharedHours": "Horas",
- "sharedMinutes": "Minutos",
- "sharedDecimalDegrees": "Graus Decimais",
- "sharedDegreesDecimalMinutes": "Graus Decimais Minutos",
- "sharedDegreesMinutesSeconds": "Graus Decimais Segundos",
- "sharedName": "Nome",
- "sharedDescription": "Descrição",
- "sharedSearch": "Pesquisar",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Cerca Geográfica",
- "sharedGeofences": "Cercas Geográficas",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Notificações",
- "sharedNotification": "Notificação",
- "sharedAttributes": "Atributos",
- "sharedAttribute": "Atributo",
- "sharedDrivers": "Condutores",
- "sharedDriver": "Condutor",
- "sharedArea": "Área",
- "sharedSound": "Notificação Sonora",
- "sharedType": "Tipo",
- "sharedDistance": "Distância",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "Volts",
- "sharedLiterAbbreviation": "Litros",
- "sharedGallonAbbreviation": "Gal",
- "sharedLiter": "Litro",
- "sharedImpGallon": "Galão Imp.",
- "sharedUsGallon": "Galão U.S.",
- "sharedLiterPerHourAbbreviation": "Litros/Hora",
- "sharedGetMapState": "Obter Estado do Mapa",
- "sharedComputedAttribute": "Atributo",
- "sharedComputedAttributes": "Atributos",
- "sharedCheckComputedAttribute": "Verificar Atributos",
- "sharedExpression": "Expressão",
- "sharedDevice": "Dispositivo",
- "sharedTest": "Test",
- "sharedTestNotification": "Enviar Notificação Teste",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Calendário",
- "sharedCalendars": "Calendários",
- "sharedFile": "Ficheiro",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Seleccionar Ficheiro",
- "sharedPhone": "Telefone",
- "sharedRequired": "Exigido",
- "sharedPreferences": "Preferências",
- "sharedPermissions": "Permissões",
- "sharedConnections": "Conexões",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Corda",
- "sharedTypeNumber": "Número",
- "sharedTypeBoolean": "Boleano",
- "sharedTimezone": "Fuso-Horário",
- "sharedInfoTitle": "Informação",
- "sharedSavedCommand": "Comando Gravado",
- "sharedSavedCommands": "Comandos Gravados",
- "sharedNew": "Novo...",
- "sharedShowAddress": "Mostrar Morada",
- "sharedShowDetails": "Mais Detalhes",
- "sharedDisabled": "Desativado",
- "sharedMaintenance": "Manutenção",
- "sharedDeviceAccumulators": "Acumuladores",
- "sharedAlarms": "Alarmes",
- "sharedLocation": "Localização",
- "sharedImport": "Importar",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Limite de Velocidade",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Distância Polilinha",
- "attributeReportIgnoreOdometer": "Relatório: Ignorar Conta-Quilómetros",
- "attributeWebReportColor": "Web: Cor do Relatório",
- "attributeDevicePassword": "Password do Dispositivo",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Inicio da Inatividade do Dispositivo",
- "attributeDeviceInactivityPeriod": "Período de Inatividade do Dispositivo",
- "attributeProcessingCopyAttributes": "Processando: Cópia dos Atributos",
- "attributeColor": "Cor",
- "attributeWebLiveRouteLength": "Web: Comprimento da Rota ao Vivo",
- "attributeWebSelectZoom": "Web: Zoom na Selecção",
- "attributeWebMaxZoom": "Web: Zoom Máximo",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: Alojamento SMTP",
- "attributeMailSmtpPort": "Mail: Porta SMTP",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Activo",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Necessário",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Activo",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Verificado",
- "attributeMailSmtpSslProtocols": "Mail: SMTP Protocolos SSL",
- "attributeMailSmtpFrom": "Mail: SMTP de",
- "attributeMailSmtpAuth": "Mail: SMTP Autenticação Activa",
- "attributeMailSmtpUsername": "Mail: Utilizador SMTP",
- "attributeMailSmtpPassword": "Mail: Password SMTP",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Desativar Eventos",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Desativar Condutores",
- "attributeUiDisableComputedAttributes": "UI: Desativar Atributos",
- "attributeUiDisableCalendars": "UI: Desativar Calendários",
- "attributeUiDisableMaintenance": "Desativar Manutenção",
- "attributeUiHidePositionAttributes": "UI: Ocultar Atributos de Localização",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Tokens de Notificação",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Erro",
- "errorGeneral": "Parâmetros Inválidos",
- "errorConnection": "Erro de conexão",
- "errorSocket": "Erro de Conexão",
- "errorZero": "Não pode ser zero",
- "userEmail": "Utilizador",
- "userPassword": "Senha",
- "userAdmin": "Administrador",
- "userRemember": "Relembrar",
- "userExpirationTime": "Expira em:",
- "userDeviceLimit": "Limite de Dispositivos",
- "userUserLimit": "Limite de Utilizadores",
- "userDeviceReadonly": "Leitura de Dispositivo",
- "userLimitCommands": "Limite de Comandos",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Símbolo",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Entrar",
- "loginLanguage": "Idioma",
- "loginReset": "Reset Password",
- "loginRegister": "Registar",
- "loginLogin": "Entrar",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Dados incorrectos ou inexistentes",
- "loginCreated": "Novo utilizador foi registado",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Sair",
- "loginLogo": "Logótipo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Dispositivos e Estados",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Dispositivos",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identificador",
- "deviceModel": "Modelo",
- "deviceContact": "Contacto",
- "deviceCategory": "Categoria",
- "deviceLastUpdate": "Ultima Actualização",
- "deviceCommand": "Comando",
- "deviceFollow": "Seguir",
- "deviceTotalDistance": "Distancia Total",
- "deviceStatus": "Estado",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Desconhecido",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Grupo",
- "groupParent": "Grupo",
- "groupNoGroup": "Sem Grupo",
- "settingsTitle": "Configurações",
- "settingsUser": "Conta",
- "settingsGroups": "Grupos",
- "settingsServer": "Servidor",
- "settingsUsers": "Utilizadores",
- "settingsDistanceUnit": "Unidade de Distância",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Unidade de Velocidade",
- "settingsVolumeUnit": "Unidade de Volume",
- "settingsTwelveHourFormat": "Formato 12 Horas",
- "settingsCoordinateFormat": "Formato das Coordenadas",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Relatórios",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Dispositivo",
- "reportGroup": "Grupo",
- "reportFrom": "De",
- "reportTo": "Para",
- "reportShow": "Mostrar",
- "reportClear": "Limpar",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Válido",
- "positionAccuracy": "Precisão",
- "positionLatitude": "Latitude",
- "positionLongitude": "Longitude",
- "positionAltitude": "Altitude",
- "positionSpeed": "Velocidade",
- "positionCourse": "Direcção",
- "positionAddress": "Morada",
- "positionProtocol": "Protocolo",
- "positionDistance": "Distância",
- "positionRpm": "Rpm",
- "positionFuel": "Combustível",
- "positionPower": "Potência",
- "positionBattery": "Bateria",
- "positionRaw": "Aberto",
- "positionIndex": "Início",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelites",
- "positionSatVisible": "Satelites Visiveis",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Evento",
- "positionAlarm": "Alarme",
- "positionStatus": "Estado",
- "positionOdometer": "Conta-Quilómetros",
- "positionServiceOdometer": "Serviço Conta-Quilómetros",
- "positionTripOdometer": "Conta-Quilómetros de Viagem",
- "positionHours": "Horas",
- "positionSteps": "Posições",
- "positionInput": "Dentro",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Fora",
- "positionBatteryLevel": "Nível da Bateria",
- "positionFuelConsumption": "Consumo de Combustível",
- "positionRfid": "RFID",
- "positionVersionFw": "Versão de Firmware",
- "positionVersionHw": "Versão de Hardware",
- "positionIgnition": "Ignição",
- "positionFlags": "Bandeiras",
- "positionCharge": "Carregar",
- "positionIp": "IP",
- "positionArchive": "Arquivo",
- "positionVin": "VIN",
- "positionApproximate": "Aproximação",
- "positionThrottle": "Acelerador",
- "positionMotion": "Movimento",
- "positionArmed": "Armado",
- "positionAcceleration": "Aceleração",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Temperatura do Dispositivo",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operador",
- "positionCommand": "Comando",
- "positionBlocked": "Bloqueado",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Velocidade OBD",
- "positionObdOdometer": "Conta-Quilómetros OBD",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Identificação do Condutor",
- "positionCard": "Card",
- "positionImage": "Imagem",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Configurações do Servidor",
- "serverZoom": "Zoom",
- "serverRegistration": "Registo",
- "serverReadonly": "Apenas Leitura",
- "serverForceSettings": "Forçar Configurações",
- "serverAnnouncement": "Anúncio",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Mapa",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Aspecto do Mapa",
- "mapCustom": "Padrão (XYZ)",
- "mapCustomArcgis": "Padrão (ArcGIS)",
- "mapCustomLabel": "Mapa Personalizado",
- "mapCarto": "Mapa Carto",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Mapa Bing Key",
- "mapBingRoad": "Mapa Bing Road",
- "mapBingAerial": "Mapa Bing Aéreo",
- "mapBingHybrid": "Mapa Bing Híbrido",
- "mapBaidu": "Mapa Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Mapa Yandex",
- "mapYandexSat": "Mapa Yandex Satélite",
- "mapWikimedia": "Mapa Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Ruas",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox ao ar livre",
- "mapMapboxSatellite": "Mapbox Satélite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polígono",
- "mapShapeCircle": "Circulo",
- "mapShapePolyline": "Linha Polígono",
- "mapLiveRoutes": "Rotas ao Vivo",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "Camada POI",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Estado",
- "stateName": "Parâmetro",
- "stateValue": "Valor",
- "commandTitle": "Comando",
- "commandSend": "Enviar",
- "commandSent": "Comando Enviado",
- "commandQueued": "Comando foi para a fila",
- "commandUnit": "Unidade",
- "commandCustom": "Comando Personalizado",
- "commandDeviceIdentification": "Identificação do Dispositivo",
- "commandPositionSingle": "Relatórios Únicos",
- "commandPositionPeriodic": "Relatório Periódico",
- "commandPositionStop": "Parar Posição",
- "commandEngineStop": "Parar Motor",
- "commandEngineResume": "Desbloqueio do Motor",
- "commandAlarmArm": "Armar Alarme",
- "commandAlarmDisarm": "Desarmar Alarme",
- "commandAlarmDismiss": "Alarme Dispensado",
- "commandSetTimezone": "Definir Fuso Horário",
- "commandRequestPhoto": "Solicitar Foto",
- "commandPowerOff": "Dispositivo Desligado",
- "commandRebootDevice": "Reiniciar Dispositivo",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Enviar SMS",
- "commandSendUssd": "Enviar USSD",
- "commandSosNumber": "Definir Numero SOS",
- "commandSilenceTime": "Definir Tempo de Silencio",
- "commandSetPhonebook": "Definir Agenda",
- "commandVoiceMessage": "Mensagem de Voz",
- "commandOutputControl": "Controlo de Saída",
- "commandVoiceMonitoring": "Monitorização de Voz",
- "commandSetAgps": "Definir AGPS",
- "commandSetIndicator": "Definir Indicador",
- "commandConfiguration": "Configuração",
- "commandGetVersion": "Obter Versão",
- "commandFirmwareUpdate": "Actualizar Firmware",
- "commandSetConnection": "Estabelecer Ligação",
- "commandSetOdometer": "Conta-Quilómetros",
- "commandGetModemStatus": "Estado do Modem",
- "commandGetDeviceStatus": "Obter Estado do Dispositivos",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frequência",
- "commandTimezone": "Deslocamento do Fuso Horário",
- "commandMessage": "Mensagem",
- "commandRadius": "Radiação",
- "commandEnable": "Ativar",
- "commandData": "Dados",
- "commandIndex": "Inicio",
- "commandPhone": "Número de Telefone",
- "commandServer": "Servidor",
- "commandPort": "Porta",
- "eventAll": "Todos os Eventos",
- "eventDeviceOnline": "Dispositivo Conectado",
- "eventDeviceUnknown": "Estado do dispositivo desconhecido",
- "eventDeviceOffline": "Estado Desligado",
- "eventDeviceInactive": "Dispositivo Inativo",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Dispositivo em Movimento",
- "eventDeviceStopped": "Dispositivo Parado",
- "eventDeviceOverspeed": "Atingido o Excesso de Velocidade",
- "eventDeviceFuelDrop": "Perda de Combústivel",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Resultado do Comando",
- "eventGeofenceEnter": "Entrou na Cerca Geográfica",
- "eventGeofenceExit": "Saiu da Cerca Geográfica",
- "eventAlarm": "Alarme",
- "eventIgnitionOn": "Ignição Ligada",
- "eventIgnitionOff": "Ignição Desligada",
- "eventMaintenance": "Necessária Manutenção",
- "eventTextMessage": "Mensagem de Texto Recebida",
- "eventDriverChanged": "Alteração de Condutor",
- "eventMedia": "Media",
- "eventsScrollToLast": "Puxar para o Fim",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Geral",
- "alarmSos": "SOS",
- "alarmVibration": "Vibração",
- "alarmMovement": "Movimento",
- "alarmLowspeed": "Baixa Velocidade",
- "alarmOverspeed": "Excesso de Velocidade",
- "alarmFallDown": "Queda",
- "alarmLowPower": "Potência Baixa",
- "alarmLowBattery": "Bateria Fraca",
- "alarmFault": "Falha",
- "alarmPowerOff": "Desligado",
- "alarmPowerOn": "Ligado",
- "alarmDoor": "Porta",
- "alarmLock": "Bloqueio",
- "alarmUnlock": "Desbloqueio",
- "alarmGeofence": "Cerca Geográfica",
- "alarmGeofenceEnter": "Entrada na Cerca Geográfica",
- "alarmGeofenceExit": "Saída da Cerca Geográfica",
- "alarmGpsAntennaCut": "Corte de Antena GPS",
- "alarmAccident": "Acidente",
- "alarmTow": "Reboque",
- "alarmIdle": "Inútil",
- "alarmHighRpm": "RPM Alta",
- "alarmHardAcceleration": "Aceleração Brusca",
- "alarmHardBraking": "Travagem Brusca",
- "alarmHardCornering": "Viragem Brusca",
- "alarmLaneChange": "Mudança de Faixa",
- "alarmFatigueDriving": "Condução Cansada",
- "alarmPowerCut": "Alarme de Corte de Corrente",
- "alarmPowerRestored": "Alarme de Energia Restaurado",
- "alarmJamming": "Alarme de Bloqueio",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Estacionamento",
- "alarmBonnet": "Alarme do Capô",
- "alarmFootBrake": "Alarme de Travão de Mão",
- "alarmFuelLeak": "Perda de Combustivel",
- "alarmTampering": "Adulteração",
- "alarmRemoving": "Removendo",
- "notificationType": "Tipo de Notificação",
- "notificationAlways": "Todos os Dispositivos",
- "notificationNotificators": "Vias",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "E-Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Histórico de Rotas",
- "reportEvents": "Eventos",
- "reportTrips": "Viagens",
- "reportStops": "Paragens",
- "reportSummary": "Resumo",
- "reportDaily": "Resumo Diário",
- "reportChart": "Gráfico",
- "reportConfigure": "Configurar",
- "reportEventTypes": "Tipos de Eventos",
- "reportChartType": "Tipo de Gráfico",
- "reportShowMarkers": "Mostrar Marcadores",
- "reportExport": "Exportar",
- "reportEmail": "Relatório de Email",
- "reportSchedule": "Schedule",
- "reportPeriod": "Periodo",
- "reportCustom": "Personalização",
- "reportToday": "Hoje",
- "reportYesterday": "Ontem",
- "reportThisWeek": "Esta Semana",
- "reportPreviousWeek": "Semana Passada",
- "reportThisMonth": "Este Mês",
- "reportPreviousMonth": "Mês Passado",
- "reportDeviceName": "Nome do Dispositivo",
- "reportAverageSpeed": "Velocidade Média",
- "reportMaximumSpeed": "Velocidade Máxima",
- "reportEngineHours": "Duração Ligado",
- "reportDuration": "Duração",
- "reportStartDate": "Data de Início",
- "reportStartTime": "Hora de Inicio",
- "reportStartAddress": "Morada Inicial",
- "reportEndTime": "Hora de Fim",
- "reportEndAddress": "Morada Final",
- "reportSpentFuel": "Combustível Gasto",
- "reportStartOdometer": "Início do Conta-Quilómetros",
- "reportEndOdometer": "Fim do Conta-Quilómetros",
- "statisticsTitle": "Estatísticas",
- "statisticsCaptureTime": "Data",
- "statisticsActiveUsers": "Utilizadores Activos",
- "statisticsActiveDevices": "Dispositivos Activos",
- "statisticsRequests": "Pedidos",
- "statisticsMessagesReceived": "Mensagens Recebidas",
- "statisticsMessagesStored": "Mensagens Armazenadas",
- "statisticsGeocoder": "Pedidos de Codificador Geográfico",
- "statisticsGeolocation": "Pedidos de Geo Localização",
- "categoryArrow": "Seta",
- "categoryDefault": "Padrão",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicicleta",
- "categoryBoat": "Barco",
- "categoryBus": "Autocarro",
- "categoryCar": "Carro",
- "categoryCamper": "Camper",
- "categoryCrane": "Guindaste",
- "categoryHelicopter": "Helicóptero",
- "categoryMotorcycle": "Mota",
- "categoryOffroad": "Jipe",
- "categoryPerson": "Pessoa",
- "categoryPickup": "Pickup",
- "categoryPlane": "Avião",
- "categoryShip": "Barco",
- "categoryTractor": "Tractor",
- "categoryTrain": "Comboio",
- "categoryTram": "Eléctrico",
- "categoryTrolleybus": "Autocarro Eléctrico",
- "categoryTruck": "Camião",
- "categoryVan": "Caravana",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Iniciar",
- "maintenancePeriod": "Período"
-} \ No newline at end of file
diff --git a/web/l10n/pt_BR.json b/web/l10n/pt_BR.json
deleted file mode 100644
index 7f47050f..00000000
--- a/web/l10n/pt_BR.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Carregando...",
- "sharedHide": "oculto",
- "sharedSave": "Salvar",
- "sharedUpload": "Enviar",
- "sharedSet": "Aplicar",
- "sharedCancel": "Cancelar",
- "sharedCopy": "Copy",
- "sharedAdd": "Adicionar",
- "sharedEdit": "Editar",
- "sharedRemove": "Remover",
- "sharedRemoveConfirm": "Remover item?",
- "sharedNoData": "Sem dados",
- "sharedSubject": "Subject",
- "sharedYes": "Sim",
- "sharedNo": "Não",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "Milhas Náuticas",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Hora",
- "sharedMinute": "Minuto",
- "sharedSecond": "Segundo",
- "sharedDays": "dias",
- "sharedHours": "horas",
- "sharedMinutes": "minutos",
- "sharedDecimalDegrees": "Graus Decimais",
- "sharedDegreesDecimalMinutes": "Graus Minutos Decimais",
- "sharedDegreesMinutesSeconds": "Graus Minutos Segundos",
- "sharedName": "Nome",
- "sharedDescription": "Descrição",
- "sharedSearch": "Busca",
- "sharedIconScale": "Escala do ícone",
- "sharedGeofence": "Geocerca",
- "sharedGeofences": "Cerca Virtual",
- "sharedCreateGeofence": "Criar cerca",
- "sharedNotifications": "Notificações",
- "sharedNotification": "Notificação",
- "sharedAttributes": "Atributos",
- "sharedAttribute": "Atributo",
- "sharedDrivers": "Motoristas",
- "sharedDriver": "Motorista",
- "sharedArea": "Área",
- "sharedSound": "Som de notificação",
- "sharedType": "Tipo",
- "sharedDistance": "Distância",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "L",
- "sharedGallonAbbreviation": "Galão",
- "sharedLiter": "Litro",
- "sharedImpGallon": "Imp. Galão",
- "sharedUsGallon": "U.S. Galão",
- "sharedLiterPerHourAbbreviation": "L/h",
- "sharedGetMapState": "Obter estado do mapa",
- "sharedComputedAttribute": "Atributo Calculado",
- "sharedComputedAttributes": "Atributos Calculados",
- "sharedCheckComputedAttribute": "Verificar Atributo Calculado",
- "sharedExpression": "Expressão",
- "sharedDevice": "Dispositivo",
- "sharedTest": "Teste",
- "sharedTestNotification": "Enviar notificação de teste",
- "sharedTestNotificators": "Canais de Teste",
- "sharedTestExpression": "Expressão de teste",
- "sharedCalendar": "Calendário",
- "sharedCalendars": "Calendários",
- "sharedFile": "Arquivo",
- "sharedSearchDevices": "Pesquisar Dispositivos",
- "sharedSortBy": "Organizar por",
- "sharedFilterMap": "Filtrar no mapa",
- "sharedSelectFile": "Selecionar Arquivo",
- "sharedPhone": "Telefone",
- "sharedRequired": "Necessário",
- "sharedPreferences": "Preferências",
- "sharedPermissions": "Permissões",
- "sharedConnections": "Conexões",
- "sharedExtra": "Adicional",
- "sharedPrimary": "Primário",
- "sharedSecondary": "Secundário",
- "sharedTypeString": "Texto",
- "sharedTypeNumber": "Número",
- "sharedTypeBoolean": "Lógico",
- "sharedTimezone": "Fuso horário",
- "sharedInfoTitle": "Informação",
- "sharedSavedCommand": "Comando Salvo",
- "sharedSavedCommands": "Comandos Salvos",
- "sharedNew": "Novo...",
- "sharedShowAddress": "Mostrar Endereço",
- "sharedShowDetails": "Mais Detalhes",
- "sharedDisabled": "Desativado",
- "sharedMaintenance": "Manutenção",
- "sharedDeviceAccumulators": "Contadores",
- "sharedAlarms": "Alarmes",
- "sharedLocation": "Localização",
- "sharedImport": "Importar",
- "sharedColumns": "Colunas",
- "sharedDropzoneText": "Arraste e solte um arquivo aqui ou clique",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simples",
- "calendarRecurrence": "Recorrência",
- "calendarOnce": "Uma vez",
- "calendarDaily": "Diariamente",
- "calendarWeekly": "Semanalmente",
- "calendarMonthly": "Mensalmente",
- "calendarDays": "Dias",
- "calendarSunday": "Domingo",
- "calendarMonday": "Segunda-feira",
- "calendarTuesday": "Terça-feira",
- "calendarWednesday": "Quarta-feira",
- "calendarThursday": "Quinta-feira",
- "calendarFriday": "Sexta-feira",
- "calendarSaturday": "Sábado",
- "attributeShowGeofences": "Exibir Cerca Virtual",
- "attributeSpeedLimit": "Limite de Velocidade",
- "attributeFuelDropThreshold": "Limite de decréscimo de combustível",
- "attributeFuelIncreaseThreshold": "Limite de acréscimo de combustível",
- "attributePolylineDistance": "Distância da Polilinha",
- "attributeReportIgnoreOdometer": "Relatório: Ignorar Odômetro",
- "attributeWebReportColor": "Web: Cor do Relatório",
- "attributeDevicePassword": "Senha do Dispositivo",
- "attributeDeviceImage": "Imagem",
- "attributeDeviceInactivityStart": "Início de inatividade do dispositivo",
- "attributeDeviceInactivityPeriod": "Período de inatividade do dispositivo",
- "attributeProcessingCopyAttributes": "Processamento: Copiar Atributos",
- "attributeColor": "Cor",
- "attributeWebLiveRouteLength": "Web: Comprimento da Rota ao Vivo",
- "attributeWebSelectZoom": "Web: Zoom Selecionado",
- "attributeWebMaxZoom": "Web: Zoom Máximo",
- "attributeTelegramChatId": "ID do Chat do Telegram",
- "attributePushoverUserKey": "Chave de usuário do Pushover",
- "attributePushoverDeviceNames": "Nomes de dispositivos do Pushover",
- "attributeMailSmtpHost": "Email: Host SMTP",
- "attributeMailSmtpPort": "Email: Porta SMTP",
- "attributeMailSmtpStarttlsEnable": "Email: Ativar STARTTLS (SMTP)",
- "attributeMailSmtpStarttlsRequired": "Email: SMTP START TLS Obrigatório",
- "attributeMailSmtpSslEnable": "Email: Ativar SSL (SMTP)",
- "attributeMailSmtpSslTrust": "Email: Certificado SSL (SMTP)",
- "attributeMailSmtpSslProtocols": "Email: Protocolo SSL (SMTP)",
- "attributeMailSmtpFrom": "Email: Remetente",
- "attributeMailSmtpAuth": "Email: Ativar Autenticação (SMTP)",
- "attributeMailSmtpUsername": "Email: Nome de Usuário (SMTP)",
- "attributeMailSmtpPassword": "Email: Senha (SMTP)",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Desativar atributos",
- "attributeUiDisableGroups": "UI: Desabilitar Grupos",
- "attributeUiDisableEvents": "UI: Eventos Desativados",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Desativar Motoristas",
- "attributeUiDisableComputedAttributes": "UI: Desativar Atributos Calculados",
- "attributeUiDisableCalendars": "UI: Desativar Calendários",
- "attributeUiDisableMaintenance": "UI: Desativar Manutenção",
- "attributeUiHidePositionAttributes": "UI: Ocultar os atributos de posição",
- "attributeUiDisableLoginLanguage": "UI: Desativar idioma de login",
- "attributeNotificationTokens": "Token de Notificação",
- "attributePopupInfo": "Informações no Pop-up",
- "errorTitle": "Erro",
- "errorGeneral": "Parâmetros inválidos ou violação de restrições",
- "errorConnection": "Erro de conexão",
- "errorSocket": "Erro na conexão com Web Socket",
- "errorZero": "Não pode ser zero",
- "userEmail": "Email",
- "userPassword": "Senha",
- "userAdmin": "Admin",
- "userRemember": "Lembrar",
- "userExpirationTime": "Validade",
- "userDeviceLimit": "Limite de dispositivos",
- "userUserLimit": "Limite de Usuários",
- "userDeviceReadonly": "Dispositivos somente leitura",
- "userLimitCommands": "Limite de Comandos",
- "userDisableReports": "Desabilitar Relatórios",
- "userFixedEmail": "Sem alteração de e-mail",
- "userToken": "Token",
- "userDeleteAccount": "Deletar conta",
- "userTemporary": "Temporary",
- "loginTitle": "Login",
- "loginLanguage": "Idioma",
- "loginReset": "Redefinir senha",
- "loginRegister": "Registrar",
- "loginLogin": "Entrar",
- "loginOpenId": "Logar com OpenID",
- "loginFailed": "Email ou senha incorretos",
- "loginCreated": "Novo usuário registrado",
- "loginResetSuccess": "Verifique seu e-mail",
- "loginUpdateSuccess": "Nova senha definida",
- "loginLogout": "Sair",
- "loginLogo": "Logotipo",
- "loginTotpCode": "Código One-time Password",
- "loginTotpKey": "Chave One-time Password",
- "devicesAndState": "Dispositivo e Estado",
- "deviceSelected": "Dispositivo selecionado",
- "deviceTitle": "Dispositivos",
- "devicePrimaryInfo": "Título do dispositivo",
- "deviceSecondaryInfo": "Detalhes do dispositivo",
- "deviceIdentifier": "Identificador",
- "deviceModel": "Modelo",
- "deviceContact": "Contato",
- "deviceCategory": "Categoria",
- "deviceLastUpdate": "Última Atualização",
- "deviceCommand": "Comando",
- "deviceFollow": "Seguir",
- "deviceTotalDistance": "Distância total",
- "deviceStatus": "Estado",
- "deviceStatusOnline": "Conectado",
- "deviceStatusOffline": "Desconectado",
- "deviceStatusUnknown": "Desconhecido",
- "deviceRegisterFirst": "Registre seu primeiro dispositivo",
- "deviceIdentifierHelp": "IMEI, número de serial ou outro ID. Precisa ser um identificador único para os relatórios do dispositivo no servidor.",
- "deviceShare": "Dispositivo Compartilhado",
- "groupDialog": "Grupo",
- "groupParent": "Grupo",
- "groupNoGroup": "Sem Grupo",
- "settingsTitle": "Configurações",
- "settingsUser": "Conta",
- "settingsGroups": "Grupos",
- "settingsServer": "Servidor",
- "settingsUsers": "Usuários",
- "settingsDistanceUnit": "Unidade de Distância",
- "settingsAltitudeUnit": "Altitude Unidade",
- "settingsSpeedUnit": "Unidade de Velocidade",
- "settingsVolumeUnit": "Unidade de Volume",
- "settingsTwelveHourFormat": "Formato de 12 Horas",
- "settingsCoordinateFormat": "Formato de coordenadas",
- "settingsServerVersion": "Versão do servidor",
- "settingsAppVersion": "Versão do aplicativo",
- "settingsConnection": "Conexão",
- "settingsDarkMode": "Modo Escuro",
- "settingsTotpEnable": "Habilitar One-time Password",
- "settingsTotpForce": "Forçar One-time Password",
- "settingsServiceWorkerUpdateInterval": "Intervalo de atualização do ServiceWorker",
- "settingsUpdateAvailable": "Existe uma atualização disponível.",
- "settingsSupport": "Support",
- "reportTitle": "Relatórios",
- "reportScheduled": "Agendamento de relatórios",
- "reportDevice": "Dispositivo",
- "reportGroup": "Grupo",
- "reportFrom": "De",
- "reportTo": "Para",
- "reportShow": "Mostrar",
- "reportClear": "Limpar",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Definir tempo",
- "positionDeviceTime": "Hora do dispositivo",
- "positionServerTime": "Hora do servidor",
- "positionValid": "Válido",
- "positionAccuracy": "Precisão",
- "positionLatitude": "Latitude",
- "positionLongitude": "Longitude",
- "positionAltitude": "Altitude",
- "positionSpeed": "Velocidade",
- "positionCourse": "Direção",
- "positionAddress": "Endereço",
- "positionProtocol": "Protocolo",
- "positionDistance": "Distância",
- "positionRpm": "RPM",
- "positionFuel": "Combustível",
- "positionPower": "Potência",
- "positionBattery": "Bateria",
- "positionRaw": "Bruto",
- "positionIndex": "Índice",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Sátelites",
- "positionSatVisible": "Satélites Visíveis",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Evento",
- "positionAlarm": "Alarme",
- "positionStatus": "Estado",
- "positionOdometer": "Odômetro",
- "positionServiceOdometer": "Odômetro de Serviço",
- "positionTripOdometer": "Odômetro de Viagem",
- "positionHours": "Horas",
- "positionSteps": "Passos",
- "positionInput": "Entrada",
- "positionHeartRate": "Frequência Cardíaca",
- "positionOutput": "Saída",
- "positionBatteryLevel": "Nível de Bateria",
- "positionFuelConsumption": "Consumo de Combustível",
- "positionRfid": "RFID",
- "positionVersionFw": "Versão de Firmware",
- "positionVersionHw": "Versão de Hardware",
- "positionIgnition": "Ignição",
- "positionFlags": "Sinais",
- "positionCharge": "Carga",
- "positionIp": "IP",
- "positionArchive": "Arquivar",
- "positionVin": "VIN",
- "positionApproximate": "Estimado",
- "positionThrottle": "Acelerador",
- "positionMotion": "Movimento",
- "positionArmed": "Alarme Ativado",
- "positionAcceleration": "Aceleração",
- "positionTemp": "Temperatura",
- "positionDeviceTemp": "Temperatura do Dispositivo",
- "positionCoolantTemp": "Temperatura do líquido de arrefecimento",
- "positionOperator": "Operadora",
- "positionCommand": "Comando",
- "positionBlocked": "Bloqueado",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Velocidade OBD",
- "positionObdOdometer": "Odômetro OBD",
- "positionDrivingTime": "Tempo de direção",
- "positionDriverUniqueId": "Identificador Único Motorista",
- "positionCard": "Cartão",
- "positionImage": "Imagem",
- "positionVideo": "Video",
- "positionAudio": "Áudio",
- "serverTitle": "Configurações do Servidor",
- "serverZoom": "Zoom",
- "serverRegistration": "Registro",
- "serverReadonly": "Somente leitura",
- "serverForceSettings": "Forçar configurações",
- "serverAnnouncement": "Anúncio",
- "serverName": "Nome do Servidor",
- "serverDescription": "Descrição do Servidor",
- "serverColorPrimary": "Cor Primária",
- "serverColorSecondary": "Cor Secundária",
- "serverLogo": "Imagem do Logo",
- "serverLogoInverted": "Imagem do logo invertida",
- "serverChangeDisable": "Desabilitar mudança de servidor",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Mapa",
- "mapActive": "Mapas ativos",
- "mapOverlay": "Sobreposição de mapa",
- "mapOverlayCustom": "Sobreposição personalizada",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Nuvens",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitação",
- "mapOpenWeatherPressure": "OpenWeather Pressão",
- "mapOpenWeatherWind": "OpenWeather Vento",
- "mapOpenWeatherTemperature": "OpenWeather Temperatura",
- "mapLayer": "Camada de Mapa",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Personalizar mapa",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Estrada",
- "mapGoogleHybrid": "Google Híbrido",
- "mapGoogleSatellite": "Google Satélite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Mapas API Key",
- "mapBingRoad": "Bing Mapas Estradas",
- "mapBingAerial": "Bing Mapas Aéreo",
- "mapBingHybrid": "Bing Mapas Híbrido",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Mapa Yandex",
- "mapYandexSat": "Satélite Yandex",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Levantamento de artilharia",
- "mapMapboxStreets": "Mapbox Ruas",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox ao ar livre",
- "mapMapboxSatellite": "Mapbox Satélite",
- "mapMapboxKey": "Mapbox Token de Acesso",
- "mapMapTilerBasic": "MapTiler Básico",
- "mapMapTilerHybrid": "MapTiler Híbrido",
- "mapMapTilerKey": "MapTiler Chave API",
- "mapLocationIqStreets": "LocationIQ Ruas",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Token de Acesso",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Fluxo de Tráfego",
- "mapTomTomIncidents": "TomTom Incidentes de Tráfego",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basico",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Fluxo de Tráfego",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polígono",
- "mapShapeCircle": "Círculo",
- "mapShapePolyline": "Polilinha",
- "mapLiveRoutes": "Rotas ao Vivo",
- "mapDirection": "Exibir direção",
- "mapCurrentLocation": "Localização atual",
- "mapPoiLayer": "Camada POI",
- "mapClustering": "Agrupamento de marcadores",
- "mapOnSelect": "Mostrar mapa na seleção",
- "mapDefault": "Mapa padrão",
- "stateTitle": "Estado",
- "stateName": "Atributo",
- "stateValue": "Valor",
- "commandTitle": "Comando",
- "commandSend": "Enviar",
- "commandSent": "Comando enviado",
- "commandQueued": "Comando na fila",
- "commandUnit": "Unidade",
- "commandCustom": "Comando personalizado",
- "commandDeviceIdentification": "Identificação do dispositivo",
- "commandPositionSingle": "Relatório avulso",
- "commandPositionPeriodic": "Atualização Periódica",
- "commandPositionStop": "Parar Atualização",
- "commandEngineStop": "Desligar Motor",
- "commandEngineResume": "Religar Motor",
- "commandAlarmArm": "Ativar Alarme",
- "commandAlarmDisarm": "Desativar Alarme",
- "commandAlarmDismiss": "Ignorar Alarme",
- "commandSetTimezone": "Definir fuso horário",
- "commandRequestPhoto": "Pegar foto",
- "commandPowerOff": "Desligar o Dispositivo",
- "commandRebootDevice": "Reiniciar dispositivo",
- "commandFactoryReset": "Restauração de fábrica",
- "commandSendSms": "Enviar SMS",
- "commandSendUssd": "Enviar USSD",
- "commandSosNumber": "Definir numero SOS",
- "commandSilenceTime": "Definir Tempo no Silencioso",
- "commandSetPhonebook": "Definir lista telefônica",
- "commandVoiceMessage": "Mensagem de voz",
- "commandOutputControl": "Controle de saída",
- "commandVoiceMonitoring": "Monitoramento de Voz",
- "commandSetAgps": "Definir AGPS",
- "commandSetIndicator": "Definir Indicador",
- "commandConfiguration": "Configuração",
- "commandGetVersion": "Obter Versão",
- "commandFirmwareUpdate": "Atualizar Firmware",
- "commandSetConnection": "Definir Conexão",
- "commandSetOdometer": "Definir Odômetro",
- "commandGetModemStatus": "Obter Status do Modem",
- "commandGetDeviceStatus": "Obter status do dispositivo",
- "commandSetSpeedLimit": "Definir limite de velocidade",
- "commandModePowerSaving": "Modo de economia de energia",
- "commandModeDeepSleep": "Modo de Sono Profundo",
- "commandAlarmGeofence": "Definir Alarme de Geofence",
- "commandAlarmBattery": "Definir Alarme de Bateria",
- "commandAlarmSos": "Definir Alarme SOS",
- "commandAlarmRemove": "Definir Remoção de Alarme",
- "commandAlarmClock": "Definir Horário de Alarme",
- "commandAlarmSpeed": "Definir Velocidade de Alarme",
- "commandAlarmFall": "Definir Falha de Alarme",
- "commandAlarmVibration": "Definir Alarme de Vibração",
- "commandFrequency": "Frequência",
- "commandTimezone": "Ajuste de Fuso horário",
- "commandMessage": "Mensagem",
- "commandRadius": "Raio",
- "commandEnable": "Habilitar",
- "commandData": "Data",
- "commandIndex": "Índice",
- "commandPhone": "Número de Telefone",
- "commandServer": "Servidor",
- "commandPort": "Porta",
- "eventAll": "Todos Eventos",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status desconhecido",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Dispositivo inativo",
- "eventQueuedCommandSent": "Comando na fila enviado",
- "eventDeviceMoving": "Dispositivo movendo",
- "eventDeviceStopped": "Dispositivo parado",
- "eventDeviceOverspeed": "Excedido o limite de velocidade",
- "eventDeviceFuelDrop": "Queda de combustível",
- "eventDeviceFuelIncrease": "Acréscimo de combustível",
- "eventCommandResult": "Resultado do comando",
- "eventGeofenceEnter": "Entrada na cerca virtual",
- "eventGeofenceExit": "Saída da cerca virtual",
- "eventAlarm": "Alarme",
- "eventIgnitionOn": "Ignição ligada",
- "eventIgnitionOff": "Ignição desligada",
- "eventMaintenance": "Manutenção necessária",
- "eventTextMessage": "Mensagem de texto recebida",
- "eventDriverChanged": "Condutor alterado",
- "eventMedia": "Media",
- "eventsScrollToLast": "Rolar para o último",
- "eventsSoundEvents": "Som de eventos",
- "eventsSoundAlarms": "Som de alarmes",
- "alarmGeneral": "Geral",
- "alarmSos": "SOS",
- "alarmVibration": "Vibrando",
- "alarmMovement": "Movendo",
- "alarmLowspeed": "Velocidade baixa",
- "alarmOverspeed": "Alta velocidade",
- "alarmFallDown": "Cair",
- "alarmLowPower": "Carga Baixa",
- "alarmLowBattery": "Bateria baixa",
- "alarmFault": "Falha",
- "alarmPowerOff": "Alimentação desligada",
- "alarmPowerOn": "Alimentação ligada",
- "alarmDoor": "Porta",
- "alarmLock": "Bloqueado",
- "alarmUnlock": "Desbloqueado",
- "alarmGeofence": "Cerca virtual",
- "alarmGeofenceEnter": "Entrando na cerca virtual",
- "alarmGeofenceExit": "Saiu da Cerca virtual",
- "alarmGpsAntennaCut": "Antena de GPS cortada",
- "alarmAccident": "Acidente",
- "alarmTow": "Rebocar",
- "alarmIdle": "Ocioso",
- "alarmHighRpm": "Alta Rotação",
- "alarmHardAcceleration": "Aceleração brusca",
- "alarmHardBraking": "Frenagem brusca",
- "alarmHardCornering": "Curva Acentuada",
- "alarmLaneChange": "Mudança de Faixa",
- "alarmFatigueDriving": "Condutor Cansado",
- "alarmPowerCut": "Alimentação cortada",
- "alarmPowerRestored": "Alimentação restaurada",
- "alarmJamming": "Interferência",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Estacionamento",
- "alarmBonnet": "Capô",
- "alarmFootBrake": "Freio de mão",
- "alarmFuelLeak": "Vazamento de combustível",
- "alarmTampering": "Manipulando",
- "alarmRemoving": "Removendo",
- "notificationType": "Tipo de Notificação",
- "notificationAlways": "Todos os Dispositivos",
- "notificationNotificators": "Canais",
- "notificatorCommand": "Comando",
- "notificatorWeb": "Web",
- "notificatorMail": "E-Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Empurrar",
- "reportReplay": "Replay",
- "reportCombined": "Combinado",
- "reportRoute": "Rota",
- "reportEvents": "Eventos",
- "reportTrips": "Viagens",
- "reportStops": "Paradas",
- "reportSummary": "Resumo",
- "reportDaily": "Resumo Diário",
- "reportChart": "Gráfico",
- "reportConfigure": "Configurar",
- "reportEventTypes": "Tipos de Eventos",
- "reportChartType": "Tipo do Gráfico",
- "reportShowMarkers": "Mostrar Marcadores",
- "reportExport": "Exportar",
- "reportEmail": "Relatório de E-mail",
- "reportSchedule": "Agenda",
- "reportPeriod": "Período",
- "reportCustom": "Personalizadas",
- "reportToday": "Hoje",
- "reportYesterday": "Ontem",
- "reportThisWeek": "Esta Semana",
- "reportPreviousWeek": "Semana Anterior",
- "reportThisMonth": "Este Mês",
- "reportPreviousMonth": "Mês Anterior",
- "reportDeviceName": "Nome do Dispositivo",
- "reportAverageSpeed": "Velocidade Média",
- "reportMaximumSpeed": "Velocidade Máxima",
- "reportEngineHours": "Horas ligado",
- "reportDuration": "Duração",
- "reportStartDate": "Data de Início",
- "reportStartTime": "Hora inicial",
- "reportStartAddress": "Endereço inicial",
- "reportEndTime": "Hora final",
- "reportEndAddress": "Endereço final",
- "reportSpentFuel": "Gasto de Combustível",
- "reportStartOdometer": "Início do odômetro",
- "reportEndOdometer": "Fim do odômetro",
- "statisticsTitle": "Estatísticas",
- "statisticsCaptureTime": "Tempo de Captura",
- "statisticsActiveUsers": "Usuários ativos",
- "statisticsActiveDevices": "Dispositivos ativos",
- "statisticsRequests": "Pedidos",
- "statisticsMessagesReceived": "Mensagens Recebidas",
- "statisticsMessagesStored": "Mensagens armazenadas",
- "statisticsGeocoder": "Solicitações de Geocódigo",
- "statisticsGeolocation": "Solicitações de Geolocalização",
- "categoryArrow": "Seta",
- "categoryDefault": "Padrão",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicicleta",
- "categoryBoat": "Barco",
- "categoryBus": "Ônibus",
- "categoryCar": "Carro",
- "categoryCamper": "Campista",
- "categoryCrane": "Guindaste",
- "categoryHelicopter": "Helicóptero",
- "categoryMotorcycle": "Motocicleta",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Pessoa",
- "categoryPickup": "Pick-up",
- "categoryPlane": "Avião",
- "categoryShip": "Navio",
- "categoryTractor": "Trator",
- "categoryTrain": "Trem",
- "categoryTram": "Bonde",
- "categoryTrolleybus": "Ônibus Elétrico",
- "categoryTruck": "Caminhão",
- "categoryVan": "Van",
- "categoryScooter": "Patinete Elétrico",
- "maintenanceStart": "Começar",
- "maintenancePeriod": "Período"
-} \ No newline at end of file
diff --git a/web/l10n/ro.json b/web/l10n/ro.json
deleted file mode 100644
index 84367c5b..00000000
--- a/web/l10n/ro.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Se încarcă...",
- "sharedHide": "Ascunde",
- "sharedSave": "Salvează",
- "sharedUpload": "Încarcă",
- "sharedSet": "Configurare",
- "sharedCancel": "Anulează",
- "sharedCopy": "Copy",
- "sharedAdd": "Adaugă",
- "sharedEdit": "Modifică",
- "sharedRemove": "Elimină",
- "sharedRemoveConfirm": "Ștergeți obiectul?",
- "sharedNoData": "Fără date",
- "sharedSubject": "Subject",
- "sharedYes": "Da",
- "sharedNo": "Nu",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Oră",
- "sharedMinute": "Minut",
- "sharedSecond": "Secundă",
- "sharedDays": "zile",
- "sharedHours": "ore",
- "sharedMinutes": "minute",
- "sharedDecimalDegrees": "Grade Zecimale",
- "sharedDegreesDecimalMinutes": "Grade Zecimale Minute",
- "sharedDegreesMinutesSeconds": "Grade minute secunde",
- "sharedName": "Nume",
- "sharedDescription": "Descriere",
- "sharedSearch": "Căutare",
- "sharedIconScale": "Scală pentru Iconiță",
- "sharedGeofence": "Perimetru Restricționat",
- "sharedGeofences": "Perimetre Restricționate",
- "sharedCreateGeofence": "Crează Perimetru Restricționat",
- "sharedNotifications": "Notificări",
- "sharedNotification": "Notificare",
- "sharedAttributes": "Atribute",
- "sharedAttribute": "Atribut",
- "sharedDrivers": "Șoferi",
- "sharedDriver": "Șofer",
- "sharedArea": "Suprafață",
- "sharedSound": "Sunet Notificare",
- "sharedType": "Tip",
- "sharedDistance": "Distanţa",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Litru",
- "sharedImpGallon": "Galon Imperial",
- "sharedUsGallon": "Galon US",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Obține Starea Hărții",
- "sharedComputedAttribute": "Atribut Calculat",
- "sharedComputedAttributes": "Atribute Calculate",
- "sharedCheckComputedAttribute": "Verifică Atributul Calculat",
- "sharedExpression": "Formulă",
- "sharedDevice": "Dispozitiv",
- "sharedTest": "Test",
- "sharedTestNotification": "Trimite Notificare de Test",
- "sharedTestNotificators": "Canale de Test",
- "sharedTestExpression": "Formulă de Test",
- "sharedCalendar": "Calendar",
- "sharedCalendars": "Calendare",
- "sharedFile": "Fișier",
- "sharedSearchDevices": "Caută Echipamente",
- "sharedSortBy": "Sortat După",
- "sharedFilterMap": "Filtru pe Hartă",
- "sharedSelectFile": "Selectează Fișier",
- "sharedPhone": "Telefon",
- "sharedRequired": "Obligatorii",
- "sharedPreferences": "Preferințe",
- "sharedPermissions": "Permisiuni",
- "sharedConnections": "Conexiuni",
- "sharedExtra": "Suplimentar",
- "sharedPrimary": "Primar",
- "sharedSecondary": "Secundar",
- "sharedTypeString": "Șir",
- "sharedTypeNumber": "Număr",
- "sharedTypeBoolean": "Logic",
- "sharedTimezone": "Fus orar",
- "sharedInfoTitle": "Informații",
- "sharedSavedCommand": "Comandă Salvată",
- "sharedSavedCommands": "Comenzi Salvate",
- "sharedNew": "Nou...",
- "sharedShowAddress": "Afișează Adresa",
- "sharedShowDetails": "Mai Multe Detalii",
- "sharedDisabled": "Dezactivat",
- "sharedMaintenance": "Întreținere",
- "sharedDeviceAccumulators": "Acumulatori",
- "sharedAlarms": "Alarme",
- "sharedLocation": "Locație",
- "sharedImport": "Import",
- "sharedColumns": "Coloane",
- "sharedDropzoneText": "Drag and drop un fișier aici ori click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simplu",
- "calendarRecurrence": "Recurent",
- "calendarOnce": "O singură dată",
- "calendarDaily": "Zilnic",
- "calendarWeekly": "Săptămânal",
- "calendarMonthly": "Lunar",
- "calendarDays": "Zile",
- "calendarSunday": "Duminică",
- "calendarMonday": "Luni",
- "calendarTuesday": "Marți",
- "calendarWednesday": "Miercuri",
- "calendarThursday": "Joi",
- "calendarFriday": "Vineri",
- "calendarSaturday": "Sâmbătă",
- "attributeShowGeofences": "Afișează Perimetre Restricționate",
- "attributeSpeedLimit": "Limita de viteza",
- "attributeFuelDropThreshold": "Prag de Cădere a Combustibilului",
- "attributeFuelIncreaseThreshold": "Prag de Creștere a Combustibilului",
- "attributePolylineDistance": "Distanță Polilinie",
- "attributeReportIgnoreOdometer": "Raport: Ignoră Kilometraj",
- "attributeWebReportColor": "Web: Culoare Raport",
- "attributeDevicePassword": "Parolă Dispozitiv",
- "attributeDeviceImage": "Imagine Dispozitiv",
- "attributeDeviceInactivityStart": "Dată Start Dispozitiv Inactiv",
- "attributeDeviceInactivityPeriod": "Perioadă Dispozitiv Inactiv",
- "attributeProcessingCopyAttributes": "Procesare: Copiază Atribute",
- "attributeColor": "Culoare",
- "attributeWebLiveRouteLength": "Web: Lungime Traseu în Timp Real",
- "attributeWebSelectZoom": "Web: Zoom la Selecție",
- "attributeWebMaxZoom": "Web: Zoom Maxim",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Cheie Utilizator Pushover",
- "attributePushoverDeviceNames": "Nume Dispozitiv Pushover",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: Activeaza SMTP STARTTLS ",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Obligatoriu",
- "attributeMailSmtpSslEnable": "Mail: Activează SMTP SSL",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: Protocol SMTP SSL",
- "attributeMailSmtpFrom": "Mail: SMTP Expeditor",
- "attributeMailSmtpAuth": "Mail: Activează SMTP Auth",
- "attributeMailSmtpUsername": "Mail: Utilizator SMTP",
- "attributeMailSmtpPassword": "Mail: Parolă SMTP",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Dezactivare Atribute",
- "attributeUiDisableGroups": "UI: Dezactivare Grupuri",
- "attributeUiDisableEvents": "UI: Dezactivare Evenimente",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Dezactivare Șoferi",
- "attributeUiDisableComputedAttributes": "UI: Dezactivare Atribute Calculate",
- "attributeUiDisableCalendars": "UI: Dezactivare Calendar",
- "attributeUiDisableMaintenance": "UI: Dezactivare Întreținere",
- "attributeUiHidePositionAttributes": "UI: Ascunde Atributele de Poziționare",
- "attributeUiDisableLoginLanguage": "UI: Dezactivare Limbă Autentificare",
- "attributeNotificationTokens": "Token-uri Notificări",
- "attributePopupInfo": "Informații Popup",
- "errorTitle": "Eroare",
- "errorGeneral": "Parametri invalizi sau încălcare a restricțiilor",
- "errorConnection": "Eroare de conectare",
- "errorSocket": "Eroare conectare web socket",
- "errorZero": "Nu poate fi zero",
- "userEmail": "Email",
- "userPassword": "Parolă",
- "userAdmin": "Admin",
- "userRemember": "Ţine minte",
- "userExpirationTime": "Expirare",
- "userDeviceLimit": "Limită Dispozitiv",
- "userUserLimit": "Limită Utilizator",
- "userDeviceReadonly": "Dispozitiv Doar pentru Citire",
- "userLimitCommands": "Limită Comenzi",
- "userDisableReports": "Dezactivare Rapoarte",
- "userFixedEmail": "Schimbare Adresă Email Interzisă",
- "userToken": "Token",
- "userDeleteAccount": "Șterge Cont",
- "userTemporary": "Temporary",
- "loginTitle": "Autentificare",
- "loginLanguage": "Limbă",
- "loginReset": "Reconfigurare Parolă",
- "loginRegister": "Înregistrare",
- "loginLogin": "Autentificare",
- "loginOpenId": "Autentificare cu OpenID",
- "loginFailed": "Email sau parolă incorectă",
- "loginCreated": "Un nou utilizator a fost înregistrat",
- "loginResetSuccess": "Verifică email",
- "loginUpdateSuccess": "Noua parolă a fost configurată",
- "loginLogout": "Deconectare",
- "loginLogo": "Logo",
- "loginTotpCode": "Cod Parolă One-time",
- "loginTotpKey": "Cheie Parolă One-time",
- "devicesAndState": "Dispozitive și Stare",
- "deviceSelected": "Dispozitiv Selectat",
- "deviceTitle": "Dispozitive",
- "devicePrimaryInfo": "Titlu Dispozitiv",
- "deviceSecondaryInfo": "Detaliu Dispozitiv",
- "deviceIdentifier": "Identificator",
- "deviceModel": "Model",
- "deviceContact": "Contact",
- "deviceCategory": "Categorie",
- "deviceLastUpdate": "Ultima actualizare",
- "deviceCommand": "Comandă",
- "deviceFollow": "Urmărește",
- "deviceTotalDistance": "Distanță Totală",
- "deviceStatus": "Stare",
- "deviceStatusOnline": "Conectat",
- "deviceStatusOffline": "Deconectat",
- "deviceStatusUnknown": "Necunoscut",
- "deviceRegisterFirst": "Inregistrează primul tău dispozitiv",
- "deviceIdentifierHelp": "IMEI, serial number ori alt ID. Trebuie sa coincidă cu identificatorul dispozitivului raportat la server.",
- "deviceShare": "Partajează Dispozitiv",
- "groupDialog": "Grup",
- "groupParent": "Grup",
- "groupNoGroup": "Fără Grup",
- "settingsTitle": "Configurări",
- "settingsUser": "Cont",
- "settingsGroups": "Grupuri",
- "settingsServer": "Server",
- "settingsUsers": "Utilizatori",
- "settingsDistanceUnit": "Unitatea de Măsură Distanță",
- "settingsAltitudeUnit": "Unitate de Măsură Altitudine",
- "settingsSpeedUnit": "Unitate de Măsură Viteză",
- "settingsVolumeUnit": "Unitate de Măsură Volum",
- "settingsTwelveHourFormat": "Format 12-ore",
- "settingsCoordinateFormat": "Format Coordonate",
- "settingsServerVersion": "Versiune Server",
- "settingsAppVersion": "Versiune Aplicație",
- "settingsConnection": "Conexiune",
- "settingsDarkMode": "Mod Întunecat",
- "settingsTotpEnable": "Activează Parolă One-time",
- "settingsTotpForce": "Forțează Parolă One-time",
- "settingsServiceWorkerUpdateInterval": "Interval Actualizare ServiceWorker",
- "settingsUpdateAvailable": "Există o actualizare disponibilă.",
- "settingsSupport": "Support",
- "reportTitle": "Rapoarte",
- "reportScheduled": "Rapoarte Programate",
- "reportDevice": "Dispozitiv",
- "reportGroup": "Grup",
- "reportFrom": "De la ",
- "reportTo": "Până la",
- "reportShow": "Afișează",
- "reportClear": "Sterge",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Ora Fix-ului",
- "positionDeviceTime": "Timpul Dispozitivului",
- "positionServerTime": "Timpul Serverului",
- "positionValid": "Valabil",
- "positionAccuracy": "Precizie",
- "positionLatitude": "Latitudine",
- "positionLongitude": "Longitudine",
- "positionAltitude": "Altitudine",
- "positionSpeed": "Viteză",
- "positionCourse": "Curs",
- "positionAddress": "Adresă",
- "positionProtocol": "Protocol",
- "positionDistance": "Distanța",
- "positionRpm": "Turatia",
- "positionFuel": "Nivel combustibil",
- "positionPower": "Alimentare",
- "positionBattery": "Baterie",
- "positionRaw": "Brut",
- "positionIndex": "Index",
- "positionHdop": "HDOP Eroare pe orizontala",
- "positionVdop": "VDOP Eroare pe verticala",
- "positionPdop": "PDOP Eroarea pozitiei",
- "positionSat": "Sateliti",
- "positionSatVisible": "Sateliti Vizibili",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Migrare",
- "positionEvent": "Eveniment",
- "positionAlarm": "Alarma",
- "positionStatus": "Stare",
- "positionOdometer": "Kilometraj",
- "positionServiceOdometer": "Kilometraj Service",
- "positionTripOdometer": "Kilometraj Călătorie",
- "positionHours": "Ore",
- "positionSteps": "Pasi",
- "positionInput": "Intrare",
- "positionHeartRate": "Ritmul Cardiac",
- "positionOutput": "Iesire",
- "positionBatteryLevel": "Nivel baterie",
- "positionFuelConsumption": "Consum combustibil",
- "positionRfid": "RFID",
- "positionVersionFw": "Vesiune firmware",
- "positionVersionHw": "Versiune hardware",
- "positionIgnition": "Contact motor",
- "positionFlags": "Marcaj",
- "positionCharge": "Incarca",
- "positionIp": "Adresa IP",
- "positionArchive": "Arhiva",
- "positionVin": "Numar identificare vehicul (VIN)",
- "positionApproximate": "Aproximeaza",
- "positionThrottle": "Pedala acceleratie",
- "positionMotion": "Miscare",
- "positionArmed": "Armat",
- "positionAcceleration": "Acceleratie",
- "positionTemp": "Temperatură",
- "positionDeviceTemp": "Temperatura Dispozitivului",
- "positionCoolantTemp": "Temperatuă Lichid de Răcire",
- "positionOperator": "Operator",
- "positionCommand": "Comenzi",
- "positionBlocked": "Blocat",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Viteza OBD",
- "positionObdOdometer": "Kilometraj OBD",
- "positionDrivingTime": "Timp de Conducere",
- "positionDriverUniqueId": "Identificator Unic Șofer",
- "positionCard": "Card",
- "positionImage": "Imagine",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Configurări Server",
- "serverZoom": "Zoom",
- "serverRegistration": "Înregistrare",
- "serverReadonly": "Doar pentru Citire",
- "serverForceSettings": "Forțează Configurări",
- "serverAnnouncement": "Anunț",
- "serverName": "Nume Server",
- "serverDescription": "Descriere Server",
- "serverColorPrimary": "Culoare Primară",
- "serverColorSecondary": "Culoare Secundară",
- "serverLogo": "Imagine Logo",
- "serverLogoInverted": "Imagine Logo Inversată",
- "serverChangeDisable": "Dezactivează Schimbarea Serverului",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Hartă",
- "mapActive": "Hărți Active",
- "mapOverlay": "Suprapunere Hartă",
- "mapOverlayCustom": "Suprapunere Personalizată",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "Cheie API OpenWeather",
- "mapOpenWeatherClouds": "Nori OpenWeather",
- "mapOpenWeatherPrecipitation": "Precipitații OpenWeather",
- "mapOpenWeatherPressure": "Presiune OpenWeather",
- "mapOpenWeatherWind": "Vânt OpenWeather",
- "mapOpenWeatherTemperature": "Temperatură OpenWeather",
- "mapLayer": "Strat Hartă",
- "mapCustom": "Personalizat (XYX)",
- "mapCustomArcgis": "Personalizat (ArcGIS)",
- "mapCustomLabel": "Hartă personalizată",
- "mapCarto": "Harta Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Cheie Bing Maps",
- "mapBingRoad": "Bing Hartă Drumuri",
- "mapBingAerial": "Bing Hartă Aeriană",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Harta Yandex",
- "mapYandexSat": "Satelit Yandex",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Token Acces MapBox",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "Cheie API MapTiler",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "Token Acces LocationIQ",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "Cheie API TomTom",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "API Key Here",
- "mapShapePolygon": "Poligon",
- "mapShapeCircle": "Cerc",
- "mapShapePolyline": "Polilinie",
- "mapLiveRoutes": "Trasee în Timp Real",
- "mapDirection": "Afișează Direcție",
- "mapCurrentLocation": "Locația Curentă",
- "mapPoiLayer": "POI ",
- "mapClustering": "Clustere de Marcatori",
- "mapOnSelect": "Afișează Harta la Selectare",
- "mapDefault": "Hartă Implicită",
- "stateTitle": "Stare",
- "stateName": "Atribut",
- "stateValue": "Valoare",
- "commandTitle": "Comandă",
- "commandSend": "Trimite",
- "commandSent": "Comanda trimisa",
- "commandQueued": "Comanda adaugata in coada",
- "commandUnit": "Unitate",
- "commandCustom": "Comandă personalizată",
- "commandDeviceIdentification": "Identificare Dispozitiv",
- "commandPositionSingle": "Raportarea unică",
- "commandPositionPeriodic": "Raportarea Periodică",
- "commandPositionStop": "Oprire Raportare",
- "commandEngineStop": "Blocare Motor",
- "commandEngineResume": "Deblocare Motor",
- "commandAlarmArm": "Activare Alarmă",
- "commandAlarmDisarm": "Dezactivare alarmă",
- "commandAlarmDismiss": "Închide Alarmă",
- "commandSetTimezone": "Configurare Fus Orar",
- "commandRequestPhoto": "Solicitare Foto",
- "commandPowerOff": "Oprire Dispozitiv",
- "commandRebootDevice": "Repornire Dispozitiv",
- "commandFactoryReset": "Reconfigurare la Parametrii de Fabrică",
- "commandSendSms": "Trimite SMS",
- "commandSendUssd": "Trimite USSD",
- "commandSosNumber": "Configurare Număr SOS",
- "commandSilenceTime": "Configurare Timp Silențios",
- "commandSetPhonebook": "Configurare Agendă Telefonică",
- "commandVoiceMessage": "Mesaj Vocal",
- "commandOutputControl": "Controlul de ieșire",
- "commandVoiceMonitoring": "Monitorizare Audio",
- "commandSetAgps": "Configurare AGPS",
- "commandSetIndicator": "Configurare Indicator",
- "commandConfiguration": "Configurare",
- "commandGetVersion": "Obține Versiunea",
- "commandFirmwareUpdate": "Actualizare Firmware",
- "commandSetConnection": "Configurare Conexiune",
- "commandSetOdometer": "Configurare Kilometraj",
- "commandGetModemStatus": "Obține Starea Modemului",
- "commandGetDeviceStatus": "Obține Starea Dispozitivului",
- "commandSetSpeedLimit": "Configurare Limită de Viteză",
- "commandModePowerSaving": "Mod Salvare Energie",
- "commandModeDeepSleep": "Mod Somn Adânc",
- "commandAlarmGeofence": "Configurare Alarmă Perimetru Restricționat",
- "commandAlarmBattery": "Configurare Alarmă Baterie",
- "commandAlarmSos": "Configurare Alarmă SOS",
- "commandAlarmRemove": "Configurare Eliminare Alarmă",
- "commandAlarmClock": "Configurare Alarmă Ceas",
- "commandAlarmSpeed": "Configurare Alarmă Viteză",
- "commandAlarmFall": "Configurare Alarmă pentru Cădere",
- "commandAlarmVibration": "Configurare Alarmă Vibrație",
- "commandFrequency": "Frecvenţă",
- "commandTimezone": "Diferență Fus Orar",
- "commandMessage": "Mesaj",
- "commandRadius": "Rază",
- "commandEnable": "Activează",
- "commandData": "Informații",
- "commandIndex": "Index",
- "commandPhone": "Telefon",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Toate Evenimentele",
- "eventDeviceOnline": "Stare pornit",
- "eventDeviceUnknown": "Stare necunoscută",
- "eventDeviceOffline": "Stare oprit",
- "eventDeviceInactive": "Dispozitiv inactiv",
- "eventQueuedCommandSent": "Comandă Pusă la Coadă",
- "eventDeviceMoving": "Dispozitiv in mișcare",
- "eventDeviceStopped": "Dispozitiv oprit",
- "eventDeviceOverspeed": "Viteza maxima depasita",
- "eventDeviceFuelDrop": "Scadere nivel carburant",
- "eventDeviceFuelIncrease": "Creștere a Combustibilului",
- "eventCommandResult": "Rezultat comandă",
- "eventGeofenceEnter": "Intare perimetru restricționat",
- "eventGeofenceExit": "Ieșire perimetru restricționat",
- "eventAlarm": "Alarma",
- "eventIgnitionOn": "Contact pornit",
- "eventIgnitionOff": "Contact oprit",
- "eventMaintenance": "Necesită întreținere",
- "eventTextMessage": "Mesaj text recepționat",
- "eventDriverChanged": "Șofer schimbat",
- "eventMedia": "Mediu",
- "eventsScrollToLast": "Deruleaza la sfarsit",
- "eventsSoundEvents": "Sunet Evenimente",
- "eventsSoundAlarms": "Sunet Alarme",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibratii",
- "alarmMovement": "Miscare",
- "alarmLowspeed": "Viteza redusa",
- "alarmOverspeed": "Viteza depasita",
- "alarmFallDown": "Reducere",
- "alarmLowPower": "Putere redusa",
- "alarmLowBattery": "Nivel scazut baterie",
- "alarmFault": "Eroare",
- "alarmPowerOff": "Pornit",
- "alarmPowerOn": "Oprit",
- "alarmDoor": "Usa",
- "alarmLock": "Blocare",
- "alarmUnlock": "Deblocare",
- "alarmGeofence": "Perimetru Restricționat",
- "alarmGeofenceEnter": "Intrare Perimetru Restricționat",
- "alarmGeofenceExit": "Ieșire Perimetru Restricționat",
- "alarmGpsAntennaCut": "Antena GPS taiata",
- "alarmAccident": "Accident",
- "alarmTow": "Tractare",
- "alarmIdle": "In asteptare",
- "alarmHighRpm": "Turatie ridicata",
- "alarmHardAcceleration": "Accelerare Puternica",
- "alarmHardBraking": "Frana de Urgenta",
- "alarmHardCornering": "Viraj Brusc",
- "alarmLaneChange": "Schimbare Banda",
- "alarmFatigueDriving": "Condus in stare de oboseala",
- "alarmPowerCut": "Taiere Alimentare",
- "alarmPowerRestored": "Alimentare restabilita",
- "alarmJamming": "Bruiaj",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Parcare",
- "alarmBonnet": "Capota",
- "alarmFootBrake": "Frana de serviciu",
- "alarmFuelLeak": "Pierdere combustibil",
- "alarmTampering": "Acces neautorizat",
- "alarmRemoving": "Indepartare",
- "notificationType": "Tip de Notificare",
- "notificationAlways": "Toate Dispozitivele",
- "notificationNotificators": "Canale",
- "notificatorCommand": "Comandă",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Reluare",
- "reportCombined": "Combinat",
- "reportRoute": "Trasee",
- "reportEvents": "Evenimente",
- "reportTrips": "Călătorii",
- "reportStops": "Opriri",
- "reportSummary": "Sumar",
- "reportDaily": "Sumar Zilnic",
- "reportChart": "Grafic",
- "reportConfigure": "Configureaza",
- "reportEventTypes": "Tipuri Evenimente",
- "reportChartType": "Tip Grafic",
- "reportShowMarkers": "Afișează Marcatori",
- "reportExport": "Exporta",
- "reportEmail": "Raport Email",
- "reportSchedule": "Program",
- "reportPeriod": "Perioada",
- "reportCustom": "Personalizat",
- "reportToday": "Astăzi",
- "reportYesterday": "Ieri",
- "reportThisWeek": "Săptămâna Curentă",
- "reportPreviousWeek": "Săptămâna Precedentă",
- "reportThisMonth": "Luna Aceasta",
- "reportPreviousMonth": "Luna Precedentă",
- "reportDeviceName": "Nume Dispozitiv",
- "reportAverageSpeed": "Viteza medie",
- "reportMaximumSpeed": "Viteză Maximă",
- "reportEngineHours": "Ore motor",
- "reportDuration": "Durata",
- "reportStartDate": "Data Start",
- "reportStartTime": "Oră Start",
- "reportStartAddress": "Adresa de start",
- "reportEndTime": "Oră Sfârșit",
- "reportEndAddress": "Adresa Sfârșit",
- "reportSpentFuel": "Combustibil consumat",
- "reportStartOdometer": "Kilometraj Start",
- "reportEndOdometer": "Kilomteraj Sfârșit",
- "statisticsTitle": "Statistici",
- "statisticsCaptureTime": "Timpul ",
- "statisticsActiveUsers": "Utilizatori Activi",
- "statisticsActiveDevices": "Dispozitive Active",
- "statisticsRequests": "Solicitări",
- "statisticsMessagesReceived": "Mesaje Primite",
- "statisticsMessagesStored": "Mesaje Salvate",
- "statisticsGeocoder": "Solicitări de Geocodare",
- "statisticsGeolocation": "Solicitări de Geolocare",
- "categoryArrow": "Sageata",
- "categoryDefault": "Implicit",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicicleta",
- "categoryBoat": "Barca",
- "categoryBus": "Autobuz",
- "categoryCar": "Masina",
- "categoryCamper": "Rulotă",
- "categoryCrane": "Macara",
- "categoryHelicopter": "Elicopter",
- "categoryMotorcycle": "Motocicleta",
- "categoryOffroad": "Teren Accidentat",
- "categoryPerson": "Persoana",
- "categoryPickup": "Papuc",
- "categoryPlane": "Avion",
- "categoryShip": "Nava",
- "categoryTractor": "Tractor",
- "categoryTrain": "Tren",
- "categoryTram": "Tramvai",
- "categoryTrolleybus": "Trolebuz",
- "categoryTruck": "Camion",
- "categoryVan": "Duba",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Perioada"
-} \ No newline at end of file
diff --git a/web/l10n/ru.json b/web/l10n/ru.json
deleted file mode 100644
index 4d70757d..00000000
--- a/web/l10n/ru.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Загрузка...",
- "sharedHide": "Скрыть",
- "sharedSave": "Сохранить",
- "sharedUpload": "Upload",
- "sharedSet": "Установить",
- "sharedCancel": "Отмена",
- "sharedCopy": "Copy",
- "sharedAdd": "Добавить",
- "sharedEdit": "Редактировать",
- "sharedRemove": "Удалить",
- "sharedRemoveConfirm": "Удалить элемент?",
- "sharedNoData": "Нет данных",
- "sharedSubject": "Subject",
- "sharedYes": "Да",
- "sharedNo": "Нет",
- "sharedKm": "км",
- "sharedMi": "мили",
- "sharedNmi": "м.мили",
- "sharedMeters": "м",
- "sharedFeet": "фт",
- "sharedKn": "уз",
- "sharedKmh": "км/ч",
- "sharedMph": "миль/ч",
- "sharedHour": "Часы",
- "sharedMinute": "Минуты",
- "sharedSecond": "Секунды",
- "sharedDays": "дней",
- "sharedHours": "часов",
- "sharedMinutes": "минут",
- "sharedDecimalDegrees": "Десятичные градусы",
- "sharedDegreesDecimalMinutes": "Градусы Десятичные минуты",
- "sharedDegreesMinutesSeconds": "Градусы Минуты Секунды",
- "sharedName": "Имя",
- "sharedDescription": "Описание",
- "sharedSearch": "Поиск",
- "sharedIconScale": "Иконка масштаба",
- "sharedGeofence": "Геозона",
- "sharedGeofences": "Геозоны",
- "sharedCreateGeofence": "Создать геозону",
- "sharedNotifications": "Уведомления",
- "sharedNotification": "Уведомление",
- "sharedAttributes": "Атрибуты",
- "sharedAttribute": "Атрибут",
- "sharedDrivers": "Водители",
- "sharedDriver": "Водитель",
- "sharedArea": "Область",
- "sharedSound": "Звуковое уведомление",
- "sharedType": "Тип",
- "sharedDistance": "Расстояние",
- "sharedHourAbbreviation": "ч",
- "sharedMinuteAbbreviation": "м",
- "sharedSecondAbbreviation": "с",
- "sharedVoltAbbreviation": "В",
- "sharedLiterAbbreviation": "л",
- "sharedGallonAbbreviation": "галлон",
- "sharedLiter": "Литр",
- "sharedImpGallon": "Имп. галлон",
- "sharedUsGallon": "Галлон США",
- "sharedLiterPerHourAbbreviation": "л/ч",
- "sharedGetMapState": "Получить состояние карты",
- "sharedComputedAttribute": "Вычисляемый атрибут",
- "sharedComputedAttributes": "Вычисляемые атрибуты",
- "sharedCheckComputedAttribute": "Проверить вычисляемый атрибут",
- "sharedExpression": "Выражение",
- "sharedDevice": "Устройство",
- "sharedTest": "Тест",
- "sharedTestNotification": "Отправить тестовое уведомление",
- "sharedTestNotificators": "Тестовый канал",
- "sharedTestExpression": "Тестовое выражение",
- "sharedCalendar": "Календарь",
- "sharedCalendars": "Календари",
- "sharedFile": "Файл",
- "sharedSearchDevices": "Поиск устройств",
- "sharedSortBy": "Сортировать по",
- "sharedFilterMap": "Фильтр на карте",
- "sharedSelectFile": "Выбрать файл",
- "sharedPhone": "Телефон",
- "sharedRequired": "Обязательные",
- "sharedPreferences": "Настройки",
- "sharedPermissions": "Разрешения",
- "sharedConnections": "Соединения",
- "sharedExtra": "Экстра",
- "sharedPrimary": "Первичный",
- "sharedSecondary": "Вторичный",
- "sharedTypeString": "Строка",
- "sharedTypeNumber": "Число",
- "sharedTypeBoolean": "Логическое значение",
- "sharedTimezone": "Часовой пояс",
- "sharedInfoTitle": "Инфо",
- "sharedSavedCommand": "Сохраненная команда",
- "sharedSavedCommands": "Сохраненные команды",
- "sharedNew": "Новый...",
- "sharedShowAddress": "Показать адрес",
- "sharedShowDetails": "Подробнее",
- "sharedDisabled": "Отключен",
- "sharedMaintenance": "Обслуживание",
- "sharedDeviceAccumulators": "Аккумуляторы",
- "sharedAlarms": "Тревоги",
- "sharedLocation": "Расположение",
- "sharedImport": "Импортировать",
- "sharedColumns": "Колонка",
- "sharedDropzoneText": "Перетащите файл сюда или нажмите",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Простой",
- "calendarRecurrence": "Повторение",
- "calendarOnce": "Однократно",
- "calendarDaily": "Ежедневно",
- "calendarWeekly": "Еженедельно",
- "calendarMonthly": "Ежемесячно",
- "calendarDays": "Дни",
- "calendarSunday": "Воскресенье",
- "calendarMonday": "Понедельник",
- "calendarTuesday": "Вторник",
- "calendarWednesday": "Среда",
- "calendarThursday": "Четверг",
- "calendarFriday": "Пятница",
- "calendarSaturday": "Суббота",
- "attributeShowGeofences": "Показать геозоны",
- "attributeSpeedLimit": "Ограничение скорости",
- "attributeFuelDropThreshold": "Порог снижения расхода топлива",
- "attributeFuelIncreaseThreshold": "Порог увеличения расхода топлива",
- "attributePolylineDistance": "Расстояние от линии",
- "attributeReportIgnoreOdometer": "Отчет: Игнорировать одометер",
- "attributeWebReportColor": "Веб: Цвет отчета",
- "attributeDevicePassword": "Пароль устройства",
- "attributeDeviceImage": "Картинка устройства",
- "attributeDeviceInactivityStart": "Начало бездействия устройства",
- "attributeDeviceInactivityPeriod": "Период бездействия устройства",
- "attributeProcessingCopyAttributes": "Обработка: Копирование атрибутов",
- "attributeColor": "Цвет",
- "attributeWebLiveRouteLength": "Веб: Длина онлайн маршрута",
- "attributeWebSelectZoom": "Веб: Увеличение при выборе",
- "attributeWebMaxZoom": "Веб: Максимальное увеличение",
- "attributeTelegramChatId": "ID чата в Телеграмме",
- "attributePushoverUserKey": "Нажатие пользовательской клавиши",
- "attributePushoverDeviceNames": "Нажатие имени устройства",
- "attributeMailSmtpHost": "Почта: SMTP хост",
- "attributeMailSmtpPort": "Почта: SMTP порт",
- "attributeMailSmtpStarttlsEnable": "Почта: Включить SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "Почта: Необходим SMTP STARTTLS",
- "attributeMailSmtpSslEnable": "Почта: Включить SMTP SSL",
- "attributeMailSmtpSslTrust": "Почта: Доверие SMTP SSL",
- "attributeMailSmtpSslProtocols": "Почта: Протоколы SMTP SSL",
- "attributeMailSmtpFrom": "Почта: SMTP отправитель",
- "attributeMailSmtpAuth": "Почта: Включить SMTP аутентификацию",
- "attributeMailSmtpUsername": "Почта: SMTP имя пользователя",
- "attributeMailSmtpPassword": "Почта: SMTP пароль",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Выключить атрибуты",
- "attributeUiDisableGroups": "UI: Выключить группы",
- "attributeUiDisableEvents": "UI: Отключить события",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Отключить водителей",
- "attributeUiDisableComputedAttributes": "UI: Отключить вычисляемые атрибуты",
- "attributeUiDisableCalendars": "UI: Отключить календари",
- "attributeUiDisableMaintenance": "UI: Отключить обслуживание",
- "attributeUiHidePositionAttributes": "UI: Скрывать атрибуты",
- "attributeUiDisableLoginLanguage": "UI: Отключить выбор языка при входе",
- "attributeNotificationTokens": "Токены Уведомлений",
- "attributePopupInfo": "Всплывающая информация",
- "errorTitle": "Ошибка",
- "errorGeneral": "Неправильные параметры или нарушение ограничений",
- "errorConnection": "Ошибка соединения",
- "errorSocket": "Ошибка web socket соединения",
- "errorZero": "Не может быть нулевым",
- "userEmail": "Email",
- "userPassword": "Пароль",
- "userAdmin": "Администратор",
- "userRemember": "Запомнить",
- "userExpirationTime": "Срок действия",
- "userDeviceLimit": "Ограничение устройств",
- "userUserLimit": "Лимит пользователей",
- "userDeviceReadonly": "Только просмотр устройств",
- "userLimitCommands": "Ограничение команд",
- "userDisableReports": "Выключить отчеты",
- "userFixedEmail": "Не изменять Email",
- "userToken": "Ключ",
- "userDeleteAccount": "Удалить аккаунт",
- "userTemporary": "Temporary",
- "loginTitle": "Вход",
- "loginLanguage": "Язык",
- "loginReset": "Сброс пароля",
- "loginRegister": "Регистрация",
- "loginLogin": "Вход",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Неправильный email адрес или пароль",
- "loginCreated": "Новый пользователь зарегистрирован",
- "loginResetSuccess": "Проверьте свою электронную почту",
- "loginUpdateSuccess": "Новый пароль установлен",
- "loginLogout": "Выход",
- "loginLogo": "Логотип",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Устройства и состояния",
- "deviceSelected": "Выбранное устройство",
- "deviceTitle": "Устройства",
- "devicePrimaryInfo": "Название устройства",
- "deviceSecondaryInfo": "Детали устройства",
- "deviceIdentifier": "Идентификатор",
- "deviceModel": "Модель",
- "deviceContact": "Контакт",
- "deviceCategory": "Категория",
- "deviceLastUpdate": "Последнее обновление",
- "deviceCommand": "Команда",
- "deviceFollow": "Следовать",
- "deviceTotalDistance": "Общий пробег",
- "deviceStatus": "Статус",
- "deviceStatusOnline": "Онлайн",
- "deviceStatusOffline": "Оффлайн",
- "deviceStatusUnknown": "Неизвестный",
- "deviceRegisterFirst": "Добавьте свое первое устройство",
- "deviceIdentifierHelp": "IMEI, серийный номер или другой идентификатор. Он должен соответствовать идентификатору, который устройство сообщает серверу.",
- "deviceShare": "Share Device",
- "groupDialog": "Группа",
- "groupParent": "Группа",
- "groupNoGroup": "Без группы",
- "settingsTitle": "Настройки",
- "settingsUser": "Аккаунт",
- "settingsGroups": "Группы",
- "settingsServer": "Сервер",
- "settingsUsers": "Пользователи",
- "settingsDistanceUnit": "Единица расстояния",
- "settingsAltitudeUnit": "Единица измерения высоты",
- "settingsSpeedUnit": "Единица скорости",
- "settingsVolumeUnit": "Единица объема",
- "settingsTwelveHourFormat": "12-часовой формат",
- "settingsCoordinateFormat": "Формат координат",
- "settingsServerVersion": "Версия сервера",
- "settingsAppVersion": "Версия приложения",
- "settingsConnection": "Соединения",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Отчеты",
- "reportScheduled": "Запланированные отчеты",
- "reportDevice": "Устройство",
- "reportGroup": "Группа",
- "reportFrom": "От",
- "reportTo": "До",
- "reportShow": "Показать",
- "reportClear": "Очистить",
- "linkGoogleMaps": "Карты Google",
- "linkAppleMaps": "Карты Apple",
- "linkStreetView": "Просмотр улиц",
- "positionFixTime": "Время определения",
- "positionDeviceTime": "Время на устройстве",
- "positionServerTime": "Время на сервере",
- "positionValid": "Корректность",
- "positionAccuracy": "Точность",
- "positionLatitude": "Широта",
- "positionLongitude": "Долгота",
- "positionAltitude": "Высота",
- "positionSpeed": "Скорость",
- "positionCourse": "Направление",
- "positionAddress": "Адрес",
- "positionProtocol": "Протокол",
- "positionDistance": "Расстояние",
- "positionRpm": "Обороты",
- "positionFuel": "Топливо",
- "positionPower": "Питание",
- "positionBattery": "Батарея",
- "positionRaw": "Сырые данные",
- "positionIndex": "Индекс",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Спутники",
- "positionSatVisible": "Видимые спутники",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Роуминг",
- "positionEvent": "Событие",
- "positionAlarm": "Тревога",
- "positionStatus": "Статус",
- "positionOdometer": "Одометр",
- "positionServiceOdometer": "Одометр обслуживания",
- "positionTripOdometer": "Одометр поездки",
- "positionHours": "Часы",
- "positionSteps": "Шаги",
- "positionInput": "Входы",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Выходы",
- "positionBatteryLevel": "Уровень заряда батареи",
- "positionFuelConsumption": "Расход топлива",
- "positionRfid": "RFID",
- "positionVersionFw": "Версия прошивки",
- "positionVersionHw": "Версия устройства",
- "positionIgnition": "Зажигание",
- "positionFlags": "Флаги",
- "positionCharge": "Заряд",
- "positionIp": "IP",
- "positionArchive": "Архив",
- "positionVin": "VIN",
- "positionApproximate": "Приблизительно",
- "positionThrottle": "Дроссель",
- "positionMotion": "Движение",
- "positionArmed": "На охране",
- "positionAcceleration": "Ускорение",
- "positionTemp": "Температура",
- "positionDeviceTemp": "Температура устройства",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Оператор",
- "positionCommand": "Команда",
- "positionBlocked": "Блокировка",
- "positionDtcs": "Ошибки",
- "positionObdSpeed": "OBD скорость",
- "positionObdOdometer": "OBD одометр",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "ID водителя",
- "positionCard": "Card",
- "positionImage": "Изображение",
- "positionVideo": "Видео",
- "positionAudio": "Аудио",
- "serverTitle": "Настройки сервера",
- "serverZoom": "Приближение",
- "serverRegistration": "Регистрация",
- "serverReadonly": "Только просмотр",
- "serverForceSettings": "Форсировать настройки",
- "serverAnnouncement": "Объявление",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Карта",
- "mapActive": "Активные карты",
- "mapOverlay": "Слой карты",
- "mapOverlayCustom": "Собственный слой",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API ключ",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather давление",
- "mapOpenWeatherWind": "OpenWeather ветер",
- "mapOpenWeatherTemperature": "OpenWeather температура",
- "mapLayer": "Слой карты",
- "mapCustom": "Пользовательский (XYZ)",
- "mapCustomArcgis": "Пользовательский (ArcGIS)",
- "mapCustomLabel": "Пользовательская карта",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google дороги",
- "mapGoogleHybrid": "Google гибрид",
- "mapGoogleSatellite": "Google спутник",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Ключ Bing Maps",
- "mapBingRoad": "Bing Maps Дороги",
- "mapBingAerial": "Bing Maps Спутник",
- "mapBingHybrid": "Bing Maps Гибрид",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Яндекс Карты",
- "mapYandexSat": "Яндекс Спутник",
- "mapWikimedia": "Викимедиа",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Улицы",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Топография",
- "mapMapboxSatellite": "Mapbox Спутник",
- "mapMapboxKey": "Mapbox токен доступа",
- "mapMapTilerBasic": "MapTiler простое",
- "mapMapTilerHybrid": "MapTiler гибрид",
- "mapMapTilerKey": "MapTiler ключ API",
- "mapLocationIqStreets": "LocationIQ улицы",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ токен доступа",
- "mapTomTomBasic": "TomTom простое",
- "mapTomTomFlow": "TomTom движение потока",
- "mapTomTomIncidents": "TomTom аварии в потоке",
- "mapTomTomKey": "TomTom ключ API",
- "mapHereBasic": "Простое",
- "mapHereHybrid": "Гибрид",
- "mapHereSatellite": "Спутники",
- "mapHereFlow": "Движение потока",
- "mapHereKey": "Ключ API",
- "mapShapePolygon": "Многоугольник",
- "mapShapeCircle": "Круг",
- "mapShapePolyline": "Линия",
- "mapLiveRoutes": " Живые маршруты",
- "mapDirection": "Показать направление",
- "mapCurrentLocation": "Текущее Местоположение",
- "mapPoiLayer": "Слой POI",
- "mapClustering": "Кластеризация маркеров",
- "mapOnSelect": "Показать карту при выборе",
- "mapDefault": "Карта по-умолчанию",
- "stateTitle": "Состояние",
- "stateName": "Параметр",
- "stateValue": "Значение",
- "commandTitle": "Команда",
- "commandSend": "Отправить",
- "commandSent": "Команда отправлена",
- "commandQueued": "Команда добавлена в очередь",
- "commandUnit": "Единицы",
- "commandCustom": "Пользовательская команда",
- "commandDeviceIdentification": "Идентификация устройства",
- "commandPositionSingle": "Разовое отслеживание",
- "commandPositionPeriodic": "Начать отслеживание",
- "commandPositionStop": "Отменить отслеживание",
- "commandEngineStop": "Заблокировать двигатель",
- "commandEngineResume": "Разблокировать двигатель",
- "commandAlarmArm": "Активировать сигнализацию",
- "commandAlarmDisarm": "Деактивировать сигнализацию",
- "commandAlarmDismiss": "Отключить сигнализацию",
- "commandSetTimezone": "Настроить часовой пояс",
- "commandRequestPhoto": "Запросить фото",
- "commandPowerOff": "Выключить устройство",
- "commandRebootDevice": "Перезагрузить устройство",
- "commandFactoryReset": "Сброс к заводским настройкам",
- "commandSendSms": "Отправить СМС",
- "commandSendUssd": "Отправить USSD",
- "commandSosNumber": "Настроить экстренный номер",
- "commandSilenceTime": "Настроить время тишины",
- "commandSetPhonebook": "Настроить телефонную книгу",
- "commandVoiceMessage": "Голосовое сообщение",
- "commandOutputControl": "Контроль выхода",
- "commandVoiceMonitoring": "Голосовой контроль",
- "commandSetAgps": "Настроить AGPS",
- "commandSetIndicator": "Настроить индикатор",
- "commandConfiguration": "Конфигурация",
- "commandGetVersion": "Запросить версию",
- "commandFirmwareUpdate": "Обновить прошивку",
- "commandSetConnection": "Настроить соединение",
- "commandSetOdometer": "Настроить одометр",
- "commandGetModemStatus": "Запросить состояние модема",
- "commandGetDeviceStatus": "Запросить состояние устройства",
- "commandSetSpeedLimit": "Установить ограничение скорости",
- "commandModePowerSaving": "Режим экономии энергии",
- "commandModeDeepSleep": "Режим глубокого сна",
- "commandAlarmGeofence": "Установить сигнал геозоны",
- "commandAlarmBattery": "Установить сигнал батареи",
- "commandAlarmSos": "Установить сигнал SOS",
- "commandAlarmRemove": "Установить сигнал удаления",
- "commandAlarmClock": "Установить сигнал часов",
- "commandAlarmSpeed": "Установить сигнал скорости",
- "commandAlarmFall": "Установить сигнал падения",
- "commandAlarmVibration": "Установить сигнал вибрации",
- "commandFrequency": "Частота",
- "commandTimezone": "Смещение временной зоны",
- "commandMessage": "Сообщение",
- "commandRadius": "Радиус",
- "commandEnable": "Включить",
- "commandData": "Данные",
- "commandIndex": "Индекс",
- "commandPhone": "Номер телефона",
- "commandServer": "Сервер",
- "commandPort": "Порт",
- "eventAll": "Все события",
- "eventDeviceOnline": "Статус онлайн",
- "eventDeviceUnknown": "Статус неизвестен",
- "eventDeviceOffline": "Статус оффлайн",
- "eventDeviceInactive": "Устройство неактивно",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Устройство двигается",
- "eventDeviceStopped": "Устройство остановилось",
- "eventDeviceOverspeed": "Превышено ограничение скорости",
- "eventDeviceFuelDrop": "Слив топлива",
- "eventDeviceFuelIncrease": "Увеличение расхода топлива",
- "eventCommandResult": "Результат команды",
- "eventGeofenceEnter": "Вход в геозону",
- "eventGeofenceExit": "Выход из геозоны",
- "eventAlarm": "Тревога",
- "eventIgnitionOn": "Зажигание включено",
- "eventIgnitionOff": "Зажигание выключено",
- "eventMaintenance": "Требуется обслуживание",
- "eventTextMessage": "Текстовое сообщение получено",
- "eventDriverChanged": "Водитель изменен",
- "eventMedia": "Медиа",
- "eventsScrollToLast": "Прокрутка до конца",
- "eventsSoundEvents": "Звук событий",
- "eventsSoundAlarms": "Звук тревоги",
- "alarmGeneral": "Общее",
- "alarmSos": "SOS",
- "alarmVibration": "Вибрация",
- "alarmMovement": "Движение",
- "alarmLowspeed": "Низкая скорость",
- "alarmOverspeed": "Превышение скорости",
- "alarmFallDown": "Падение",
- "alarmLowPower": "Низкий уровень питания",
- "alarmLowBattery": "Батарея разряжена",
- "alarmFault": "Неисправность",
- "alarmPowerOff": "Выключение",
- "alarmPowerOn": "Включение",
- "alarmDoor": "Дверь",
- "alarmLock": "Закрыто",
- "alarmUnlock": "Открыто",
- "alarmGeofence": "Геозона",
- "alarmGeofenceEnter": "Вход в геозону",
- "alarmGeofenceExit": "Выход из геозоны",
- "alarmGpsAntennaCut": "Отключение GPS-антенны",
- "alarmAccident": "Авария",
- "alarmTow": "Буксировка",
- "alarmIdle": "Простой",
- "alarmHighRpm": "Высокие обороты",
- "alarmHardAcceleration": "Резкое ускорение",
- "alarmHardBraking": "Резкое торможение",
- "alarmHardCornering": "Резкий поворот",
- "alarmLaneChange": "Смена полосы",
- "alarmFatigueDriving": "Усталость водителя",
- "alarmPowerCut": "Отключение питания",
- "alarmPowerRestored": "Питание восстановлено",
- "alarmJamming": "Заглушено",
- "alarmTemperature": "Температура",
- "alarmParking": "Парковка",
- "alarmBonnet": "Капот",
- "alarmFootBrake": "Ножной тормоз",
- "alarmFuelLeak": "Утечка топлива",
- "alarmTampering": "Вмешательство",
- "alarmRemoving": "Извлечение",
- "notificationType": "Тип уведомления",
- "notificationAlways": "Все устройства",
- "notificationNotificators": "Каналы",
- "notificatorCommand": "Команда",
- "notificatorWeb": "Веб",
- "notificatorMail": "Почта",
- "notificatorSms": "СМС",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Телеграмм",
- "notificatorPushover": "Нажатие",
- "reportReplay": "Воспроизвести",
- "reportCombined": "Совместный",
- "reportRoute": "Маршрут",
- "reportEvents": "События",
- "reportTrips": "Поездки",
- "reportStops": "Остановки",
- "reportSummary": "Сводка",
- "reportDaily": "Ежедневная сводка",
- "reportChart": "Диаграмма",
- "reportConfigure": "Конфигурировать",
- "reportEventTypes": "Тип события",
- "reportChartType": "Тип диаграммы",
- "reportShowMarkers": "Показать маркеры",
- "reportExport": "Экспорт",
- "reportEmail": "Отчет по почте",
- "reportSchedule": "Запланированный",
- "reportPeriod": "Период",
- "reportCustom": "Пользовательский",
- "reportToday": "Сегодня",
- "reportYesterday": "Вчера",
- "reportThisWeek": "Текущая неделя",
- "reportPreviousWeek": "Предыдущая неделя",
- "reportThisMonth": "Текущий месяц",
- "reportPreviousMonth": "Предыдущий месяц",
- "reportDeviceName": "Имя устройства",
- "reportAverageSpeed": "Средняя скорость",
- "reportMaximumSpeed": "Максимальная скорость",
- "reportEngineHours": "Моточасы",
- "reportDuration": "Длительность",
- "reportStartDate": "Дата начала",
- "reportStartTime": "Начальное время",
- "reportStartAddress": "Начальный адрес",
- "reportEndTime": "Конечное время",
- "reportEndAddress": "Конечный адрес",
- "reportSpentFuel": "Использовано топлива",
- "reportStartOdometer": "Одометр, начало",
- "reportEndOdometer": "Одометр, окончание",
- "statisticsTitle": "Статистика",
- "statisticsCaptureTime": "Время сбора",
- "statisticsActiveUsers": "Активные пользователи",
- "statisticsActiveDevices": "Активные устройства",
- "statisticsRequests": "Запросы",
- "statisticsMessagesReceived": "Сообщений получено",
- "statisticsMessagesStored": "Сообщений сохранено",
- "statisticsGeocoder": "Запросы геокодера",
- "statisticsGeolocation": "Запросы геолокации",
- "categoryArrow": "Стрелка",
- "categoryDefault": "По умолчанию",
- "categoryAnimal": "Животное",
- "categoryBicycle": "Велосипед",
- "categoryBoat": "Лодка",
- "categoryBus": "Автобус",
- "categoryCar": "Автомобиль",
- "categoryCamper": "Camper",
- "categoryCrane": "Кран",
- "categoryHelicopter": "Вертолет",
- "categoryMotorcycle": "Мотоцикл",
- "categoryOffroad": "Внедорожник",
- "categoryPerson": "Человек",
- "categoryPickup": "Пикап",
- "categoryPlane": "Самолёт",
- "categoryShip": "Корабль",
- "categoryTractor": "Трактор",
- "categoryTrain": "Поезд",
- "categoryTram": "Трамвай",
- "categoryTrolleybus": "Троллейбус",
- "categoryTruck": "Грузовой автомобиль",
- "categoryVan": "Фургон",
- "categoryScooter": "Скутер",
- "maintenanceStart": "Начало",
- "maintenancePeriod": "Период"
-} \ No newline at end of file
diff --git a/web/l10n/si.json b/web/l10n/si.json
deleted file mode 100644
index 9e8ad6af..00000000
--- a/web/l10n/si.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "පූරණය ස්ථානයේ...",
- "sharedHide": "සඟවන්න",
- "sharedSave": "සුරකින්න",
- "sharedUpload": "Upload",
- "sharedSet": "සකසන්න",
- "sharedCancel": "සිදු කරන්න",
- "sharedCopy": "Copy",
- "sharedAdd": "එක් කරන්න",
- "sharedEdit": "සංස්කරණය",
- "sharedRemove": "ඉවත් කරන්න",
- "sharedRemoveConfirm": "අයිතමය ඉවත් කරන්නද?",
- "sharedNoData": "දත්ත නැත",
- "sharedSubject": "Subject",
- "sharedYes": "ඔව්",
- "sharedNo": "නැත",
- "sharedKm": "කි.මී.",
- "sharedMi": "සැතපුම්",
- "sharedNmi": "nmi",
- "sharedMeters": "එම්",
- "sharedFeet": "අඩි",
- "sharedKn": "kn",
- "sharedKmh": "කි.මී/පැ",
- "sharedMph": "mph",
- "sharedHour": "පැය",
- "sharedMinute": "විනාඩි",
- "sharedSecond": "තත්පර",
- "sharedDays": "දවස්",
- "sharedHours": "පැය",
- "sharedMinutes": "විනාඩි",
- "sharedDecimalDegrees": "දශම සඳහා",
- "sharedDegreesDecimalMinutes": "අංශක දශම මිනිත්තු",
- "sharedDegreesMinutesSeconds": "දශම පිළිබඳව තප්පර",
- "sharedName": "නම",
- "sharedDescription": "සවිස්තරය",
- "sharedSearch": "සොයන්න",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "භූ වැටිය",
- "sharedGeofences": "භූ වැටි",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "දැනුම්දීම්",
- "sharedNotification": "දැනුම්දීම",
- "sharedAttributes": "උපලක්ෂණ",
- "sharedAttribute": "උපලක්ෂණය",
- "sharedDrivers": "රියදුරන්",
- "sharedDriver": "රියදුරු",
- "sharedArea": "ප්‍රදේශය",
- "sharedSound": "දැනුම්දීමේ ශබ්දය",
- "sharedType": "වර්ගය",
- "sharedDistance": "දුර",
- "sharedHourAbbreviation": "පැ.",
- "sharedMinuteAbbreviation": "මි.",
- "sharedSecondAbbreviation": "තත්.",
- "sharedVoltAbbreviation": "වී",
- "sharedLiterAbbreviation": "එල්",
- "sharedGallonAbbreviation": "ගැලුම්",
- "sharedLiter": "ලීටර",
- "sharedImpGallon": "Imp. ගැලන්",
- "sharedUsGallon": "එක්සත් ජනපද ගැලෝන්",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "සිතියම් තත්ත්වය",
- "sharedComputedAttribute": "කළ ගුණය",
- "sharedComputedAttributes": "සිදු කළ ගුණාංග",
- "sharedCheckComputedAttribute": "කළ ගුණය පරීක්ෂා කරන්න",
- "sharedExpression": "ප්රකාශනය",
- "sharedDevice": "වැනි",
- "sharedTest": "පරීක්ෂණය",
- "sharedTestNotification": "අත්හදාබැලීමේ දැනුම්දීම යවන්න",
- "sharedTestNotificators": "පරීක්ෂණ නාලිකා",
- "sharedTestExpression": "පරීක්ෂණ ප්රකාශනය",
- "sharedCalendar": "දින දසුන",
- "sharedCalendars": "දින දසුන්",
- "sharedFile": "ගොනුව",
- "sharedSearchDevices": "සෙවුම් උපාංග",
- "sharedSortBy": "අනුව තෝරන්න",
- "sharedFilterMap": "සිතියම මත පෙරහන් කරන්න",
- "sharedSelectFile": "ගොනුව තෝරන්න",
- "sharedPhone": "දුරකථනය",
- "sharedRequired": "අවශයි",
- "sharedPreferences": "මනාපයන්",
- "sharedPermissions": "අවසර",
- "sharedConnections": "සම්බන්ධතා",
- "sharedExtra": "අමතර",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "නූල්",
- "sharedTypeNumber": "අංකය",
- "sharedTypeBoolean": "බූලියන්",
- "sharedTimezone": "වේලා කලාපය",
- "sharedInfoTitle": "තොරතුරු",
- "sharedSavedCommand": "විධානය සුරකින ලදී",
- "sharedSavedCommands": "විධාන සුරකින",
- "sharedNew": "අලුත්…",
- "sharedShowAddress": "ලිපිනය පෙන්වන්න",
- "sharedShowDetails": "වැඩිපුර විස්තර",
- "sharedDisabled": "අබල කර ඇත",
- "sharedMaintenance": "නඩත්තුව",
- "sharedDeviceAccumulators": "සමුච්චය කරන්නන්",
- "sharedAlarms": "අනතුරු ඇඟවීම්",
- "sharedLocation": "ස්ථානය",
- "sharedImport": "ආනයන",
- "sharedColumns": "තීරු",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "වේග සීමාව",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "බහු රේඛා දුර",
- "attributeReportIgnoreOdometer": "වාර්තාව: සැතපුම්මානය නොසලකන්න",
- "attributeWebReportColor": "වියමන: පාට වාර්තා කරන්න",
- "attributeDevicePassword": "කැමති මුරපදය",
- "attributeDeviceImage": "උපාංග රූපය",
- "attributeDeviceInactivityStart": "උපාංගය අක්රිය වීම ආරම්භය",
- "attributeDeviceInactivityPeriod": "උපාංග අක්‍රිය කාලය",
- "attributeProcessingCopyAttributes": "සැකසීම: උපලක්ෂණ පිටපත් කරන්න",
- "attributeColor": "වර්ණ",
- "attributeWebLiveRouteLength": "වෙබ්: සජීවී මාර්ග දිග",
- "attributeWebSelectZoom": "වෙබ්: විශාලනය කරන්න තෝරන්න",
- "attributeWebMaxZoom": "වියමන: උපරිම විශාලනය",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "තැපෑල: ස.තැ.මා.කේ. සත්කාරකය",
- "attributeMailSmtpPort": "තැපෑල: ස.තැ.මා.කේ. කෙවෙනිය",
- "attributeMailSmtpStarttlsEnable": "තැපෑල: SMTP STARTTLS සබල කරන්න",
- "attributeMailSmtpStarttlsRequired": "තැපෑල: SMTP STARTTLS අවශ්‍යයි",
- "attributeMailSmtpSslEnable": "තැපෑල: SMTP SSL සක්රිය කරන්න",
- "attributeMailSmtpSslTrust": "තැපෑල: SMTP SSL භාරය",
- "attributeMailSmtpSslProtocols": "තැපෑල: SMTP SSL ප්‍රොටෝකෝල",
- "attributeMailSmtpFrom": "තැපෑල: SMTP වෙතින්",
- "attributeMailSmtpAuth": "තැපෑල: SMTP Auth සක්රිය කරන්න",
- "attributeMailSmtpUsername": "තැපෑල: ස.තැ.මා.කේ. පර්යේෂණනාමය",
- "attributeMailSmtpPassword": "තැපෑල: ස.තැ.මා.කේ. මුරපදය",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: කණ්ඩායම් අබල කරන්න",
- "attributeUiDisableEvents": "අ.මු.: සිදුවීම් අබල කරන්න",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: ධාවක අක්‍රීය කරන්න",
- "attributeUiDisableComputedAttributes": "UI: ගණනය කළ ගුණාංග අක්‍රීය කරන්න",
- "attributeUiDisableCalendars": "අ.මු.: දින දසුන අබල කරන්න",
- "attributeUiDisableMaintenance": "UI: නඩත්තු කිරීම අබල කරන්න",
- "attributeUiHidePositionAttributes": "UI: ස්ථාන ගුණාංග සඟවන්න",
- "attributeUiDisableLoginLanguage": "UI: පිවිසුම් භාෂාව අක්‍රීය කරන්න",
- "attributeNotificationTokens": "දැනුම්දීම් ටෝකන",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "දෝෂයකි",
- "errorGeneral": "වලංගු නොවන පරාමිති හෝ සීමාවන් උල්ලංඝනය කිරීම",
- "errorConnection": "සම්බන්ධතාවේ දෝෂයකි",
- "errorSocket": "වෙබ් සොකට් සම්බන්ධතා දෝෂයකි",
- "errorZero": "ශුන්‍ය විය හැකියි",
- "userEmail": "වි-තැපෑල",
- "userPassword": "මුරපදය",
- "userAdmin": "පරිපාලක",
- "userRemember": "මතක තබාගන්න",
- "userExpirationTime": "කල් ඉකුත්වීම",
- "userDeviceLimit": "උපාංග සීමාව",
- "userUserLimit": "පරිශීලක සීමාව",
- "userDeviceReadonly": "ඇතුළත් කියවීම පමණි",
- "userLimitCommands": "සීමිත විධානයන්",
- "userDisableReports": "වාර්තා අක්රිය කරන්න",
- "userFixedEmail": "No Email Change",
- "userToken": "ටෝකනය",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "ඇතුල් වන්න",
- "loginLanguage": "භාෂාව",
- "loginReset": "මුරපදය නැවත සකසන්න",
- "loginRegister": "ලියාපදිංචි වන්න",
- "loginLogin": "ඇතුල් වන්න",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "වි-තැපැල් ලිපිනය හෝ මුරපදය වැරදිය!",
- "loginCreated": "නව පරිශීලකයෙකු ලියාපදිංචි වී ඇත",
- "loginResetSuccess": "ඔබගේ විද්යුත් තැපෑල පරීක්ෂා කරන්න",
- "loginUpdateSuccess": "නව මුරපදය සකසා ඇත",
- "loginLogout": "නික්මෙන්න",
- "loginLogo": "ලාංඡනය",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "උපාංග සහ තත්ත්වය",
- "deviceSelected": "Selected Device",
- "deviceTitle": "උපාංග",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "හඳුන්වනවා",
- "deviceModel": "ආකෘතිය",
- "deviceContact": "අමතන්න",
- "deviceCategory": "ප්‍රවර්ගය",
- "deviceLastUpdate": "අවසන් යාවත්කාලය",
- "deviceCommand": "විධානය",
- "deviceFollow": "ලුහුබඳින්න",
- "deviceTotalDistance": "මුළු දුර",
- "deviceStatus": "තත්ත්වය",
- "deviceStatusOnline": "ඔන්ලයින්",
- "deviceStatusOffline": "නොබැඳි",
- "deviceStatusUnknown": "නොදන්නා",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "සමූහය",
- "groupParent": "සමූහය",
- "groupNoGroup": "සමූහ නැත",
- "settingsTitle": "සැකසුම්",
- "settingsUser": "ගැන",
- "settingsGroups": "සමූහ",
- "settingsServer": "සේවාදායකයා",
- "settingsUsers": "පරිශීලකයින්",
- "settingsDistanceUnit": "දුරස්ථ ඒකකය",
- "settingsAltitudeUnit": "උන්නතාංශ ඒකකය",
- "settingsSpeedUnit": "වේග නියමිතක්",
- "settingsVolumeUnit": "පරිමාව ඒකකය",
- "settingsTwelveHourFormat": "පැය 12 ආකෘතිය",
- "settingsCoordinateFormat": "ඛණ්ඩාංක ආකෘතිය",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "වාර්තාව",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "වැනි",
- "reportGroup": "සමුහය",
- "reportFrom": "සිට",
- "reportTo": "දක්වා",
- "reportShow": "පෙන්වන්න",
- "reportClear": "හිස් කරන්න",
- "linkGoogleMaps": "ගුගල් සිතියම්",
- "linkAppleMaps": "ඇපල් සිතියම්",
- "linkStreetView": "වීථි දසුන",
- "positionFixTime": "කාලය නිවැරදි කරන්න",
- "positionDeviceTime": "උපාංග කාලය",
- "positionServerTime": "සේවාදායක කාලය",
- "positionValid": "වලංගු",
- "positionAccuracy": "නිරවද්යතාව",
- "positionLatitude": "අක්ෂාංශ",
- "positionLongitude": "දේශාංශ",
- "positionAltitude": "උන්නතාංශය",
- "positionSpeed": "වේගවත්",
- "positionCourse": "දිගංශය",
- "positionAddress": "ලිපිනය",
- "positionProtocol": "කෙටුම්පත",
- "positionDistance": "දුර",
- "positionRpm": "ආර්පීඑම්",
- "positionFuel": "ඉන්ධන",
- "positionPower": "බලය",
- "positionBattery": "වියළිකෝෂය",
- "positionRaw": "අමු",
- "positionIndex": "දර්ශකය",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "චන්ද්‍රිකා",
- "positionSatVisible": "දෘෂ්‍ය චන්ද්‍රිකා",
- "positionRssi": "ආර්එස්එස්අයි",
- "positionGps": "ගි.පි.එස්",
- "positionRoaming": "රෝමිං",
- "positionEvent": "සිදුවීම",
- "positionAlarm": "අනතුරු ඇඟවීම",
- "positionStatus": "තත්ත්වය",
- "positionOdometer": "සැතපුම්මානය",
- "positionServiceOdometer": "සේවා සැතපුම්මානය",
- "positionTripOdometer": "චාරිකා සැතපුම්මානය",
- "positionHours": "පැය",
- "positionSteps": "පියවර",
- "positionInput": "ආදානය",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "ප්‍රතිදානය",
- "positionBatteryLevel": "විදුලිකෝෂයේ මට්ටමට",
- "positionFuelConsumption": "ඉන්ධන සඳහා",
- "positionRfid": "RFID",
- "positionVersionFw": "ස්ථිරාංගයේ වෙනස්",
- "positionVersionHw": "දෘඩංගයේ වෙනස්",
- "positionIgnition": "තාපනය",
- "positionFlags": "කොඩි",
- "positionCharge": "ගාස්තුව",
- "positionIp": "අ.ජා.කේ.",
- "positionArchive": "සංරක්ෂිතය",
- "positionVin": "VIN",
- "positionApproximate": "දළ වශයෙන්",
- "positionThrottle": "Throttle",
- "positionMotion": "දක්වා",
- "positionArmed": "ආයුධ",
- "positionAcceleration": "ත්වරණය",
- "positionTemp": "උෂ්ණත්වය",
- "positionDeviceTemp": "උෂ්ණත්වයේ උෂ්ණත්වය",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "ක්‍රියාකරු",
- "positionCommand": "විධානය",
- "positionBlocked": "අවහිර කර ඇත",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD වේගය",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "රියදුරු අනන්‍ය හැඳුනුම්පත",
- "positionCard": "Card",
- "positionImage": "රූප",
- "positionVideo": "Video",
- "positionAudio": "ශ්රව්ය උපකරණ",
- "serverTitle": "සේවාදායකයේ සැකසුම්",
- "serverZoom": "විශාලනය",
- "serverRegistration": "ලියාපදිංචි කිරීම",
- "serverReadonly": "කියවීමට පමණි",
- "serverForceSettings": "බල සැකසීම්",
- "serverAnnouncement": "නිවේදනය",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "දක්වා",
- "mapActive": "ක්රියාකාරී සිතියම්",
- "mapOverlay": "සිතියම උඩ තට්ටුව",
- "mapOverlayCustom": "අභිරුචි ආවරණයක්",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API යතුර",
- "mapOpenWeatherClouds": "විවෘත කාලගුණ වලාකුළු",
- "mapOpenWeatherPrecipitation": "විවෘත කාලගුණ වර්ෂාපතනය",
- "mapOpenWeatherPressure": "විවෘත කාලගුණ පීඩනය",
- "mapOpenWeatherWind": "විවෘත කාලගුණ සුළඟ",
- "mapOpenWeatherTemperature": "විවෘත කාලගුණ උෂ්ණත්වය",
- "mapLayer": "සිතියම් ස්තරය",
- "mapCustom": "අභිරුචි (XYZ)",
- "mapCustomArcgis": "අභිරුචි (ArcGIS)",
- "mapCustomLabel": "අභිරුචි සිතියම",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "බිං මැප්ස් යතුර",
- "mapBingRoad": "බිං මැප්ස් පාර",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "යාන්ඩෙක්ස් සිතියම",
- "mapYandexSat": "යාන්ඩෙක්ස් චන්ද්‍රිකාව",
- "mapWikimedia": "විකිමීඩියා",
- "mapOrdnanceSurvey": "යුධෝපකරණ සමීක්ෂණය",
- "mapMapboxStreets": "සිතියම් පෙට්ටි වීදි",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox එළිමහන්",
- "mapMapboxSatellite": "Mapbox චන්ද්‍රිකාව",
- "mapMapboxKey": "Mapbox ප්රවේශ ටෝකනය",
- "mapMapTilerBasic": "MapTiler මූලික",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API යතුර",
- "mapLocationIqStreets": "LocationIQ වීදි",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ ප්‍රවේශ ටෝකනය",
- "mapTomTomBasic": "TomTom මූලික",
- "mapTomTomFlow": "TomTom රථවාහන ප්රවාහය",
- "mapTomTomIncidents": "TomTom රථවාහන සිදුවීම්",
- "mapTomTomKey": "TomTom API යතුර",
- "mapHereBasic": "මෙන්න Basic",
- "mapHereHybrid": "මෙන්න Hybrid",
- "mapHereSatellite": "මෙන්න සැටලයිට්",
- "mapHereFlow": "මෙන්න Traffic Flow",
- "mapHereKey": "මෙන්න API යතුර",
- "mapShapePolygon": "බහුඅශ්‍රය",
- "mapShapeCircle": "වෘත්තය",
- "mapShapePolyline": "බහු රේඛාව",
- "mapLiveRoutes": "සජීවී මාර්ග",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "වත්මන් ස්ථානය",
- "mapPoiLayer": "POI ස්තරය",
- "mapClustering": "සලකුණු පොකුරු කිරීම",
- "mapOnSelect": "තේරීම මත සිතියම පෙන්වන්න",
- "mapDefault": "Default Map",
- "stateTitle": "තත්ත්වය",
- "stateName": "ගුණාංගය",
- "stateValue": "අගය",
- "commandTitle": "විධානය",
- "commandSend": "යවන්න",
- "commandSent": "විධානය යවා ඇත",
- "commandQueued": "විධානය පෝලිමේ",
- "commandUnit": "සඳහා",
- "commandCustom": "අභිරුචි විධානය",
- "commandDeviceIdentification": "හඳුනා ගැනීම",
- "commandPositionSingle": "තනි වාර්තාව",
- "commandPositionPeriodic": "ආවර්තිතාව වාර්තා කරන්න",
- "commandPositionStop": "වාර්තා කිරීම නවත්වන්න",
- "commandEngineStop": "එන්ජින් නැවතුම",
- "commandEngineResume": "එන්ජින් Resume",
- "commandAlarmArm": "ආම් එලාම්",
- "commandAlarmDisarm": "අනතුරු ඇඟවීම නිරායුධ කරන්න",
- "commandAlarmDismiss": "එලාමය අස් කරන්න",
- "commandSetTimezone": "කලාපය සකසන්න",
- "commandRequestPhoto": "ඡායාරූප ඉල්ලීම",
- "commandPowerOff": "උපාංගය ක්‍රියා විරහිත කරන්න",
- "commandRebootDevice": "අපට යළි ආරම්භ කරන්න",
- "commandFactoryReset": "කර්මාන්තශාලා යළි පිහිටුවීම",
- "commandSendSms": "කෙටි පණිවිඩ යවන්න",
- "commandSendUssd": "USSD යවන්න",
- "commandSosNumber": "SOS අංකය සකසන්න",
- "commandSilenceTime": "නිශ්ශබ්දතාවයේ වේලාව සකසන්න",
- "commandSetPhonebook": "දුරකථනපොත සකසන්න",
- "commandVoiceMessage": "සඳහා පණිවිඩය",
- "commandOutputControl": "ප්රතිදාන පාලනය",
- "commandVoiceMonitoring": "හඬ නිරීක්ෂණ",
- "commandSetAgps": "AGPS සකසන්න",
- "commandSetIndicator": "දර්ශකය සකසන්න",
- "commandConfiguration": "වින්‍යාසය",
- "commandGetVersion": "සහ ගන්න",
- "commandFirmwareUpdate": "ස්ථිරාංගය යථාවත්කාල කරන්න",
- "commandSetConnection": "සම්බන්ධතාවය සකසන්න",
- "commandSetOdometer": "සැතපුම්මානය සකසන්න",
- "commandGetModemStatus": "මෝඩමය තත්ත්වය ලබා ගන්න",
- "commandGetDeviceStatus": "ලබා ගැනීමේ තත්ත්වය ගන්න",
- "commandSetSpeedLimit": "වේග සීමාව සකසන්න",
- "commandModePowerSaving": "බලශක්ති ඉතිරිකිරීමේ මාදිලිය",
- "commandModeDeepSleep": "ගැඹුරු නින්ද මාදිලිය",
- "commandAlarmGeofence": "Geofence එලාම් සකසන්න",
- "commandAlarmBattery": "බැටරි එලාම් සකසන්න",
- "commandAlarmSos": "SOS එලාම් සකසන්න",
- "commandAlarmRemove": "ඉවත් කිරීමේ අනතුරු ඇඟවීම සකසන්න",
- "commandAlarmClock": "ඔරලෝසු එලාම් සකසන්න",
- "commandAlarmSpeed": "වේග අනතුරු ඇඟවීම සකසන්න",
- "commandAlarmFall": "වැටීම අනතුරු ඇඟවීම සකසන්න",
- "commandAlarmVibration": "කම්පන එලාම් සකසන්න",
- "commandFrequency": "සංඛ්යාතය",
- "commandTimezone": "කාල කලාප ඕෆ්සෙට්",
- "commandMessage": "පණිවිඩය",
- "commandRadius": "ආරය",
- "commandEnable": "සබල කරන්න",
- "commandData": "දත්ත",
- "commandIndex": "දර්ශකය",
- "commandPhone": "දුරකථන අංකය",
- "commandServer": "සේවාදායකයා",
- "commandPort": "වරාය",
- "eventAll": "සියලු සිදුවීම්",
- "eventDeviceOnline": "මාර්ගගත තත්ත්වය",
- "eventDeviceUnknown": "තත්ත්වය නොදනී",
- "eventDeviceOffline": "නොබැඳි තත්ත්වය",
- "eventDeviceInactive": "උපාංගය අක්‍රියයි",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "උපාංගය චලනය",
- "eventDeviceStopped": "උපාංගය නතර විය",
- "eventDeviceOverspeed": "වේග සීමාව ඉක්මවා ඇත",
- "eventDeviceFuelDrop": "ඉන්ධන පහත වැටීම",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "විධානයේ ප්‍රකාශය",
- "eventGeofenceEnter": "Geofence ඇතුල් විය",
- "eventGeofenceExit": "Geofence ඉවත් විය",
- "eventAlarm": "අනතුරු ඇඟවීම",
- "eventIgnitionOn": "ගිනි දැල්වීම",
- "eventIgnitionOff": "ජ්වලනය නිවා දමයි",
- "eventMaintenance": "නඩත්තු කිරීම අවශ්ය වේ",
- "eventTextMessage": "කෙටි පණිවිඩයක් ලැබිණි",
- "eventDriverChanged": "රියදුරු වෙනස් විය",
- "eventMedia": "Media",
- "eventsScrollToLast": "අන්තිමට අනුචලනය කරන්න",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "ජනරාල්",
- "alarmSos": "SOS",
- "alarmVibration": "කම්පනය",
- "alarmMovement": "චලනය",
- "alarmLowspeed": "අඩු වේගය",
- "alarmOverspeed": "අධික වේගය",
- "alarmFallDown": "වැටෙන්න",
- "alarmLowPower": "අඩු බලය",
- "alarmLowBattery": "අඩු බැටරි",
- "alarmFault": "වරද",
- "alarmPowerOff": "බලය අක්‍රියයි",
- "alarmPowerOn": "පවර් ඔන්",
- "alarmDoor": "දොර",
- "alarmLock": "අගුළු දමන්න",
- "alarmUnlock": "අගුළු හරින්න",
- "alarmGeofence": "භූ වැට",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence පිටවීම",
- "alarmGpsAntennaCut": "GPS ඇන්ටෙනා කැපීම",
- "alarmAccident": "අනතුරක්",
- "alarmTow": "ඇදගෙන යාම",
- "alarmIdle": "නිෂ්ක්‍රීයයි",
- "alarmHighRpm": "ඉහළ ආර්පීඑම්",
- "alarmHardAcceleration": "දෘඪ ත්වරණය",
- "alarmHardBraking": "දැඩි තිරිංග",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "මංතීරු වෙනස් කිරීම",
- "alarmFatigueDriving": "තෙහෙට්ටුව රිය පැදවීම",
- "alarmPowerCut": "විදුලි කප්පාදුව",
- "alarmPowerRestored": "බලය යථා තත්ත්වයට පත් විය",
- "alarmJamming": "හිරවීම",
- "alarmTemperature": "උෂ්ණත්වය",
- "alarmParking": "වාහන නැවැත්වීම",
- "alarmBonnet": "බොනට්",
- "alarmFootBrake": "ෆුට් බ්‍රේක්",
- "alarmFuelLeak": "ඉන්ධන කාන්දු වීම",
- "alarmTampering": "විකෘති කිරීම",
- "alarmRemoving": "ඉවත් කිරීම",
- "notificationType": "දැනුම්දීම් වර්ග",
- "notificationAlways": "සියලුම උපාංග",
- "notificationNotificators": "නාලිකා",
- "notificatorCommand": "Command",
- "notificatorWeb": "වෙබ්",
- "notificatorMail": "තැපෑල",
- "notificatorSms": "කෙටි පණිවිඩ",
- "notificatorFirebase": "ගිනි පදනම",
- "notificatorTraccar": "ට්රැකර්",
- "notificatorTelegram": "විදුලි පණිවුඩ",
- "notificatorPushover": "Pushover",
- "reportReplay": "නැවත ධාවනය කරන්න",
- "reportCombined": "Combined",
- "reportRoute": "ගමන් කිරීමට",
- "reportEvents": "සිද්ධි",
- "reportTrips": "චාරිකා",
- "reportStops": "නැවතීම්",
- "reportSummary": "සාරාංශය",
- "reportDaily": "දෛනික සාරාංශය",
- "reportChart": "සටහන",
- "reportConfigure": "වින්‍යාසගත කරන්න",
- "reportEventTypes": "සිදුවීම් වර්ග",
- "reportChartType": "ප්‍රස්ථාර වර්ගය",
- "reportShowMarkers": "සලකුණු පෙන්වන්න",
- "reportExport": "නිර්යාත",
- "reportEmail": "ඊමේල් වාර්තාව",
- "reportSchedule": "Schedule",
- "reportPeriod": "කාලය",
- "reportCustom": "අභිරුචි",
- "reportToday": "අද",
- "reportYesterday": "කටයුතු",
- "reportThisWeek": "මෙම සතිය",
- "reportPreviousWeek": "පසුගිය සතියේ",
- "reportThisMonth": "මෙම මාසය",
- "reportPreviousMonth": "පසුගිය මාසය",
- "reportDeviceName": "ඇතුලත්වේ නම",
- "reportAverageSpeed": "සාමාන්‍ය වේගය",
- "reportMaximumSpeed": "උපරිම වේගය",
- "reportEngineHours": "එන්ජින් පැය",
- "reportDuration": "කාලසීමාව",
- "reportStartDate": "ආරම්භක දිනය",
- "reportStartTime": "ආරම්භක වේලාව",
- "reportStartAddress": "ආරම්භ ලිපිනය",
- "reportEndTime": "අවසානය",
- "reportEndAddress": "අවසාන ලිපිනය",
- "reportSpentFuel": "වැයවූ ඉන්ධන",
- "reportStartOdometer": "Odometer ආරම්භය",
- "reportEndOdometer": "Odometer අවසානය",
- "statisticsTitle": "සංඛ්යාලේඛන",
- "statisticsCaptureTime": "අල්ලා ගැනීමේ කාලය",
- "statisticsActiveUsers": "ක්‍රියාකාරී පරිශීලකයින්",
- "statisticsActiveDevices": "ක්රියාකාරී උපාංග",
- "statisticsRequests": "ඉල්ලීම්",
- "statisticsMessagesReceived": "ලැබුණු පණිවිඩ",
- "statisticsMessagesStored": "ගබඩා කර ඇති පණිවිඩ",
- "statisticsGeocoder": "භූ කේත ඉල්ලීම්",
- "statisticsGeolocation": "භූගෝලීය ඉල්ලීම්",
- "categoryArrow": "ඊතලය",
- "categoryDefault": "පෙරනිමි",
- "categoryAnimal": "සතුන්",
- "categoryBicycle": "පාපැදිය",
- "categoryBoat": "බෝට්ටුව",
- "categoryBus": "බස්",
- "categoryCar": "මෝටර් රථ",
- "categoryCamper": "Camper",
- "categoryCrane": "දොඹකරය",
- "categoryHelicopter": "හෙලිකොප්ටරය",
- "categoryMotorcycle": "යතුරුපැදිය",
- "categoryOffroad": "පාරෙන් පිට",
- "categoryPerson": "පුද්ගලයා",
- "categoryPickup": "අවුලා ගන්න",
- "categoryPlane": "ගුවන්යානය",
- "categoryShip": "නැව",
- "categoryTractor": "ට්රැක්ටරය",
- "categoryTrain": "දුම්රිය",
- "categoryTram": "ට්‍රෑම් රථය",
- "categoryTrolleybus": "ට්රොලිබස්",
- "categoryTruck": "ට්රක් රථය",
- "categoryVan": "වෑන්",
- "categoryScooter": "ස්කූටරය",
- "maintenanceStart": "ආරම්භය",
- "maintenancePeriod": "කාලය"
-} \ No newline at end of file
diff --git a/web/l10n/sk.json b/web/l10n/sk.json
deleted file mode 100644
index e4aebedc..00000000
--- a/web/l10n/sk.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Načítava...",
- "sharedHide": "Schovať",
- "sharedSave": "Uložiť",
- "sharedUpload": "Upload",
- "sharedSet": "Nastaviť",
- "sharedCancel": "Zrušiť",
- "sharedCopy": "Copy",
- "sharedAdd": "Pridať",
- "sharedEdit": "Upraviť",
- "sharedRemove": "Odstrániť",
- "sharedRemoveConfirm": "Odstrániť položku?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "Km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "Km/h",
- "sharedMph": "mph",
- "sharedHour": "Hodina",
- "sharedMinute": "Minúta",
- "sharedSecond": "Sekunda",
- "sharedDays": "dni",
- "sharedHours": "hodiny",
- "sharedMinutes": "minúty",
- "sharedDecimalDegrees": "Desatinné stupne",
- "sharedDegreesDecimalMinutes": "Stupne desatinných minút",
- "sharedDegreesMinutesSeconds": "Stupne desatinných sekúnd",
- "sharedName": "Meno",
- "sharedDescription": "Popis",
- "sharedSearch": "Hľadať",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geofence",
- "sharedGeofences": "Geofences",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Notifikácie",
- "sharedNotification": "Notifikácia",
- "sharedAttributes": "Atribúty",
- "sharedAttribute": "Atribút",
- "sharedDrivers": "Vodiči",
- "sharedDriver": "Vodič",
- "sharedArea": "Oblasť",
- "sharedSound": "Notifikačný zvuk",
- "sharedType": "Typ",
- "sharedDistance": "Vzdialenosť",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Britský galón",
- "sharedUsGallon": "Americký galón",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Získať mapu štátu",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "Výraz",
- "sharedDevice": "Zariadenie",
- "sharedTest": "Test",
- "sharedTestNotification": "Pošli skúšobnú notifikáciu",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Kalendár",
- "sharedCalendars": "Kalendáre",
- "sharedFile": "Súbor",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Vyberte súbor",
- "sharedPhone": "Telefón",
- "sharedRequired": "Požadované",
- "sharedPreferences": "Preferencie",
- "sharedPermissions": "Povolenia",
- "sharedConnections": "Connections",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Reťazec",
- "sharedTypeNumber": "Číslo",
- "sharedTypeBoolean": "Binárna hodnota",
- "sharedTimezone": "Časová zóna",
- "sharedInfoTitle": "Informácie",
- "sharedSavedCommand": "Uložený príkaz",
- "sharedSavedCommands": "Uložené príkazy",
- "sharedNew": "Nový...",
- "sharedShowAddress": "Zobraziť adresu",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Vypnuté",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Upozornenia",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Limit rýchlosti",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Report: Ignoruj kilometrovník",
- "attributeWebReportColor": "Web: Farba reportu",
- "attributeDevicePassword": "Heslo zaridenia",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "Farba",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximálne priblíženie",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "E-Mail: SMTP Host",
- "attributeMailSmtpPort": "E-Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "E-Mail: SMTP STARTTLS Zapnuté",
- "attributeMailSmtpStarttlsRequired": "E-Mail: SMTP STARTTLS Povinná",
- "attributeMailSmtpSslEnable": "Mail: Povolenie SMTP SSL",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protokoly",
- "attributeMailSmtpFrom": "Mail: SMTP Od",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Používateľské meno",
- "attributeMailSmtpPassword": "Mail: SMTP Heslo",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Zakázať udalosti",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Zakázať vodičov",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Zakázať kalendáre",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Chyba",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "Chyba pripojenia",
- "errorSocket": "Chyba pripojenia web konektora",
- "errorZero": "Can't be zero",
- "userEmail": "E-mail",
- "userPassword": "Heslo",
- "userAdmin": "Admin",
- "userRemember": "Zapamätať",
- "userExpirationTime": "Uplynutie platnosti",
- "userDeviceLimit": "Limit zariadenia",
- "userUserLimit": "Obmedzenie používateľov",
- "userDeviceReadonly": "Zariadenie len na čítanie",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Prihlásenie",
- "loginLanguage": "Jazyk",
- "loginReset": "Reset Password",
- "loginRegister": "Registrovať",
- "loginLogin": "Prihlásenie",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Nesprávna e-mailová adresa alebo heslo",
- "loginCreated": "Nový užívateľ sa zaregistroval",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Odhlásiť",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Zariadenia a Status",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Zariadena",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifikátor",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategória",
- "deviceLastUpdate": "Posledný update",
- "deviceCommand": "Príkaz",
- "deviceFollow": "Nasleduj",
- "deviceTotalDistance": "Celková vzdialenosť",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Neznáme",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Skupina",
- "groupParent": "Skupina",
- "groupNoGroup": "Žiadna skupina",
- "settingsTitle": "Nastavenia",
- "settingsUser": "Účet",
- "settingsGroups": "Skupiny",
- "settingsServer": "Server",
- "settingsUsers": "Používatelia",
- "settingsDistanceUnit": "Jednotka vzdialenosti",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Jednotka rýchlosti",
- "settingsVolumeUnit": "Jednotka objemu",
- "settingsTwelveHourFormat": "12-hodinový formát",
- "settingsCoordinateFormat": "Formát koordinátov",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Správy",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Zariadenie",
- "reportGroup": "Skupina",
- "reportFrom": "Od",
- "reportTo": "Do",
- "reportShow": "Zobraziť",
- "reportClear": "Vyčistiť",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Platný",
- "positionAccuracy": "Presnosť",
- "positionLatitude": "Šírka",
- "positionLongitude": "Dĺžka",
- "positionAltitude": "Výška",
- "positionSpeed": "Rýchlosť jazdy",
- "positionCourse": "Kurz",
- "positionAddress": "Adresa",
- "positionProtocol": "Protokol",
- "positionDistance": "Vzdialenosť",
- "positionRpm": "OZM",
- "positionFuel": "Palivo",
- "positionPower": "Napätie",
- "positionBattery": "Baterka",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satelity",
- "positionSatVisible": "Viditeľné satelity",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Udalosť",
- "positionAlarm": "Upozornenie",
- "positionStatus": "Stav",
- "positionOdometer": "Kilometrovník",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hodiny",
- "positionSteps": "Steps",
- "positionInput": "Vstup",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Výstup",
- "positionBatteryLevel": "Stav batérie",
- "positionFuelConsumption": "Spotreba paliva",
- "positionRfid": "RFID",
- "positionVersionFw": "Verzia firmvéru",
- "positionVersionHw": "Verzia hardvéru",
- "positionIgnition": "Zapaľovanie",
- "positionFlags": "Značky",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archív",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Pohyb",
- "positionArmed": "Armed",
- "positionAcceleration": "Zrýchlenie",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Teplota zariadenia",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operátor",
- "positionCommand": "Príkaz",
- "positionBlocked": "Blokované",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD rýchlosť",
- "positionObdOdometer": "OBD kilometrovník",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Unikátne ID vodiča",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Nastavenie servera",
- "serverZoom": "Zoom",
- "serverRegistration": "Registrácia",
- "serverReadonly": "Iba na čítanie",
- "serverForceSettings": "Nastavenie sily",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Mapa",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Mapové vrstvy",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Klúč Bing Maps",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Arial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex mapa",
- "mapYandexSat": "Yandex satelit",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polygón",
- "mapShapeCircle": "Kruh",
- "mapShapePolyline": "Lomená čiara",
- "mapLiveRoutes": "Live Routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Parametre",
- "stateName": "Parameter",
- "stateValue": "Hodnota",
- "commandTitle": "Príkaz",
- "commandSend": "Odoslať",
- "commandSent": "Príkaz odoslaný",
- "commandQueued": "Command queued",
- "commandUnit": "Jednotka",
- "commandCustom": "Vlastný príkaz",
- "commandDeviceIdentification": "Identifikácia zariadenia",
- "commandPositionSingle": "Jednoduché podávanie správ",
- "commandPositionPeriodic": "Pravidelné podávanie správ",
- "commandPositionStop": "Zastavte podávanie správ",
- "commandEngineStop": "Zastavenie motora",
- "commandEngineResume": "Spustenie motora",
- "commandAlarmArm": "Nastaviť upozornenie",
- "commandAlarmDisarm": "Zrušiť upozornenie",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Nastaviť časovú zónu",
- "commandRequestPhoto": "Poslať fotku",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Rebootovať zariadenie",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Postať SMS",
- "commandSendUssd": "Postať USSD",
- "commandSosNumber": "Nastaviť čislo SOS",
- "commandSilenceTime": "Nastav tichý čas",
- "commandSetPhonebook": "Nastav telefónny zoznam",
- "commandVoiceMessage": "Hlasové správy",
- "commandOutputControl": "Výstupná kontrola",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Nastaviť AGPS",
- "commandSetIndicator": "Nastavte ukazovateľ",
- "commandConfiguration": "Konfigurácia",
- "commandGetVersion": "Získať verziu",
- "commandFirmwareUpdate": "Aktualizovať firmvér",
- "commandSetConnection": "Nastaviť spojenie",
- "commandSetOdometer": "Nastaviť kilometrovník",
- "commandGetModemStatus": "Získať stav modemu",
- "commandGetDeviceStatus": "Získať stav zariadenia",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekvencia",
- "commandTimezone": "Časová zóna Offset",
- "commandMessage": "Správa",
- "commandRadius": "Polomer",
- "commandEnable": "Povoliť",
- "commandData": "Dáta",
- "commandIndex": "Index",
- "commandPhone": "Telefónne číslo",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Všetky akcie",
- "eventDeviceOnline": "Stav online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Stav offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Zariadenie sa hýbe",
- "eventDeviceStopped": "Zariadenie zastavilo",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Výsledok príkazu",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Upozornenie",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Vyžaduje sa údržba",
- "eventTextMessage": "Prijatá textová správa",
- "eventDriverChanged": "Zmena vodiča",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Všeobecné",
- "alarmSos": "SOS",
- "alarmVibration": "Vibrácia",
- "alarmMovement": "Pobyb",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Prekročenie rýchlosti",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Slabý prúd",
- "alarmLowBattery": "Slabá batéria",
- "alarmFault": "Chyba",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Zamknúť",
- "alarmUnlock": "Odomknúť",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Napájanie obnovené",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Teplota",
- "alarmParking": "Parkovanie",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Typ notifikácie",
- "notificationAlways": "Všetky zariadenia",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Cesta",
- "reportEvents": "Udalosti",
- "reportTrips": "Cesty",
- "reportStops": "Zastávky",
- "reportSummary": "Zhrnutie",
- "reportDaily": "Daily Summary",
- "reportChart": "Graf",
- "reportConfigure": "Konfigurácia",
- "reportEventTypes": "Typy udalstí",
- "reportChartType": "Typ grafu",
- "reportShowMarkers": "Zobraziť značky",
- "reportExport": "Export",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Vlastné",
- "reportToday": "Dnes",
- "reportYesterday": "Včera",
- "reportThisWeek": "Tento týždeň",
- "reportPreviousWeek": "Minulý týždeň",
- "reportThisMonth": "Tento mesiac",
- "reportPreviousMonth": "Minulý mesiac",
- "reportDeviceName": "Meno zariadenia",
- "reportAverageSpeed": "Priemerná rýchlosť",
- "reportMaximumSpeed": "Maximálna rýchlosť",
- "reportEngineHours": "Prevádzkové hodiny motora",
- "reportDuration": "Trvanie",
- "reportStartDate": "Start Date",
- "reportStartTime": "Čas spustenia",
- "reportStartAddress": "Počiatočná adresa",
- "reportEndTime": "Čas ukončenia",
- "reportEndAddress": "Koncová adresa",
- "reportSpentFuel": "Spotrebované palivo",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Štatistika",
- "statisticsCaptureTime": "Zachyť čas",
- "statisticsActiveUsers": "Aktívny používatelia",
- "statisticsActiveDevices": "Aktívne zariadenia",
- "statisticsRequests": "Požiadavka",
- "statisticsMessagesReceived": "Správa doručená",
- "statisticsMessagesStored": "Správa uložená",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Šípka",
- "categoryDefault": "Základné",
- "categoryAnimal": "Zviera",
- "categoryBicycle": "Bicykel",
- "categoryBoat": "Loď",
- "categoryBus": "Autobus",
- "categoryCar": "Auto",
- "categoryCamper": "Camper",
- "categoryCrane": "Žeriav",
- "categoryHelicopter": "Helikoptéra",
- "categoryMotorcycle": "Motocykel",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Osoba",
- "categoryPickup": "Pickup",
- "categoryPlane": "Lietadlo",
- "categoryShip": "Loď",
- "categoryTractor": "Traktor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Nákladné auto",
- "categoryVan": "Dodávka",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/sl.json b/web/l10n/sl.json
deleted file mode 100644
index 3c55e91b..00000000
--- a/web/l10n/sl.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Nalagam...",
- "sharedHide": "Skrij",
- "sharedSave": "Shrani",
- "sharedUpload": "Naloži",
- "sharedSet": "Nastavi",
- "sharedCancel": "Prekini",
- "sharedCopy": "Copy",
- "sharedAdd": "Dodaj",
- "sharedEdit": "Uredi",
- "sharedRemove": "Odstrani",
- "sharedRemoveConfirm": "Odstranim zapis?",
- "sharedNoData": "Ni podatkov",
- "sharedSubject": "Subject",
- "sharedYes": "Da",
- "sharedNo": "Ne",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Ura",
- "sharedMinute": "Minuta",
- "sharedSecond": "Sekunda",
- "sharedDays": "dni",
- "sharedHours": "ur",
- "sharedMinutes": "minut",
- "sharedDecimalDegrees": "Decimalne stopinje",
- "sharedDegreesDecimalMinutes": "Stopinje Decimalne Minute",
- "sharedDegreesMinutesSeconds": "Stopinje Minute Sekunde",
- "sharedName": "Ime",
- "sharedDescription": "Opis",
- "sharedSearch": "Išči",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Omejeno območje",
- "sharedGeofences": "Omejena območja",
- "sharedCreateGeofence": "Ustvari omejeno območje",
- "sharedNotifications": "Obvestila",
- "sharedNotification": "Obvestilo",
- "sharedAttributes": "Atributi",
- "sharedAttribute": "Atribut",
- "sharedDrivers": "Vozniki",
- "sharedDriver": "Voznik",
- "sharedArea": "Območje",
- "sharedSound": "Zvok obvestila",
- "sharedType": "Tip",
- "sharedDistance": "Razdalja",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Pridobi stanje zemljevida",
- "sharedComputedAttribute": "Izračunan atribut",
- "sharedComputedAttributes": "Izračunani atributi",
- "sharedCheckComputedAttribute": "Preveri izračunan atribut",
- "sharedExpression": "Izraz",
- "sharedDevice": "Naprava",
- "sharedTest": "Preizkus",
- "sharedTestNotification": "Pošlji testno obvestilo",
- "sharedTestNotificators": "Preizkusi kanale",
- "sharedTestExpression": "Preizkusi izraz",
- "sharedCalendar": "Koledar",
- "sharedCalendars": "Koledarji",
- "sharedFile": "Datoteka",
- "sharedSearchDevices": "Išči po napravah",
- "sharedSortBy": "Razvrsti po",
- "sharedFilterMap": "Filtriraj na zemljevidu",
- "sharedSelectFile": "Izberi datoteko",
- "sharedPhone": "Telefon",
- "sharedRequired": "Obvezno",
- "sharedPreferences": "Nastavitve",
- "sharedPermissions": "Dovoljenja",
- "sharedConnections": "Povezave",
- "sharedExtra": "Dodatno",
- "sharedPrimary": "Primarno",
- "sharedSecondary": "Sekundarno",
- "sharedTypeString": "Tekst",
- "sharedTypeNumber": "Številka",
- "sharedTypeBoolean": "Binarna vrednost",
- "sharedTimezone": "Časovni pas",
- "sharedInfoTitle": "Informacije",
- "sharedSavedCommand": "Shrani ukaz",
- "sharedSavedCommands": "Shranjeni ukazi",
- "sharedNew": "Nov...",
- "sharedShowAddress": "Prikaži naslov",
- "sharedShowDetails": "Več podrobnosti",
- "sharedDisabled": "Onemogočen",
- "sharedMaintenance": "Vzdrževanje",
- "sharedDeviceAccumulators": "Seštevki",
- "sharedAlarms": "Alarmi",
- "sharedLocation": "Lokacija",
- "sharedImport": "Uvozi",
- "sharedColumns": "Stolpci",
- "sharedDropzoneText": "Povlecite in spustite datoteko sem ali kliknite",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Preprost",
- "calendarRecurrence": "Ponovitev",
- "calendarOnce": "Enkrat",
- "calendarDaily": "Dnevno",
- "calendarWeekly": "Tedensko",
- "calendarMonthly": "Mesečno",
- "calendarDays": "Dnevi",
- "calendarSunday": "Nedelja",
- "calendarMonday": "Ponedeljek",
- "calendarTuesday": "Torek",
- "calendarWednesday": "Sreda",
- "calendarThursday": "Četrtek",
- "calendarFriday": "Petek",
- "calendarSaturday": "Sobota",
- "attributeShowGeofences": "Prikaži omejena območja",
- "attributeSpeedLimit": "Omejitev hitrosti",
- "attributeFuelDropThreshold": "Mejna vrednost padca goriva",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Poročilo: Prezri stanje števca",
- "attributeWebReportColor": "Splet: Barva poročila",
- "attributeDevicePassword": "Geslo naprave",
- "attributeDeviceImage": "Slika naprave",
- "attributeDeviceInactivityStart": "Začetek neaktivnosti naprave",
- "attributeDeviceInactivityPeriod": "Obdobje neaktivnosti naprave",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "Barva",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Podatki v pojavnem oknu",
- "errorTitle": "Napaka",
- "errorGeneral": "Neveljavni parametri ali kršitev omejitve",
- "errorConnection": "Napaka v povezavi",
- "errorSocket": "Napaka v povezavi web socket",
- "errorZero": "Ne sme biti 0",
- "userEmail": "E-Pošta",
- "userPassword": "Geslo",
- "userAdmin": "Admin",
- "userRemember": "Zapomni si",
- "userExpirationTime": "Poteče",
- "userDeviceLimit": "Omejitev naprav",
- "userUserLimit": "Omejitev uporabnikov",
- "userDeviceReadonly": "Naprava samo za branje",
- "userLimitCommands": "Omeji ukaze",
- "userDisableReports": "Onemogoči poročila",
- "userFixedEmail": "Prepreči spremembo e-pošte",
- "userToken": "Žeton",
- "userDeleteAccount": "Izbriši račun",
- "userTemporary": "Temporary",
- "loginTitle": "Prijava",
- "loginLanguage": "Jezik",
- "loginReset": "Ponastavi geslo",
- "loginRegister": "Registracija",
- "loginLogin": "Prijava",
- "loginOpenId": "Prijavi se z OpenID",
- "loginFailed": "Nepravilna e-pošta ali geslo",
- "loginCreated": "Nov uporabnik je registriran",
- "loginResetSuccess": "Prosimo preverite svojo e-pošto",
- "loginUpdateSuccess": "Novo geslo je shranjeno",
- "loginLogout": "Odjava",
- "loginLogo": "Logotip",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Naprava in stanje",
- "deviceSelected": "Izbrana naprava",
- "deviceTitle": "Naprave",
- "devicePrimaryInfo": "Naslov naprave",
- "deviceSecondaryInfo": "Podrobnosti naprave",
- "deviceIdentifier": "Identifikacija",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategorija",
- "deviceLastUpdate": "Zadnja posodobitev",
- "deviceCommand": "Ukaz",
- "deviceFollow": "Sledi",
- "deviceTotalDistance": "Skupna razdalja",
- "deviceStatus": "Stanje",
- "deviceStatusOnline": "Povezan",
- "deviceStatusOffline": "Nepovezan",
- "deviceStatusUnknown": "Neznano",
- "deviceRegisterFirst": "Vnesite svojo prvo napravo",
- "deviceIdentifierHelp": "IMEI, serijska številka ali druga identifikacija. Se mora ujemati z identifikacijo ki jo naprava pošilja na strežnik.",
- "deviceShare": "Share Device",
- "groupDialog": "Skupina",
- "groupParent": "Skupina",
- "groupNoGroup": "Ni skupine",
- "settingsTitle": "Nastavitve",
- "settingsUser": "Račun",
- "settingsGroups": "Skupine",
- "settingsServer": "Strežnik",
- "settingsUsers": "Uporabniki",
- "settingsDistanceUnit": "Enota za razdaljo",
- "settingsAltitudeUnit": "Enota za nadmorsko višino",
- "settingsSpeedUnit": "Enota za hitrost",
- "settingsVolumeUnit": "Enota za volumen",
- "settingsTwelveHourFormat": "12-urni format",
- "settingsCoordinateFormat": "Format koordinat",
- "settingsServerVersion": "Različica strežnika",
- "settingsAppVersion": "Različica aplikacije",
- "settingsConnection": "Povezava",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "Na voljo je posodobitev.",
- "settingsSupport": "Support",
- "reportTitle": "Poročila",
- "reportScheduled": "Načrtovana poročila",
- "reportDevice": "Naprava",
- "reportGroup": "Skupina",
- "reportFrom": "Od",
- "reportTo": "Do",
- "reportShow": "Prikaži",
- "reportClear": "Očisti",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Čas določitve",
- "positionDeviceTime": "Čas naprave",
- "positionServerTime": "Čas strežnika",
- "positionValid": "Veljavnost",
- "positionAccuracy": "Natančnost",
- "positionLatitude": "Širina",
- "positionLongitude": "Dolžina",
- "positionAltitude": "Višina",
- "positionSpeed": "Hitrost",
- "positionCourse": "Smer",
- "positionAddress": "Naslov",
- "positionProtocol": "Protokol",
- "positionDistance": "Razdalja",
- "positionRpm": "Obrati",
- "positionFuel": "Gorivo",
- "positionPower": "Napajanje",
- "positionBattery": "Baterija",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Sateliti",
- "positionSatVisible": "Vidni sateliti",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Gostovanje",
- "positionEvent": "Dogodek",
- "positionAlarm": "Alarm",
- "positionStatus": "Stanje",
- "positionOdometer": "Stanje števca",
- "positionServiceOdometer": "Servisni števec",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Ur",
- "positionSteps": "Koraki",
- "positionInput": "Vnos",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Izhod",
- "positionBatteryLevel": "Nivo baterije",
- "positionFuelConsumption": "Poraba goriva",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Kontakt",
- "positionFlags": "Zastavice",
- "positionCharge": "Polnjenje",
- "positionIp": "IP",
- "positionArchive": "Arhiv",
- "positionVin": "VIN",
- "positionApproximate": "Približno",
- "positionThrottle": "Throttle",
- "positionMotion": "Gibanje",
- "positionArmed": "Armed",
- "positionAcceleration": "Pospeševanje",
- "positionTemp": "Temperatura",
- "positionDeviceTemp": "Temperatura naprave",
- "positionCoolantTemp": "Temperatura hladilne tekočine",
- "positionOperator": "Operater",
- "positionCommand": "Ukaz",
- "positionBlocked": "Blokirano",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD hitrost",
- "positionObdOdometer": "OBD Stanje števca",
- "positionDrivingTime": "Čas vožnje",
- "positionDriverUniqueId": "Unikatna identifikacija voznika",
- "positionCard": "Card",
- "positionImage": "Slika",
- "positionVideo": "Video",
- "positionAudio": "Zvok",
- "serverTitle": "Nastavitve strežnika",
- "serverZoom": "Povečava",
- "serverRegistration": "Registracija",
- "serverReadonly": "Samo za branje",
- "serverForceSettings": "Vsili nastavitve",
- "serverAnnouncement": "Obvestilo",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Zemljevid",
- "mapActive": "Aktivni zemljevidi",
- "mapOverlay": "Podatkovna plast",
- "mapOverlayCustom": "Podatkovna plast po meri",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Zemljevidi",
- "mapCustom": "Po meri (XYZ)",
- "mapCustomArcgis": "Po meri (ArcGIS)",
- "mapCustomLabel": "Zemljevid po meri",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Ključ",
- "mapBingRoad": "Bing Maps Ceste",
- "mapBingAerial": "Bing Maps Satelit",
- "mapBingHybrid": "Bing zemljevid hibrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex zemljevid",
- "mapYandexSat": "Yandex satelit",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Poligon",
- "mapShapeCircle": "Krog",
- "mapShapePolyline": "Polyline",
- "mapLiveRoutes": "Žive poti",
- "mapDirection": "Prikaži smer",
- "mapCurrentLocation": "Trenutna lokacija",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Združevanje oznak",
- "mapOnSelect": "Ob izbiri prikaži zemljevid",
- "mapDefault": "Privzet zemljevid",
- "stateTitle": "Stanje",
- "stateName": "Parameter",
- "stateValue": "Vrednost",
- "commandTitle": "Ukaz",
- "commandSend": "Pošlji",
- "commandSent": "Ukaz poslan",
- "commandQueued": "Ukaz v čakalni vrsti",
- "commandUnit": "Naprava",
- "commandCustom": "Ukaz po meri",
- "commandDeviceIdentification": "Identifikacija naprave",
- "commandPositionSingle": "Single Reporting",
- "commandPositionPeriodic": "Periodično poročanje",
- "commandPositionStop": "Ustavi poročanje",
- "commandEngineStop": "Ugasni motor",
- "commandEngineResume": "Prižgi motor",
- "commandAlarmArm": "Vklopi alarm",
- "commandAlarmDisarm": "Izklopi alarm",
- "commandAlarmDismiss": "Utišaj alarm",
- "commandSetTimezone": "Nastavi časovni pas",
- "commandRequestPhoto": "Zahtevaj sliko",
- "commandPowerOff": "Izklopi napravo",
- "commandRebootDevice": "Ponovno zaženi napravo",
- "commandFactoryReset": "Tovarniške nastavitve",
- "commandSendSms": "Pošlji SMS",
- "commandSendUssd": "Pošlji USSD",
- "commandSosNumber": "Nastavi SOS številko",
- "commandSilenceTime": "Set Silence Time",
- "commandSetPhonebook": "Set Phonebook",
- "commandVoiceMessage": "Glasovno sporočilo",
- "commandOutputControl": "Output Control",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Nastavi AGPS",
- "commandSetIndicator": "Set Indicator",
- "commandConfiguration": "Nastavitve",
- "commandGetVersion": "Pridobi različico",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Nastavi povezavo",
- "commandSetOdometer": "Nastavi stanje števca",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekvenca",
- "commandTimezone": "Timezone Offset",
- "commandMessage": "Sporočilo",
- "commandRadius": "Radij",
- "commandEnable": "Omogoči",
- "commandData": "Podatki",
- "commandIndex": "Index",
- "commandPhone": "Telefonska številka",
- "commandServer": "Strežnik",
- "commandPort": "Vrata",
- "eventAll": "Vsi dogodki",
- "eventDeviceOnline": "Stanje: povezan",
- "eventDeviceUnknown": "Neznano stanje",
- "eventDeviceOffline": "Stanje: nepovezan",
- "eventDeviceInactive": "Naprava neaktivna",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Naprava se premika",
- "eventDeviceStopped": "Naprava se je ustavila",
- "eventDeviceOverspeed": "Omejitev hitrosti prekoračena",
- "eventDeviceFuelDrop": "Padec goriva",
- "eventDeviceFuelIncrease": "Povečanje goriva",
- "eventCommandResult": "Rezultat ukaza",
- "eventGeofenceEnter": "Vstopil v omejeno območje",
- "eventGeofenceExit": "Izšel iz omejenega območja",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Vžig",
- "eventIgnitionOff": "Vžig izključen",
- "eventMaintenance": "Potrebno vzdrževanje",
- "eventTextMessage": "Sporočilo sprejeto",
- "eventDriverChanged": "Sprememba voznika",
- "eventMedia": "Mediji",
- "eventsScrollToLast": "Pomakni se na zadnje",
- "eventsSoundEvents": "Zvok dogodka",
- "eventsSoundAlarms": "Zvok alarma",
- "alarmGeneral": "Splošno",
- "alarmSos": "SOS",
- "alarmVibration": "Vibracije",
- "alarmMovement": "Premikanje",
- "alarmLowspeed": "Nizka hitrost",
- "alarmOverspeed": "Prekoračitev hitrosti",
- "alarmFallDown": "Padec",
- "alarmLowPower": "Nizka napetost napajanja",
- "alarmLowBattery": "Baterija skoraj izpraznjena",
- "alarmFault": "Napaka",
- "alarmPowerOff": "Izklop",
- "alarmPowerOn": "Vklop",
- "alarmDoor": "Vrata",
- "alarmLock": "Zakleni",
- "alarmUnlock": "Odkleni",
- "alarmGeofence": "Omejeno območje",
- "alarmGeofenceEnter": "Vstop v omejeno območje",
- "alarmGeofenceExit": "Izhod iz omejenega območja",
- "alarmGpsAntennaCut": "GPS Antena prekinjena",
- "alarmAccident": "Nesreča",
- "alarmTow": "Vleka",
- "alarmIdle": "Neaktiven",
- "alarmHighRpm": "Visoki obrati",
- "alarmHardAcceleration": "Močno pospeševanje",
- "alarmHardBraking": "Močno zaviranje",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Prekinitev napajanja",
- "alarmPowerRestored": "Napajanje obnovljeno",
- "alarmJamming": "Motnja",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Parkiranje",
- "alarmBonnet": "Pokrov motorja",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Odstranjujem",
- "notificationType": "Tip obvestil",
- "notificationAlways": "Vse naprave",
- "notificationNotificators": "Kanali",
- "notificatorCommand": "Ukaz",
- "notificatorWeb": "Splet",
- "notificatorMail": "Elektronska pošta",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Ponovi",
- "reportCombined": "Kombinirano",
- "reportRoute": "Pot",
- "reportEvents": "Dogodki",
- "reportTrips": "Poti",
- "reportStops": "Postanki",
- "reportSummary": "Povzetek",
- "reportDaily": "Dnevni povzetek",
- "reportChart": "Graf",
- "reportConfigure": "Nastavi",
- "reportEventTypes": "Tipi dogodkov",
- "reportChartType": "Tip grafa",
- "reportShowMarkers": "Prikaži oznake",
- "reportExport": "Izvozi",
- "reportEmail": "Pošlji po e-pošti",
- "reportSchedule": "Urnik",
- "reportPeriod": "Obdobje",
- "reportCustom": "Poljubno",
- "reportToday": "Danes",
- "reportYesterday": "Včeraj",
- "reportThisWeek": "Ta teden",
- "reportPreviousWeek": "Prejšnji teden",
- "reportThisMonth": "Ta mesec",
- "reportPreviousMonth": "Prejšnji mesec",
- "reportDeviceName": "Ime naprave",
- "reportAverageSpeed": "Povprečna hitrost",
- "reportMaximumSpeed": "Najvišja hitrost",
- "reportEngineHours": "Motorinh ur",
- "reportDuration": "Trajanje",
- "reportStartDate": "Datum začetka",
- "reportStartTime": "Začetni čas",
- "reportStartAddress": "Začetni naslov",
- "reportEndTime": "Končni čas",
- "reportEndAddress": "Končni naslov",
- "reportSpentFuel": "Porabljeno gorivo",
- "reportStartOdometer": "Začetno stanje števca",
- "reportEndOdometer": "Končno stanje števca",
- "statisticsTitle": "Statistika",
- "statisticsCaptureTime": "Začetni čas",
- "statisticsActiveUsers": "Aktivni uporabniki",
- "statisticsActiveDevices": "Aktivne naprave",
- "statisticsRequests": "Zahtevkov",
- "statisticsMessagesReceived": "Prejetih sporočil",
- "statisticsMessagesStored": "Shranjenih sporočil",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Puščica",
- "categoryDefault": "Privzeto",
- "categoryAnimal": "Žival",
- "categoryBicycle": "Kolo",
- "categoryBoat": "Čoln",
- "categoryBus": "Avtobus",
- "categoryCar": "Avto",
- "categoryCamper": "Camper",
- "categoryCrane": "Žerjav",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motor",
- "categoryOffroad": "Terenec",
- "categoryPerson": "Oseba",
- "categoryPickup": "Pickup",
- "categoryPlane": "Letalo",
- "categoryShip": "Ladja",
- "categoryTractor": "Traktor",
- "categoryTrain": "Vlak",
- "categoryTram": "Tramvaj",
- "categoryTrolleybus": "Trolejbus",
- "categoryTruck": "Tovornjak",
- "categoryVan": "Kombi",
- "categoryScooter": "Skuter",
- "maintenanceStart": "Začetek",
- "maintenancePeriod": "Obdobje"
-} \ No newline at end of file
diff --git a/web/l10n/sq.json b/web/l10n/sq.json
deleted file mode 100644
index 8b77004a..00000000
--- a/web/l10n/sq.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Ngarkim…",
- "sharedHide": "Hide",
- "sharedSave": "Ruaj",
- "sharedUpload": "Upload",
- "sharedSet": "Set",
- "sharedCancel": "Anullim",
- "sharedCopy": "Copy",
- "sharedAdd": "Shto",
- "sharedEdit": "Ndrysho",
- "sharedRemove": "Hiq",
- "sharedRemoveConfirm": "Hiq skedarin",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "km",
- "sharedMi": "Milje",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "Nyje",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Orë",
- "sharedMinute": "Minuta",
- "sharedSecond": "Sekonda",
- "sharedDays": "days",
- "sharedHours": "hours",
- "sharedMinutes": "minutes",
- "sharedDecimalDegrees": "Decimal Degrees",
- "sharedDegreesDecimalMinutes": "Degrees Decimal Minutes",
- "sharedDegreesMinutesSeconds": "Degrees Minutes Seconds",
- "sharedName": "Emri",
- "sharedDescription": "Description",
- "sharedSearch": "Kërkim",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Geofence",
- "sharedGeofences": "Geofences",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Notifications",
- "sharedNotification": "Notification",
- "sharedAttributes": "Attributes",
- "sharedAttribute": "Attribute",
- "sharedDrivers": "Drivers",
- "sharedDriver": "Driver",
- "sharedArea": "Area",
- "sharedSound": "Notification Sound",
- "sharedType": "Type",
- "sharedDistance": "Distance",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Get Map State",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "Expression",
- "sharedDevice": "Device",
- "sharedTest": "Test",
- "sharedTestNotification": "Send Test Notification",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Calendar",
- "sharedCalendars": "Calendars",
- "sharedFile": "File",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Select File",
- "sharedPhone": "Phone",
- "sharedRequired": "Required",
- "sharedPreferences": "Preferences",
- "sharedPermissions": "Permissions",
- "sharedConnections": "Connections",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Number",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Timezone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Speed Limit",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Report: Ignore Odometer",
- "attributeWebReportColor": "Web: Report Color",
- "attributeDevicePassword": "Device Password",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "Color",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Gabim",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "Gabim lidhjeje",
- "errorSocket": "Web socket connection error",
- "errorZero": "Can't be zero",
- "userEmail": "Email",
- "userPassword": "Fjalëkalimi",
- "userAdmin": "Administratori",
- "userRemember": "Remember",
- "userExpirationTime": "Expiration",
- "userDeviceLimit": "Device Limit",
- "userUserLimit": "User Limit",
- "userDeviceReadonly": "Device Readonly",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Hyrje",
- "loginLanguage": "Gjuha",
- "loginReset": "Reset Password",
- "loginRegister": "Regjistrim",
- "loginLogin": "Lidhu",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Adresë Email-i ose fjalëkalim i gabuar",
- "loginCreated": "Përdoruesi i ri u regjistrua",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Shkëputu",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Gjendja e pajisjeve",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Pajisjet",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifikues",
- "deviceModel": "Model",
- "deviceContact": "Contact",
- "deviceCategory": "Category",
- "deviceLastUpdate": "Përditësimi i fundit",
- "deviceCommand": "Komandë",
- "deviceFollow": "Ndjek",
- "deviceTotalDistance": "Total Distance",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Unknown",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Grup",
- "groupParent": "Grup",
- "groupNoGroup": "Pa Grup",
- "settingsTitle": "Parametra",
- "settingsUser": "Llogari",
- "settingsGroups": "Grupe",
- "settingsServer": "Rrjeti",
- "settingsUsers": "Përdorues",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "Formë 12-orëshe",
- "settingsCoordinateFormat": "Coordinates Format",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Raporte",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Pajisje",
- "reportGroup": "Group",
- "reportFrom": "Nga",
- "reportTo": "Tek",
- "reportShow": "Shfaqje",
- "reportClear": "Pastrim",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "I vlefshëm",
- "positionAccuracy": "Accuracy",
- "positionLatitude": "Gjerësi Gjeografike",
- "positionLongitude": "Gjatësi Gjeografike",
- "positionAltitude": "Lartësia",
- "positionSpeed": "Shpejtësia",
- "positionCourse": "Itinerari (Rruga)",
- "positionAddress": "Adresa",
- "positionProtocol": "Protokolli",
- "positionDistance": "Distance",
- "positionRpm": "RPM",
- "positionFuel": "Fuel",
- "positionPower": "Power",
- "positionBattery": "Battery",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Event",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hours",
- "positionSteps": "Steps",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Battery Level",
- "positionFuelConsumption": "Fuel Consumption",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Ignition",
- "positionFlags": "Flags",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Motion",
- "positionArmed": "Armed",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Device Temperature",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Command",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Server-Parametrat",
- "serverZoom": "Fokus",
- "serverRegistration": "Regjistrim",
- "serverReadonly": "Vetëm për lexim",
- "serverForceSettings": "Force Settings",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Harta",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Zgjedhje harte",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polygon",
- "mapShapeCircle": "Circle",
- "mapShapePolyline": "Polyline",
- "mapLiveRoutes": "Live Routes",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Gjëndja",
- "stateName": "Atribut",
- "stateValue": "Vlera",
- "commandTitle": "Komandë",
- "commandSend": "Dërgo",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "Njësi",
- "commandCustom": "Custom command",
- "commandDeviceIdentification": "Device Identification",
- "commandPositionSingle": "Single Reporting",
- "commandPositionPeriodic": "Raporte periodike",
- "commandPositionStop": "Ndalo raportin",
- "commandEngineStop": "Ndalo punën",
- "commandEngineResume": "Rinis",
- "commandAlarmArm": "Arm Alarm",
- "commandAlarmDisarm": "Disarm Alarm",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Set Timezone",
- "commandRequestPhoto": "Request Photo",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Reboot Device",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Send SMS",
- "commandSendUssd": "Send USSD",
- "commandSosNumber": "Set SOS Number",
- "commandSilenceTime": "Set Silence Time",
- "commandSetPhonebook": "Set Phonebook",
- "commandVoiceMessage": "Voice Message",
- "commandOutputControl": "Output Control",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Set Indicator",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Frekuenca",
- "commandTimezone": "Timezone Offset",
- "commandMessage": "Message",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Data",
- "commandIndex": "Index",
- "commandPhone": "Phone Number",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "All Events",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Command result",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Maintenance required",
- "eventTextMessage": "Text message received",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Type of Notification",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Route",
- "reportEvents": "Events",
- "reportTrips": "Trips",
- "reportStops": "Stops",
- "reportSummary": "Summary",
- "reportDaily": "Daily Summary",
- "reportChart": "Chart",
- "reportConfigure": "Configure",
- "reportEventTypes": "Event Types",
- "reportChartType": "Chart Type",
- "reportShowMarkers": "Show Markers",
- "reportExport": "Export",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "Device Name",
- "reportAverageSpeed": "Average Speed",
- "reportMaximumSpeed": "Maximum Speed",
- "reportEngineHours": "Engine Hours",
- "reportDuration": "Duration",
- "reportStartDate": "Start Date",
- "reportStartTime": "Start Time",
- "reportStartAddress": "Start Address",
- "reportEndTime": "End Time",
- "reportEndAddress": "End Address",
- "reportSpentFuel": "Spent Fuel",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Statistics",
- "statisticsCaptureTime": "Capture Time",
- "statisticsActiveUsers": "Active Users",
- "statisticsActiveDevices": "Active Devices",
- "statisticsRequests": "Requests",
- "statisticsMessagesReceived": "Messages Received",
- "statisticsMessagesStored": "Messages Stored",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Arrow",
- "categoryDefault": "Default",
- "categoryAnimal": "Animal",
- "categoryBicycle": "Bicycle",
- "categoryBoat": "Boat",
- "categoryBus": "Bus",
- "categoryCar": "Car",
- "categoryCamper": "Camper",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "Motorcycle",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Plane",
- "categoryShip": "Ship",
- "categoryTractor": "Tractor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Truck",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/sr.json b/web/l10n/sr.json
deleted file mode 100644
index a23fc3ee..00000000
--- a/web/l10n/sr.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Učitavanje...",
- "sharedHide": "Sakrij",
- "sharedSave": "Sačuvaj",
- "sharedUpload": "Učitaj",
- "sharedSet": "Podesi",
- "sharedCancel": "Odustani",
- "sharedCopy": "Kopiraj",
- "sharedAdd": "Dodaj",
- "sharedEdit": "Podesi",
- "sharedRemove": "Ukloni",
- "sharedRemoveConfirm": "Ukloniti jedinicu?",
- "sharedNoData": "Nema podataka",
- "sharedSubject": "Tema",
- "sharedYes": "Da",
- "sharedNo": "Ne",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Čas",
- "sharedMinute": "Minut",
- "sharedSecond": "Sekunda",
- "sharedDays": "dana",
- "sharedHours": "sata/i",
- "sharedMinutes": "minuta",
- "sharedDecimalDegrees": "Decimalni Stepeni",
- "sharedDegreesDecimalMinutes": "Minuti Decimalnih stepeni",
- "sharedDegreesMinutesSeconds": "Sekunde decimalnih stepeni",
- "sharedName": "Ime",
- "sharedDescription": "Opis",
- "sharedSearch": "Traži",
- "sharedIconScale": "Razmera Ikonice",
- "sharedGeofence": "Geoograda",
- "sharedGeofences": "Geoograde",
- "sharedCreateGeofence": "Napravi Geoogradu",
- "sharedNotifications": "Obaveštenja",
- "sharedNotification": "Obaveštenja",
- "sharedAttributes": "Osobine",
- "sharedAttribute": "Osobina",
- "sharedDrivers": "Vozači",
- "sharedDriver": "Vozač",
- "sharedArea": "Oblast",
- "sharedSound": "Zvuk Notifikacije",
- "sharedType": "Tip",
- "sharedDistance": "Razdaljina",
- "sharedHourAbbreviation": "č",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "L",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Litar",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "L/h",
- "sharedGetMapState": "Stanje mape",
- "sharedComputedAttribute": "Izračunati atribut",
- "sharedComputedAttributes": "Izračunati atributi",
- "sharedCheckComputedAttribute": "Proveri Izračunati atribut",
- "sharedExpression": "Izraz",
- "sharedDevice": "Uređaj",
- "sharedTest": "Test",
- "sharedTestNotification": "Pošalji Test Poruku",
- "sharedTestNotificators": "Test Kanali",
- "sharedTestExpression": "Test izraz",
- "sharedCalendar": "Kalendar",
- "sharedCalendars": "Kalendari",
- "sharedFile": "Fajl",
- "sharedSearchDevices": "Pretraži uređaje",
- "sharedSortBy": "Poređaj po",
- "sharedFilterMap": "Filter na Mapi",
- "sharedSelectFile": "Odaberi fajl",
- "sharedPhone": "Telefon",
- "sharedRequired": "Obavezno",
- "sharedPreferences": "Podešavanja",
- "sharedPermissions": "Dozvole",
- "sharedConnections": "Konekcije",
- "sharedExtra": "Dodatno",
- "sharedPrimary": "Primarno",
- "sharedSecondary": "Sekundarni",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Broj",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Vremenska zona",
- "sharedInfoTitle": "Informacija",
- "sharedSavedCommand": "Sačuvana Komanda ",
- "sharedSavedCommands": "Sačuvane komande ",
- "sharedNew": "Nov... ",
- "sharedShowAddress": "Prikaži adresu",
- "sharedShowDetails": "Više detalja",
- "sharedDisabled": "Onemogućeno",
- "sharedMaintenance": "Održavanje",
- "sharedDeviceAccumulators": "Akumulatori",
- "sharedAlarms": "Alarmi",
- "sharedLocation": "Lokacija",
- "sharedImport": "Uvoz",
- "sharedColumns": "Kolone",
- "sharedDropzoneText": "Prevuci file i pusti ili klikni",
- "sharedLogs": "Dnevnici",
- "sharedLink": "Link",
- "calendarSimple": "Jednostavno",
- "calendarRecurrence": "Ponavljanje",
- "calendarOnce": "Jednom",
- "calendarDaily": "Dnevno",
- "calendarWeekly": "Nedeljno",
- "calendarMonthly": "Mesečno",
- "calendarDays": "Dani",
- "calendarSunday": "Nedelja",
- "calendarMonday": "Ponedeljak",
- "calendarTuesday": "Utorak",
- "calendarWednesday": "Sreda",
- "calendarThursday": "Četvrtak",
- "calendarFriday": "Petak",
- "calendarSaturday": "Subota",
- "attributeShowGeofences": "Prikaži Geoograde",
- "attributeSpeedLimit": "Ograničenje brzine",
- "attributeFuelDropThreshold": "Granica opadanja goriva",
- "attributeFuelIncreaseThreshold": "Granica dodavanja goriva",
- "attributePolylineDistance": "Višelinijska udaljenost",
- "attributeReportIgnoreOdometer": "Izveštaj: Ignoriši odometar",
- "attributeWebReportColor": "Web: Boja izveštaja",
- "attributeDevicePassword": "Lozinka uređaja",
- "attributeDeviceImage": "Slika uređaja",
- "attributeDeviceInactivityStart": "Početak neaktivnosti uređaja",
- "attributeDeviceInactivityPeriod": "Period neaktivnosti uređaja",
- "attributeProcessingCopyAttributes": "Proces: Kopiraj atribute",
- "attributeColor": "Boja",
- "attributeWebLiveRouteLength": "Web: Dužina rute",
- "attributeWebSelectZoom": "Web:Zumiraj izabrano",
- "attributeWebMaxZoom": "Web: Maksimalno uvećanje",
- "attributeTelegramChatId": "Telegram čet ID",
- "attributePushoverUserKey": "Pritisnite korisnički ključ",
- "attributePushoverDeviceNames": "Pritisni ime uređaja",
- "attributeMailSmtpHost": "Mail: SMTP host",
- "attributeMailSmtpPort": "Mail: SMTP port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL omogući",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protokoli",
- "attributeMailSmtpFrom": "Mail: SMTP Od",
- "attributeMailSmtpAuth": "Mail: SMTP Auten Omogući",
- "attributeMailSmtpUsername": "Mail: SMTP Korisničko ime",
- "attributeMailSmtpPassword": "Mail: SMTP Lozinka",
- "attributeUiDisableSavedCommands": "Komande",
- "attributeUiDisableAttributes": "Kor.Int.: Onemogući atribute",
- "attributeUiDisableGroups": "UI: Onemogući grupe",
- "attributeUiDisableEvents": "UI:Onemogući Dogadjaje",
- "attributeUiDisableVehicleFeatures": "KI: Onemogući Karakteristike vozila",
- "attributeUiDisableDrivers": "UI: Onemogući Vozače",
- "attributeUiDisableComputedAttributes": "Kor.Int. : Onemogući Izračunate atribute",
- "attributeUiDisableCalendars": "UI: Onemogući Kalendare",
- "attributeUiDisableMaintenance": "Korisnički interfejs: Onemogući Održavanje",
- "attributeUiHidePositionAttributes": "KI:Sakrij poziciju atributa ",
- "attributeUiDisableLoginLanguage": "UI: Onemogući jezik za prijavu",
- "attributeNotificationTokens": "Tokeni obaveštenja",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Greška",
- "errorGeneral": "Nevažeći parametri ili kršenje ograničenja",
- "errorConnection": "Greška u konekciji",
- "errorSocket": "Greška u konekciji",
- "errorZero": "Ne može biti nula",
- "userEmail": "Email",
- "userPassword": "Lozinka",
- "userAdmin": "Admin",
- "userRemember": "Zapamti",
- "userExpirationTime": "Ističe",
- "userDeviceLimit": "Limit uređaja",
- "userUserLimit": "Limit korisnika",
- "userDeviceReadonly": "Uređaj readonly",
- "userLimitCommands": "Limitiraj Komande",
- "userDisableReports": "Onemogući izveštaje",
- "userFixedEmail": "Nema Email promena",
- "userToken": "Znak",
- "userDeleteAccount": "Izbriši nalog",
- "userTemporary": "Privremeno",
- "loginTitle": "Prijava",
- "loginLanguage": "Jezik",
- "loginReset": "Resetuj Lozinku",
- "loginRegister": "Registruj se",
- "loginLogin": "Prijava",
- "loginOpenId": "Prijava sa OpenID",
- "loginFailed": "Neispravna email adresa ili lozinka",
- "loginCreated": "Novi korisnik je registrovan",
- "loginResetSuccess": "Proverite Vaš email",
- "loginUpdateSuccess": "Nova lozinka je postavljena",
- "loginLogout": "Odjava",
- "loginLogo": "Logo",
- "loginTotpCode": "Jednokratni kod lozinke",
- "loginTotpKey": "Jednokratni ključ lozinke",
- "devicesAndState": "Uređaji i Stanje ",
- "deviceSelected": "Izabrani uređaj",
- "deviceTitle": "Uređaji",
- "devicePrimaryInfo": "Naziv uređaja",
- "deviceSecondaryInfo": "Detalji uređaj",
- "deviceIdentifier": "Identifikator",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategorija",
- "deviceLastUpdate": "Poslednji kontakt",
- "deviceCommand": "Komanda",
- "deviceFollow": "Prati",
- "deviceTotalDistance": "Ukupno rastojanje",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Dostupan",
- "deviceStatusOffline": "Nedostupan",
- "deviceStatusUnknown": "Nepoznato",
- "deviceRegisterFirst": "Registruj svoj prvi uređaj",
- "deviceIdentifierHelp": "IMEI, serijski broj, ili neki drugi ID. Mora da bude isti kao identifikator koji uređaj koristi na serveru.",
- "deviceShare": "Podeli Uređaj",
- "groupDialog": "Grupa",
- "groupParent": "Grupa",
- "groupNoGroup": "Nema grupe",
- "settingsTitle": "Podešavanja",
- "settingsUser": "Nalog",
- "settingsGroups": "Grupe",
- "settingsServer": "Server",
- "settingsUsers": "Korisnici",
- "settingsDistanceUnit": "Jedinica razdaljine",
- "settingsAltitudeUnit": "Jedinica visine",
- "settingsSpeedUnit": "Jedinica brzine",
- "settingsVolumeUnit": "Jedinica zapremine",
- "settingsTwelveHourFormat": "12-časovni format",
- "settingsCoordinateFormat": "Koordinatni Format",
- "settingsServerVersion": "Verzija servera",
- "settingsAppVersion": "Verzija aplikacije",
- "settingsConnection": "Konekcija",
- "settingsDarkMode": "Taman mod",
- "settingsTotpEnable": "Ommogući jednokratnu lozinku",
- "settingsTotpForce": "Forsiraj jednokratnu lozinku",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Interval Ažuriranja",
- "settingsUpdateAvailable": "Postoji novo ažuriranje",
- "settingsSupport": "Podrška",
- "reportTitle": "Izveštaji",
- "reportScheduled": "Zakazani izveštaji",
- "reportDevice": "Uređaj",
- "reportGroup": "Grupa",
- "reportFrom": "Od",
- "reportTo": "Do",
- "reportShow": "Prikaži",
- "reportClear": "Izbriši",
- "linkGoogleMaps": "Google Mape",
- "linkAppleMaps": "Apple Mape",
- "linkStreetView": "Pogled na ulicu",
- "positionFixTime": "Vreme javljanja",
- "positionDeviceTime": "Vreme na uređaju",
- "positionServerTime": "Vreme na serveru",
- "positionValid": "Ispravno",
- "positionAccuracy": "Tačnost",
- "positionLatitude": "Geografska širina",
- "positionLongitude": "Geografska dužina",
- "positionAltitude": "Visina",
- "positionSpeed": "Brzina",
- "positionCourse": "Pravac",
- "positionAddress": "Adresa",
- "positionProtocol": "Protokol",
- "positionDistance": "Razdaljina",
- "positionRpm": "Obrtaji",
- "positionFuel": "Gorivo",
- "positionPower": "Napon",
- "positionBattery": "Baterija",
- "positionRaw": "Neobrađen",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Sateliti",
- "positionSatVisible": "Vidiljivi sateliti",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roming",
- "positionEvent": "Događaj",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Kilometar sat",
- "positionServiceOdometer": "Servisni odometar",
- "positionTripOdometer": "Putni odometar",
- "positionHours": "Sati",
- "positionSteps": "Koraci",
- "positionInput": "Ulaz",
- "positionHeartRate": "Otkucaj srca",
- "positionOutput": "Izlaz",
- "positionBatteryLevel": "Jačina baterije",
- "positionFuelConsumption": "Ukupna potrošnja",
- "positionRfid": "RFID",
- "positionVersionFw": "Verzija firmvera",
- "positionVersionHw": "Verzija hardvera",
- "positionIgnition": "Kontakt",
- "positionFlags": "Oznake",
- "positionCharge": "Punjenje",
- "positionIp": "IP adresa",
- "positionArchive": "Arhiva",
- "positionVin": "Broj šasije",
- "positionApproximate": "Približno",
- "positionThrottle": "Gas",
- "positionMotion": "Kretanje",
- "positionArmed": "Naoružan",
- "positionAcceleration": "Ubrzanje",
- "positionTemp": "Temperatura",
- "positionDeviceTemp": "Temperatura uređaja",
- "positionCoolantTemp": "Temperatura antifriza",
- "positionOperator": "Operator",
- "positionCommand": "Komanda",
- "positionBlocked": "Blokirano",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD brzina",
- "positionObdOdometer": "OBD odometar",
- "positionDrivingTime": "Vreme vožnje",
- "positionDriverUniqueId": "Jedinstveni ID vozača",
- "positionCard": "Kartica",
- "positionImage": "Slika",
- "positionVideo": "Video",
- "positionAudio": "Zvuk",
- "serverTitle": "Podešavanja Servera",
- "serverZoom": "Zumiranje",
- "serverRegistration": "Registracija",
- "serverReadonly": "Readonly verzija",
- "serverForceSettings": "Obavezna podešavanja",
- "serverAnnouncement": "Objava",
- "serverName": "Ime Servera",
- "serverDescription": "Opis Servera",
- "serverColorPrimary": "Osnovna Boja",
- "serverColorSecondary": "Sekundarna Boja",
- "serverLogo": "Logo slika",
- "serverLogoInverted": "Obrnuta logo slika",
- "serverChangeDisable": "Onemogući Server promene",
- "serverDisableShare": "Onemogući deljenje vozila",
- "mapTitle": "Mapa",
- "mapActive": "Aktivne mape",
- "mapOverlay": "Preklapanje mape",
- "mapOverlayCustom": "Prilagođen prikaz",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Padavine",
- "mapOpenWeatherPressure": "OpenWeather Pritisak",
- "mapOpenWeatherWind": "OpenWeather Vetar",
- "mapOpenWeatherTemperature": "OpenWeather Temperatura",
- "mapLayer": "Vrsta Mape",
- "mapCustom": "Prilagođeno (XYZ)",
- "mapCustomArcgis": "Prilagođeno (ArcGIS)",
- "mapCustomLabel": "Prilagođena mapa",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hibrid",
- "mapGoogleSatellite": "Google Satelit",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Hibrid Mapa",
- "mapBaidu": "Badu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Mapa",
- "mapYandexSat": "Yandex Satelit",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Ulice",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Saobraćaj",
- "mapTomTomIncidents": "TomTom Saobraćajni incidenti",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satelit",
- "mapHereFlow": "Here Saobraćaj",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Višeugao",
- "mapShapeCircle": "Krug",
- "mapShapePolyline": "Višelinijski",
- "mapLiveRoutes": "Validne rute",
- "mapDirection": "Pokaži pravac",
- "mapCurrentLocation": "Trenutna lokacija",
- "mapPoiLayer": "POI sloj",
- "mapClustering": "Klasterovanje markera",
- "mapOnSelect": "Prikaži Mapu pri selekciji",
- "mapDefault": "Osnovna mapa",
- "stateTitle": "Stanje",
- "stateName": "Parametar",
- "stateValue": "Vrednost",
- "commandTitle": "Komanda",
- "commandSend": "Pošalji",
- "commandSent": "Komanda poslata",
- "commandQueued": "Komanda na čekanju",
- "commandUnit": "Jedinica",
- "commandCustom": "Prilagođena komanda",
- "commandDeviceIdentification": "Identifikacija uređaja",
- "commandPositionSingle": "Izveštaj za jednog",
- "commandPositionPeriodic": "Periodično izveštavanje",
- "commandPositionStop": "Prekini izveštavanja",
- "commandEngineStop": "Zaustavi motor",
- "commandEngineResume": "Pokreni motor",
- "commandAlarmArm": "Omogući alarm",
- "commandAlarmDisarm": "Onemogući alarm",
- "commandAlarmDismiss": "Onemogući alarm",
- "commandSetTimezone": "Podesi vremensku zonu",
- "commandRequestPhoto": "Zahtevaj fotografiju",
- "commandPowerOff": "Isključi uređjaj",
- "commandRebootDevice": "Ponovo pokreni uređaj",
- "commandFactoryReset": "Fabrički reset",
- "commandSendSms": "Pošalji SMS",
- "commandSendUssd": "Pošalji USSD",
- "commandSosNumber": "Podesi SOS broj",
- "commandSilenceTime": "Podesi nečujno vreme ",
- "commandSetPhonebook": "Podesi kontakte",
- "commandVoiceMessage": "Glasovna poruka",
- "commandOutputControl": "Kontrola izlaza",
- "commandVoiceMonitoring": "Monitoring glasa",
- "commandSetAgps": "Podesi AGPS",
- "commandSetIndicator": "Postavi indikator",
- "commandConfiguration": "Konfiguracija",
- "commandGetVersion": "Proveri verziju",
- "commandFirmwareUpdate": "Ažuriraj firmver",
- "commandSetConnection": "Podesi konekciju",
- "commandSetOdometer": "Podesi odometar",
- "commandGetModemStatus": "Zatraži status modema",
- "commandGetDeviceStatus": "Zatraži status uređaja",
- "commandSetSpeedLimit": "Podesi ograničenje brzine",
- "commandModePowerSaving": "Mod čuvanja energije",
- "commandModeDeepSleep": "Mod dubokog spavanja",
- "commandAlarmGeofence": "Postavite alarm geoograde",
- "commandAlarmBattery": "Podesite alarm baterije",
- "commandAlarmSos": "Postavite SOS alarm",
- "commandAlarmRemove": "Postavite alarm uklanjanja",
- "commandAlarmClock": "Postavite alarm sata",
- "commandAlarmSpeed": "Postavite alarm brzine",
- "commandAlarmFall": "Postavite alarm padanja",
- "commandAlarmVibration": "Postavite alarm vibracije",
- "commandFrequency": "Frekvencija",
- "commandTimezone": "Vremenska zona ",
- "commandMessage": "Poruka",
- "commandRadius": "Radius",
- "commandEnable": "Omogući",
- "commandData": "Podaci",
- "commandIndex": "Lista",
- "commandPhone": "Broj telefona",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Svi događaji",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status nepoznat",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Uređaj je neaktivan",
- "eventQueuedCommandSent": "Komanda na čekanju",
- "eventDeviceMoving": "Uređaj u pokretu",
- "eventDeviceStopped": "Uređaj zaustavljen",
- "eventDeviceOverspeed": "Granica brzine je prekoračena",
- "eventDeviceFuelDrop": "Pad nivoa goriva",
- "eventDeviceFuelIncrease": "Dolivanje goriva",
- "eventCommandResult": "Stanje komande",
- "eventGeofenceEnter": "Ulazak u geoogradu",
- "eventGeofenceExit": "Izlazak iz geoograde",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Kontakt uključen",
- "eventIgnitionOff": "Kontakt isključen",
- "eventMaintenance": "Potrebno održavanje",
- "eventTextMessage": "Tekstualma poruka primljena",
- "eventDriverChanged": "Vozač promenjen",
- "eventMedia": "Medija",
- "eventsScrollToLast": "Skroluj do zadnjeg",
- "eventsSoundEvents": "Zvuci događaja",
- "eventsSoundAlarms": "Zvuci alarma",
- "alarmGeneral": "Opšte",
- "alarmSos": "SOS",
- "alarmVibration": "Vibracija",
- "alarmMovement": "Kretanje",
- "alarmLowspeed": "Mala brzina",
- "alarmOverspeed": "Prekoračenje brzine",
- "alarmFallDown": "Pad",
- "alarmLowPower": "Nizak napon",
- "alarmLowBattery": "Slaba baterija",
- "alarmFault": "Greška",
- "alarmPowerOff": "Alarm isključen",
- "alarmPowerOn": "Alarm uključen",
- "alarmDoor": "Vrata",
- "alarmLock": "Zaključan",
- "alarmUnlock": "Otključan",
- "alarmGeofence": "Geoograda",
- "alarmGeofenceEnter": "Ulazak u geeogradu",
- "alarmGeofenceExit": "Izlaz iz geoograde",
- "alarmGpsAntennaCut": "GPS antena u prekidu",
- "alarmAccident": "Nesreća",
- "alarmTow": "Odvlačenje",
- "alarmIdle": "Na čekanju",
- "alarmHighRpm": "Visoki obrtaji",
- "alarmHardAcceleration": "Naglo ubrzanje",
- "alarmHardBraking": "Naglo kočenje",
- "alarmHardCornering": "Naglo skretanje",
- "alarmLaneChange": "Promena trake",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Nema napajanja",
- "alarmPowerRestored": "Napajanje obnovljeno",
- "alarmJamming": "Ometanje signala",
- "alarmTemperature": "Temperatura",
- "alarmParking": "Parking",
- "alarmBonnet": "Hauba",
- "alarmFootBrake": "Nožna kočnica",
- "alarmFuelLeak": "Curenje goriva",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Uklanjanje",
- "notificationType": "Tip obaveštenja",
- "notificationAlways": "Svi uređaji",
- "notificationNotificators": "Kanali",
- "notificatorCommand": "Komanda",
- "notificatorWeb": "Internet",
- "notificatorMail": "Pošta",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Istorija kretanja",
- "reportCombined": "Kombinovano",
- "reportRoute": "Ruta",
- "reportEvents": "Događaji",
- "reportTrips": "Vožnje",
- "reportStops": "Zaustavljanja",
- "reportSummary": "Izveštaj",
- "reportDaily": "Dnevni pregled",
- "reportChart": "Grafikon",
- "reportConfigure": "Konfiguracija",
- "reportEventTypes": "Tip događaja",
- "reportChartType": "Tip grafikona",
- "reportShowMarkers": "Pokaži markere",
- "reportExport": "Izvezi",
- "reportEmail": "Email Izveštaj",
- "reportSchedule": "Zakazivanje",
- "reportPeriod": "Period",
- "reportCustom": "Prilagodjeno",
- "reportToday": "Danas",
- "reportYesterday": "Juče",
- "reportThisWeek": "Ove nedelje",
- "reportPreviousWeek": "Prethodna nedelja",
- "reportThisMonth": "Ovaj mesec",
- "reportPreviousMonth": "Prethodni mesec",
- "reportDeviceName": "Ime uređaja",
- "reportAverageSpeed": "Prosečna brzina",
- "reportMaximumSpeed": "Maksimalna brzina",
- "reportEngineHours": "Radni sati",
- "reportDuration": "Trajanje",
- "reportStartDate": "Početni datum",
- "reportStartTime": "Startno vreme",
- "reportStartAddress": "Početna adresa",
- "reportEndTime": "Završno vreme",
- "reportEndAddress": "Krajnja adresa",
- "reportSpentFuel": "Potrošeno goriva",
- "reportStartOdometer": "Odometar početak",
- "reportEndOdometer": "Odometar kraj",
- "statisticsTitle": "Statistika",
- "statisticsCaptureTime": "Vreme slikanja",
- "statisticsActiveUsers": "Aktivni korisnici",
- "statisticsActiveDevices": "Aktivni uređaji",
- "statisticsRequests": "Zahtevi",
- "statisticsMessagesReceived": "Primljene poruke",
- "statisticsMessagesStored": "Sačuvane poruke",
- "statisticsGeocoder": "Geokoder upiti",
- "statisticsGeolocation": "Geolokacijski upiti",
- "categoryArrow": "Strelica",
- "categoryDefault": "Osnovni",
- "categoryAnimal": "Životinja",
- "categoryBicycle": "Bicikl",
- "categoryBoat": "Brod",
- "categoryBus": "Autobus",
- "categoryCar": "Auto",
- "categoryCamper": "Kamper",
- "categoryCrane": "Kran",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motor",
- "categoryOffroad": "Terensko",
- "categoryPerson": "Osoba",
- "categoryPickup": "Pikap",
- "categoryPlane": "Avion",
- "categoryShip": "Brod",
- "categoryTractor": "Traktor",
- "categoryTrain": "Voz",
- "categoryTram": "Tramvaj",
- "categoryTrolleybus": "Trolejbus",
- "categoryTruck": "Kamion",
- "categoryVan": "Kombi",
- "categoryScooter": "Skuter",
- "maintenanceStart": "Početak",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/sv.json b/web/l10n/sv.json
deleted file mode 100644
index e6ee943b..00000000
--- a/web/l10n/sv.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Laddar...",
- "sharedHide": "Göm",
- "sharedSave": "Spara",
- "sharedUpload": "Upload",
- "sharedSet": "Set",
- "sharedCancel": "Avbryt",
- "sharedCopy": "Copy",
- "sharedAdd": "Lägg till",
- "sharedEdit": "Redigera",
- "sharedRemove": "Radera",
- "sharedRemoveConfirm": "Radera objekt?",
- "sharedNoData": "Data saknas",
- "sharedSubject": "Subject",
- "sharedYes": "Ja",
- "sharedNo": "Nej",
- "sharedKm": "km",
- "sharedMi": "mi",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "tim",
- "sharedMinute": "min",
- "sharedSecond": "sek",
- "sharedDays": "d",
- "sharedHours": "tim",
- "sharedMinutes": "min",
- "sharedDecimalDegrees": "Decimalgrader",
- "sharedDegreesDecimalMinutes": "Decimalgrader Minuter",
- "sharedDegreesMinutesSeconds": "Decimalgrader Sekunder",
- "sharedName": "Namn",
- "sharedDescription": "Beskrivning",
- "sharedSearch": "Sök",
- "sharedIconScale": "Ikonskala",
- "sharedGeofence": "Geofence",
- "sharedGeofences": "Geofences",
- "sharedCreateGeofence": "Skapa Geofence",
- "sharedNotifications": "Notiser",
- "sharedNotification": "Notis",
- "sharedAttributes": "Attributer",
- "sharedAttribute": "Attribut",
- "sharedDrivers": "Förare",
- "sharedDriver": "Förare",
- "sharedArea": "Område",
- "sharedSound": "Ljudnotis",
- "sharedType": "Typ",
- "sharedDistance": "Distans",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gallon",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp.Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Få karttillstånd",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "Uttryck",
- "sharedDevice": "Enhet",
- "sharedTest": "Test",
- "sharedTestNotification": "Skicka testnortis",
- "sharedTestNotificators": "Testkanaler",
- "sharedTestExpression": "Testuttryck",
- "sharedCalendar": "Kalender",
- "sharedCalendars": "Kalendrar",
- "sharedFile": "Fil",
- "sharedSearchDevices": "Sök Enheter",
- "sharedSortBy": "Sortera efter",
- "sharedFilterMap": "Filtrera på kartan",
- "sharedSelectFile": "Välj fil",
- "sharedPhone": "Telefon",
- "sharedRequired": "Nödvändig",
- "sharedPreferences": "Inställningar",
- "sharedPermissions": "Rättigheter",
- "sharedConnections": "Anslutningar",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primär",
- "sharedSecondary": "Sekundär",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Number",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Tidszon",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Sparade kommando",
- "sharedSavedCommands": "Sparade kommandon",
- "sharedNew": "Ny",
- "sharedShowAddress": "Visa Adress",
- "sharedShowDetails": "Mer Detaljer",
- "sharedDisabled": "Inaktiverad",
- "sharedMaintenance": "Underhåll",
- "sharedDeviceAccumulators": "Ackumulatorer",
- "sharedAlarms": "Alarm",
- "sharedLocation": "Plats",
- "sharedImport": "Import",
- "sharedColumns": "Kolumn",
- "sharedDropzoneText": "Dra och släpp en fil här eller klicka",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Enkel",
- "calendarRecurrence": "Upprepning",
- "calendarOnce": "En gång",
- "calendarDaily": "Dagligen",
- "calendarWeekly": "Varje vecka",
- "calendarMonthly": "Varje Månad",
- "calendarDays": "Dagar",
- "calendarSunday": "Söndag",
- "calendarMonday": "Måndag",
- "calendarTuesday": "Tisdag",
- "calendarWednesday": "Onsdag",
- "calendarThursday": "Torsdag",
- "calendarFriday": "Fredag",
- "calendarSaturday": "Lördag",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Hastighetsbegränsning",
- "attributeFuelDropThreshold": "Bränsleminskningströskel",
- "attributeFuelIncreaseThreshold": "Bränsleökningsgräns",
- "attributePolylineDistance": "Polylinedistans",
- "attributeReportIgnoreOdometer": "Rapport: Ignorera Odometer",
- "attributeWebReportColor": "Web: Rapport färg",
- "attributeDevicePassword": "Enhetslösenord",
- "attributeDeviceImage": "Enhetsbild",
- "attributeDeviceInactivityStart": "Enhetens inaktivitetsstart",
- "attributeDeviceInactivityPeriod": "Enhetens inaktivitetslängd",
- "attributeProcessingCopyAttributes": "Processing:",
- "attributeColor": "Färg",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Webb: Maximal Zoom",
- "attributeTelegramChatId": "Telegram Chat-ID",
- "attributePushoverUserKey": "Pushover användarnyckel",
- "attributePushoverDeviceNames": "Pushover Enhetsnamn",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP Från",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Användarnamn",
- "attributeMailSmtpPassword": "Mail: SMTP Lösenord",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Inaktivera attribut",
- "attributeUiDisableGroups": "UI: Inaktivera Grupper",
- "attributeUiDisableEvents": "UI: Inaktivera Händelser",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Inaktivera Förare",
- "attributeUiDisableComputedAttributes": "UI: Inaktivera Beräknade Attribut",
- "attributeUiDisableCalendars": "UI: Inaktivera Kalendrar",
- "attributeUiDisableMaintenance": "UI: Inaktivera Underhåll",
- "attributeUiHidePositionAttributes": "UI: Göm Positionsattribut",
- "attributeUiDisableLoginLanguage": "UI: Inaktivera Loginspråk",
- "attributeNotificationTokens": "Notistoken",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Fel",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "Anslutningsfel",
- "errorSocket": "Anslutningsfel till Web socket",
- "errorZero": "Kan inte vara noll",
- "userEmail": "Epost",
- "userPassword": "Lösenord",
- "userAdmin": "Admin",
- "userRemember": "Kom ihåg",
- "userExpirationTime": "Utgång",
- "userDeviceLimit": "Enhetsbegränsning",
- "userUserLimit": "Användarbegränsning",
- "userDeviceReadonly": "Enhet endast läsbar",
- "userLimitCommands": "Begränsa kommandon",
- "userDisableReports": "Inaktivera Rappporter",
- "userFixedEmail": "Ingen förändring av Email",
- "userToken": "Token",
- "userDeleteAccount": "Ta bor Konto",
- "userTemporary": "Temporary",
- "loginTitle": "Logga in",
- "loginLanguage": "Språk",
- "loginReset": "Återställ Lösenord",
- "loginRegister": "Registrera",
- "loginLogin": "Logga in",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Felaktig epostadress eller lösenord",
- "loginCreated": "Ny användare har blivit registrerad",
- "loginResetSuccess": "Kontrollera din Email",
- "loginUpdateSuccess": "Nytt lösenord är sparat",
- "loginLogout": "Logga ut",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Enhet och tillstånd",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Enhet",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Identifierare",
- "deviceModel": "Model",
- "deviceContact": "Kontakt",
- "deviceCategory": "Kategori",
- "deviceLastUpdate": "Senast uppdaterad",
- "deviceCommand": "Kommando",
- "deviceFollow": "Följ",
- "deviceTotalDistance": "Total distans",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Okänd",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Grupp",
- "groupParent": "Grupp",
- "groupNoGroup": "Ingen grupp",
- "settingsTitle": "Inställningar",
- "settingsUser": "Konto",
- "settingsGroups": "Grupper",
- "settingsServer": "Server",
- "settingsUsers": "Användare",
- "settingsDistanceUnit": "Distansenhet",
- "settingsAltitudeUnit": "Höjdenhet",
- "settingsSpeedUnit": "Hastighetsenhet",
- "settingsVolumeUnit": "Volymenhet",
- "settingsTwelveHourFormat": "12-timmars format",
- "settingsCoordinateFormat": "Kordinatformat",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Rapport",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Enhet",
- "reportGroup": "Grupp",
- "reportFrom": "Från",
- "reportTo": "Till",
- "reportShow": "Visa",
- "reportClear": "Rensa",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Gatuvy",
- "positionFixTime": "Låst tid",
- "positionDeviceTime": "Enhetstid",
- "positionServerTime": "Servertid",
- "positionValid": "Giltig",
- "positionAccuracy": "Noggrannhet",
- "positionLatitude": "Latitud",
- "positionLongitude": "Longitud",
- "positionAltitude": "Höjdnivå",
- "positionSpeed": "Hastighet",
- "positionCourse": "Kurs",
- "positionAddress": "Adress",
- "positionProtocol": "Protokoll",
- "positionDistance": "Distans",
- "positionRpm": "RPM",
- "positionFuel": "Bränsle",
- "positionPower": "Power",
- "positionBattery": "Batteri",
- "positionRaw": "Rå",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Sateliter",
- "positionSatVisible": "Synliga sateliter",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Händelser",
- "positionAlarm": "Larm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip",
- "positionHours": "tim",
- "positionSteps": "Steg",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Batteri nivå",
- "positionFuelConsumption": "Bränsle åtgång",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware version",
- "positionVersionHw": "Hardware version",
- "positionIgnition": "Tändning",
- "positionFlags": "Flaggor",
- "positionCharge": "Laddar",
- "positionIp": "IP",
- "positionArchive": "Arkivera",
- "positionVin": "VIN",
- "positionApproximate": "Uppskattningsvis",
- "positionThrottle": "Gasreglage",
- "positionMotion": "Rörelse",
- "positionArmed": "Larmad",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperatur",
- "positionDeviceTemp": "Enhetstemperatur",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operatör",
- "positionCommand": "Kommando",
- "positionBlocked": "Blockerad ",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "ODB Hastighet",
- "positionObdOdometer": "ODB Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Unikt Förar-id",
- "positionCard": "Card",
- "positionImage": "Bild",
- "positionVideo": "Video",
- "positionAudio": "Ljud",
- "serverTitle": "Serverinställningar",
- "serverZoom": "Zoom",
- "serverRegistration": "Registrera",
- "serverReadonly": "Endast läsbar",
- "serverForceSettings": "Tvinga inställning",
- "serverAnnouncement": "Tillkännagivande",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Karta",
- "mapActive": "Aktiva Kartor",
- "mapOverlay": "Kartöverlägg",
- "mapOverlayCustom": "Specialöverlägg",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API-nyckel",
- "mapOpenWeatherClouds": "OpenWeather Moln",
- "mapOpenWeatherPrecipitation": "OpenWeather Nederbörd",
- "mapOpenWeatherPressure": "OpenWeather Lufttryck",
- "mapOpenWeatherWind": "OpenWeather Vind",
- "mapOpenWeatherTemperature": "OpenWeather Temperatur",
- "mapLayer": "Kartlager",
- "mapCustom": "Special (XYZ)",
- "mapCustomArcgis": "Special (ArcGIS)",
- "mapCustomLabel": "Specialkarta",
- "mapCarto": "Carto grundkarta",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Nyckel",
- "mapBingRoad": "Bing Maps Väg",
- "mapBingAerial": "Bing Maps Flygfoto",
- "mapBingHybrid": "Bing kartor hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex kartor",
- "mapYandexSat": "Yandex satellit",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Bas",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Bas",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Bas",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Polygon",
- "mapShapeCircle": "Cirkel",
- "mapShapePolyline": "Polyline",
- "mapLiveRoutes": "Liverutter",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Nuvarande position",
- "mapPoiLayer": "POI Lager",
- "mapClustering": "Markörssamling",
- "mapOnSelect": "Visa karta på urval",
- "mapDefault": "Default Map",
- "stateTitle": "Status",
- "stateName": "Attribut",
- "stateValue": "Värde",
- "commandTitle": "Kommando",
- "commandSend": "Skicka",
- "commandSent": "Kommando sänt",
- "commandQueued": "Kommando i kö",
- "commandUnit": "Enhet",
- "commandCustom": "Anpassat kommandot",
- "commandDeviceIdentification": "Enhetsidentifikation",
- "commandPositionSingle": "Enkel rapportering",
- "commandPositionPeriodic": "Periodisk rapport",
- "commandPositionStop": "Stoppa rapportering",
- "commandEngineStop": "Motor Stopp",
- "commandEngineResume": "Motor Återuppta",
- "commandAlarmArm": "Slå på larm",
- "commandAlarmDisarm": "Slå av larm",
- "commandAlarmDismiss": "Avvisa larm",
- "commandSetTimezone": "Ställ in tidszon",
- "commandRequestPhoto": "Begär fotografi",
- "commandPowerOff": "Stäng av enheten",
- "commandRebootDevice": "Starta om enhet",
- "commandFactoryReset": "Fabriksåterställning",
- "commandSendSms": "Skicka SMS",
- "commandSendUssd": "Skicka USSD",
- "commandSosNumber": "Ställ in SOS nummer",
- "commandSilenceTime": "Ställ in stilleståndstid",
- "commandSetPhonebook": "Ställ in telefonbok",
- "commandVoiceMessage": "Typ av notis",
- "commandOutputControl": "Utgångskontroll",
- "commandVoiceMonitoring": "Röstövervakning",
- "commandSetAgps": "Ställ in AGPS",
- "commandSetIndicator": "Ställ in indikator",
- "commandConfiguration": "Konfigurering",
- "commandGetVersion": "Hämta version",
- "commandFirmwareUpdate": "Uppdatera programvara",
- "commandSetConnection": "Ställ in anslutning",
- "commandSetOdometer": "Ställ in Odometer",
- "commandGetModemStatus": "Hämta modemstatus",
- "commandGetDeviceStatus": "Hämta enhetsstatus",
- "commandSetSpeedLimit": "Ställ in hastighetsgräns",
- "commandModePowerSaving": "Strömsparläge",
- "commandModeDeepSleep": "Ställ in djupviloläge",
- "commandAlarmGeofence": "Ställ in Geofencealarm",
- "commandAlarmBattery": "Ställ in batterinivåalarm",
- "commandAlarmSos": "Stöll in SOS-larm",
- "commandAlarmRemove": "Ställ in Ta bort larm",
- "commandAlarmClock": "Ställ in klockalarm",
- "commandAlarmSpeed": "Ställ in hastighetslarm",
- "commandAlarmFall": "Ställ in fallarm",
- "commandAlarmVibration": "Ställ in vibrationslarm",
- "commandFrequency": "Frekvens",
- "commandTimezone": "Tidszon Offset",
- "commandMessage": "Meddelande",
- "commandRadius": "Radie",
- "commandEnable": "Aktivera",
- "commandData": "Data",
- "commandIndex": "Register",
- "commandPhone": "Telefonnummer",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Alla event",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status okänd",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Enhet inaktiverad",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Enheten i rörelse",
- "eventDeviceStopped": "Enheten stannade",
- "eventDeviceOverspeed": "Hastighetsgränsen överskreds",
- "eventDeviceFuelDrop": "Bränslenivåminskning",
- "eventDeviceFuelIncrease": "Bränslenivåökning",
- "eventCommandResult": "Kommando resultat",
- "eventGeofenceEnter": "Ankommit geofence",
- "eventGeofenceExit": "Lämnat geofence",
- "eventAlarm": "Larm",
- "eventIgnitionOn": "Tändning påslagen",
- "eventIgnitionOff": "Tändning avslagen",
- "eventMaintenance": "Underhåll krävs",
- "eventTextMessage": "Textmeddelande mottaget",
- "eventDriverChanged": "Förarbyte",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scrolla till sista",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Generellt",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Rörelse",
- "alarmLowspeed": "Låg hastighet",
- "alarmOverspeed": "För hög hastighet",
- "alarmFallDown": "Fall",
- "alarmLowPower": "Låg effekt",
- "alarmLowBattery": "Låg laddnivå",
- "alarmFault": "Fel",
- "alarmPowerOff": "Avstängd",
- "alarmPowerOn": "Påslagen",
- "alarmDoor": "Dörr",
- "alarmLock": "Lås",
- "alarmUnlock": "Lås upp",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Ankom geofence",
- "alarmGeofenceExit": "Lämnade geofence",
- "alarmGpsAntennaCut": "Avklippt GPS-antenn",
- "alarmAccident": "Olycka",
- "alarmTow": "Bogsera",
- "alarmIdle": "På tomgång",
- "alarmHighRpm": "Högt motorvarv",
- "alarmHardAcceleration": "Hård acceleration",
- "alarmHardBraking": "Hård inbromsning",
- "alarmHardCornering": "Hård kurvtagning",
- "alarmLaneChange": "Körfältsbyte",
- "alarmFatigueDriving": "Trötthetskörning",
- "alarmPowerCut": "Strömavbrott",
- "alarmPowerRestored": "Strömmen återställd",
- "alarmJamming": "Störning",
- "alarmTemperature": "Temperatur",
- "alarmParking": "Parkering",
- "alarmBonnet": "Motorhuv",
- "alarmFootBrake": "Fotbroms",
- "alarmFuelLeak": "Bränsleläcka",
- "alarmTampering": "Manupulering",
- "alarmRemoving": "Borttagning",
- "notificationType": "Typ av notis",
- "notificationAlways": "Alla enheter",
- "notificationNotificators": "Kanaler",
- "notificatorCommand": "Command",
- "notificatorWeb": "Webb",
- "notificatorMail": "Emejl",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Svara",
- "reportCombined": "Combined",
- "reportRoute": "Rutt",
- "reportEvents": "Händelser",
- "reportTrips": "Resor",
- "reportStops": "Stop",
- "reportSummary": "Sammanfattning",
- "reportDaily": "Daglig summering",
- "reportChart": "Diagram",
- "reportConfigure": "Konfigurera",
- "reportEventTypes": "Händelsetyp",
- "reportChartType": "Diagramtyp",
- "reportShowMarkers": "Visa markörer",
- "reportExport": "Export",
- "reportEmail": "Emailrepport",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Anpassad",
- "reportToday": "Idag",
- "reportYesterday": "Igår",
- "reportThisWeek": "Denna veckan",
- "reportPreviousWeek": "Förra veckan",
- "reportThisMonth": "Denna månaden",
- "reportPreviousMonth": "Förra månaden",
- "reportDeviceName": "Enhetsnamn",
- "reportAverageSpeed": "Genomsnittshastighet",
- "reportMaximumSpeed": "Maxhastighet",
- "reportEngineHours": "Motortimmar",
- "reportDuration": "Varaktighet",
- "reportStartDate": "Startdatum",
- "reportStartTime": "Starttid",
- "reportStartAddress": "Startadress",
- "reportEndTime": "Sluttid",
- "reportEndAddress": "Slutadress",
- "reportSpentFuel": "Förbrukat bränsle",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer Slut",
- "statisticsTitle": "Statistik",
- "statisticsCaptureTime": "Inspelningstid",
- "statisticsActiveUsers": "Aktiva användare",
- "statisticsActiveDevices": "Aktiva enheter",
- "statisticsRequests": "Förfrågningar",
- "statisticsMessagesReceived": "Meddelande mottaget",
- "statisticsMessagesStored": "Meddelande lagrat",
- "statisticsGeocoder": "Geocoder förfrågan",
- "statisticsGeolocation": "Geolocation förfrågan",
- "categoryArrow": "Pil",
- "categoryDefault": "Standart",
- "categoryAnimal": "Djur",
- "categoryBicycle": "Cykel",
- "categoryBoat": "Båt",
- "categoryBus": "Buss",
- "categoryCar": "Bil",
- "categoryCamper": "Camper",
- "categoryCrane": "Kran",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motorcykel",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Person",
- "categoryPickup": "Pickup",
- "categoryPlane": "Flygplan",
- "categoryShip": "Fartyg",
- "categoryTractor": "Traktor",
- "categoryTrain": "Täg",
- "categoryTram": "Spårvagn",
- "categoryTrolleybus": "Trådbuss",
- "categoryTruck": "Lastbil",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/ta.json b/web/l10n/ta.json
deleted file mode 100644
index 8cdbdc62..00000000
--- a/web/l10n/ta.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "பதிவு செய்",
- "sharedHide": "மறை",
- "sharedSave": "சேமி",
- "sharedUpload": "Upload",
- "sharedSet": "அமை",
- "sharedCancel": "ரத்து செய்",
- "sharedCopy": "Copy",
- "sharedAdd": "சேர்க்க",
- "sharedEdit": "தொகுக்க",
- "sharedRemove": "நீக்குக",
- "sharedRemoveConfirm": "நீக்கம் உறுதி செய்?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "கிமீ",
- "sharedMi": "மைல்",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "கடல் மைல்",
- "sharedKmh": "கிமீ/மணிக்கு",
- "sharedMph": "மைல்/மணிக்கு",
- "sharedHour": "மணி நேரம்",
- "sharedMinute": "நிமிடம்",
- "sharedSecond": "விநாடி",
- "sharedDays": "நாட்கள் ",
- "sharedHours": "மணி நேரம் ",
- "sharedMinutes": "நிமிடங்கள்",
- "sharedDecimalDegrees": "தசம டிகிரி",
- "sharedDegreesDecimalMinutes": "தசம டிகிரி நிமிடங்கள்",
- "sharedDegreesMinutesSeconds": "தசம டிகிரி நொடிகள்",
- "sharedName": "பெயர்",
- "sharedDescription": "விளக்கம்",
- "sharedSearch": "தேடுக",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "பூகோள வேலி",
- "sharedGeofences": "பூகோள வேலிகள்",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "அறிவிப்புகள்",
- "sharedNotification": "அறிவிப்பு",
- "sharedAttributes": "பண்புகள்",
- "sharedAttribute": "பண்பு",
- "sharedDrivers": "வாகன ஓட்டிகள் ",
- "sharedDriver": "ஓட்டுநர்கள்",
- "sharedArea": "பகுதி",
- "sharedSound": "அறிவிப்பு ஒலி",
- "sharedType": "வகை",
- "sharedDistance": "தொலைவு",
- "sharedHourAbbreviation": "ம",
- "sharedMinuteAbbreviation": "நி",
- "sharedSecondAbbreviation": "எஸ் ",
- "sharedVoltAbbreviation": "வி ",
- "sharedLiterAbbreviation": "எல் ",
- "sharedGallonAbbreviation": "கேலன்கள்",
- "sharedLiter": "லிட்டர்",
- "sharedImpGallon": "கேலன்கள்",
- "sharedUsGallon": "அமெரிக்கா கேலன்கள்",
- "sharedLiterPerHourAbbreviation": "லிட்டர்/மணி ",
- "sharedGetMapState": "வரைபட நிலையை பெறு",
- "sharedComputedAttribute": "கணக்கிடப்பட்ட பண்புக்கூறு",
- "sharedComputedAttributes": "கணக்கிடப்பட்ட பண்புக்கூறுகள்",
- "sharedCheckComputedAttribute": "கணக்கிடப்பட்ட பண்புகளை சரிபார்க்கவும்",
- "sharedExpression": "வெளிப்பாடு",
- "sharedDevice": "கருவி ",
- "sharedTest": "Test",
- "sharedTestNotification": "சோதனை அறிவிப்பை அனுப்பவும்",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "நாட்காட்டி",
- "sharedCalendars": "நாட்காட்டிகள் ",
- "sharedFile": "கோப்பு",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "கோப்பைத் தேர்ந்தெடு",
- "sharedPhone": "பேசி ",
- "sharedRequired": "தேவையான",
- "sharedPreferences": "விரும்பிய தேவைகள் ",
- "sharedPermissions": "அனுமதிகள்",
- "sharedConnections": "Connections",
- "sharedExtra": "கூடுதல்",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "சரம்",
- "sharedTypeNumber": "எண் ",
- "sharedTypeBoolean": "பூலியன்",
- "sharedTimezone": "நேர மண்டலம்",
- "sharedInfoTitle": "தகவல் ",
- "sharedSavedCommand": "சேமித்த கட்டளை",
- "sharedSavedCommands": "சேமித்த கட்டளைகள்",
- "sharedNew": "புதிய",
- "sharedShowAddress": "முகவரி காட்டு",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "முடக்கப்பட்ட ",
- "sharedMaintenance": "பராமரிப்பு",
- "sharedDeviceAccumulators": "திரட்டி",
- "sharedAlarms": "முக்கிய அறிவிப்பு ",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "வேக வரம்பு",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "பாலிலைன் தொலைவு",
- "attributeReportIgnoreOdometer": "அறிக்கை: புறக்கணிக்க வாகன பயண தூர எண்ணி ",
- "attributeWebReportColor": "வலை: அறிக்கை வண்ணம்",
- "attributeDevicePassword": "சாதன கடவுச்சொல்",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "செயல்முறை: நகல் காரணிகள்",
- "attributeColor": "நிறம்",
- "attributeWebLiveRouteLength": "வலை : வாகன துரித பயண விபரம் ",
- "attributeWebSelectZoom": "வலை: பெரிதாக்கு தேர்வு",
- "attributeWebMaxZoom": "வலை: அதிகபட்ச பெரிதாக்கு",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "அஞ்சல்: SMTP புரவலன்",
- "attributeMailSmtpPort": "அஞ்சல்: SMTP போர்ட்",
- "attributeMailSmtpStarttlsEnable": "அஞ்சல்: SMTP STARTTLS இயக்கு",
- "attributeMailSmtpStarttlsRequired": "அஞ்சல்: SMTP STARTTLS தேவை",
- "attributeMailSmtpSslEnable": "அஞ்சல்: SMTP SSL இயக்கு",
- "attributeMailSmtpSslTrust": "அஞ்சல்: SMTP SSL அறக்கட்டளை",
- "attributeMailSmtpSslProtocols": "அஞ்சல்: SMTP SSL வழிமுறைகள் ",
- "attributeMailSmtpFrom": "அஞ்சல்: SMTP துவக்கம் ",
- "attributeMailSmtpAuth": "அஞ்சல்: SMTP Auth இயக்கு",
- "attributeMailSmtpUsername": "அஞ்சல்: SMTP பயனர்பெயர்",
- "attributeMailSmtpPassword": "அஞ்சல்: SMTP கடவுச்சொல்",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: முடக்கு நிகழ்வுகள்",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: முடக்கு இயக்கிகள்",
- "attributeUiDisableComputedAttributes": "UI: கணக்கிடப்பட்ட பண்புக்கூறுகளை முடக்கு",
- "attributeUiDisableCalendars": "UI: நாட்காட்டியை முடக்கு ",
- "attributeUiDisableMaintenance": "UI: பராமரிப்பு முடக்கவும்",
- "attributeUiHidePositionAttributes": "UI: நிலை காரணிகள் மறை",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "பிழை",
- "errorGeneral": "தவறான அளவுருக்கள் அல்லது தடைகள் மீறல்",
- "errorConnection": "இணைப்புப் பிழை",
- "errorSocket": "வலை இணைப்பு பிழை",
- "errorZero": "பூஜ்யமாக இருக்க முடியாது",
- "userEmail": "மின்னஞ்சல்",
- "userPassword": "கடவுச்சொல்",
- "userAdmin": "நிர்வாகி",
- "userRemember": "நினைவில் கொள்",
- "userExpirationTime": "காலாவதி",
- "userDeviceLimit": "சாதன வரம்பு",
- "userUserLimit": "பயனர் வரம்பு",
- "userDeviceReadonly": "சாதன வாசிப்பு",
- "userLimitCommands": "வரம்பு கட்டளைகள்",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "டோக்கன் ",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "உள் நுழை",
- "loginLanguage": "மொழி",
- "loginReset": "Reset Password",
- "loginRegister": "பதிவு செய்ய",
- "loginLogin": "உள்நுழைய",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "தவறான மின்னஞ்சல் முகவரி அல்லது கடவுச்சொல்",
- "loginCreated": "புதிய பயனர் பதிவு செய்யப்பட்டுள்ளது",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "வெளியேறு",
- "loginLogo": "இலட்சினை ",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "கருவிகள் மற்றும் அதன் நிலை",
- "deviceSelected": "Selected Device",
- "deviceTitle": "சாதனம்",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "அடையாளங்காட்டி",
- "deviceModel": "மாதிரி",
- "deviceContact": "தொடர்பு",
- "deviceCategory": "வகை",
- "deviceLastUpdate": "கடைசியாக புதுப்பிக்கப்பட்டது",
- "deviceCommand": "கட்டளை",
- "deviceFollow": "பின்தொடர்",
- "deviceTotalDistance": "மொத்த தூரம்",
- "deviceStatus": "நிலைமை",
- "deviceStatusOnline": "வலை தொடர்பில் ",
- "deviceStatusOffline": "வலை தொடர்பில்லாமை ",
- "deviceStatusUnknown": "தெரியாத",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "குழு",
- "groupParent": "குழு",
- "groupNoGroup": "குழு இல்லை",
- "settingsTitle": "அமைப்பு",
- "settingsUser": "கணக்கு",
- "settingsGroups": "குழுக்கள்",
- "settingsServer": "சர்வர்",
- "settingsUsers": "உறுப்பினர்கள்",
- "settingsDistanceUnit": "தூரம் அலகு",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "வேக அலகு",
- "settingsVolumeUnit": "தொகுதி அலகு",
- "settingsTwelveHourFormat": "12 மணி நேர வடிவம்",
- "settingsCoordinateFormat": "வடிவமைப்பை ஒருங்கிணைக்கிறது",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "அறிக்கை",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "சாதனம்",
- "reportGroup": "குழு",
- "reportFrom": "இருந்து",
- "reportTo": "வரை",
- "reportShow": "காண்பி",
- "reportClear": "அழி",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "செல்லுபடியான",
- "positionAccuracy": "துல்லியம்",
- "positionLatitude": "அட்சரேகை",
- "positionLongitude": "தீர்க்கரேகை",
- "positionAltitude": "உயரம்",
- "positionSpeed": "வேகம்",
- "positionCourse": "பாடநெறி",
- "positionAddress": "முகவரி",
- "positionProtocol": "புரோட்டோகால்",
- "positionDistance": "தூரம்",
- "positionRpm": "ஆர்பிஎம்",
- "positionFuel": "எரிபொருள்",
- "positionPower": "சக்தி",
- "positionBattery": "மின்கலன் ",
- "positionRaw": "மூல",
- "positionIndex": "குறியீட்டு",
- "positionHdop": "துல்லியமான கிடைமட்ட நீக்கம்",
- "positionVdop": "துல்லியத்தின் செங்குத்து நீக்கம்",
- "positionPdop": "துல்லியத்தின் நிலை நீக்கம்",
- "positionSat": "செயற்கைக்கோள்கள்",
- "positionSatVisible": "தெரியும் செயற்கைக்கோள்கள்",
- "positionRssi": "சிக்னல் வலிமை காட்டி",
- "positionGps": "உலகளாவிய நிலைப்படுத்தல் அமைப்பு",
- "positionRoaming": "சுற்றி கொண்டு",
- "positionEvent": "நிகழ்வு",
- "positionAlarm": "அலாரம்",
- "positionStatus": "நிலைமை ",
- "positionOdometer": "பயண தூர விபரக்காட்டி ",
- "positionServiceOdometer": "வாகன பயண தூர விபரக்காட்டி சேவைகள் ",
- "positionTripOdometer": "வாகன பயண தூர விபரக்காட்டி ",
- "positionHours": "மணி நேரம் ",
- "positionSteps": "படிகள்",
- "positionInput": "உள்ளீடு",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "வெளியீடு",
- "positionBatteryLevel": "மின்கலன் நிலை",
- "positionFuelConsumption": "எரிபொருள் பயன்பாடு",
- "positionRfid": "ரேடியோ அதிர்வெண் அடையாளம்",
- "positionVersionFw": "நிலையான மென்பொருள் பதிப்பு",
- "positionVersionHw": "வன்பொருள் பதிப்பு",
- "positionIgnition": "வாகன துவக்கி ",
- "positionFlags": "கொடிகள்",
- "positionCharge": "மின் ஆற்றல் சேமிக்க",
- "positionIp": "இணைய நெறிமுறை",
- "positionArchive": "காப்பகத்தை",
- "positionVin": "வாகனம் அடையாள எண் ",
- "positionApproximate": "தோராயமான",
- "positionThrottle": "கழுத்துப்பகுதி",
- "positionMotion": "இயக்கம்",
- "positionArmed": "ஆயுத",
- "positionAcceleration": "முடுக்கம்",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "சாதன வெப்பநிலை",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "இயக்குனர் ",
- "positionCommand": "கட்டளை",
- "positionBlocked": "தடுக்கப்பட்டது",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "ஓ பி டியின் வேகம் ",
- "positionObdOdometer": "ஓ பி டி ஓடோமீட்டர் ",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "இயக்கி தனிப்பட்ட ஐடி",
- "positionCard": "Card",
- "positionImage": "படம் ",
- "positionVideo": "Video",
- "positionAudio": "ஒலி ",
- "serverTitle": "சர்வர் அமைப்பு",
- "serverZoom": "பெரிதாக்கு",
- "serverRegistration": "பதிவுசெய்ய",
- "serverReadonly": "படிக்கமட்டும்",
- "serverForceSettings": "சக்தி அமைப்புகள்",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "வரைபடம்",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "வரைபடம் அடுக்கு",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "கார்ட்டோ வரைபடங்கள்",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "பிங் வரைபட கீ",
- "mapBingRoad": "பிங் சாலை வரைபடம்",
- "mapBingAerial": "பிங் வான்வழி வரைபடம்",
- "mapBingHybrid": "பிங் வரைபடங்கள்",
- "mapBaidu": "பைடு வரைபடங்கள்",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "யான் டெக்ஸ் வரைபடங்கள்",
- "mapYandexSat": "யான் டெக்ஸ் செயற்கைக்கோள்",
- "mapWikimedia": "விக்கிப்பீடியா",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "பலகோணம்",
- "mapShapeCircle": "வட்டம்",
- "mapShapePolyline": "பாலிலைன்",
- "mapLiveRoutes": "நேரடி வழிகள்",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI லேயர்",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "நிலை",
- "stateName": "சாட்டு",
- "stateValue": "மதிப்பு",
- "commandTitle": "கட்டளை",
- "commandSend": "அனுப்பு",
- "commandSent": "கட்டளை அனுப்பப்பட்டது",
- "commandQueued": "கட்டளை வரிசைப்படுத்தப்பட்டது",
- "commandUnit": "அலகு",
- "commandCustom": "விருப்பமான கட்டளை",
- "commandDeviceIdentification": "\nசாதன அடையாளம்",
- "commandPositionSingle": "ஒற்றை அறிக்கை",
- "commandPositionPeriodic": "காலமுறை அறிக்கையிடல்",
- "commandPositionStop": "அறிக்கையிடுதல் நிறுத்து ",
- "commandEngineStop": "எஞ்சின் நிறுத்து",
- "commandEngineResume": "எஞ்சின் தொடங்க",
- "commandAlarmArm": "அலறிமணி துவக்கம்",
- "commandAlarmDisarm": "அலறிமணி நிறுத்தம்",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "நேர மண்டலம்",
- "commandRequestPhoto": "புகைப்படம் வேண்டு",
- "commandPowerOff": "சாதனத்தை முடக்கு ",
- "commandRebootDevice": "சாதன மறுதுவக்கம்",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "குருஞ்செய்தி அனுப்பு",
- "commandSendUssd": "ussd ஐ அனுப்பவும்",
- "commandSosNumber": "அவசர அழைப்பு எண்(SOS)",
- "commandSilenceTime": "அமைதி நேரம் அமைக்க",
- "commandSetPhonebook": "தொலைபேசிப்புத்தகம் அமை",
- "commandVoiceMessage": "குரல் செய்தி",
- "commandOutputControl": "வெளியீட்டு கட்டுப்பாடு",
- "commandVoiceMonitoring": "குரல் கண்காணிப்பு",
- "commandSetAgps": "அடுக்களை அமைக்கவும்",
- "commandSetIndicator": "காட்டி அமைக்க",
- "commandConfiguration": "கட்டமைப்பு",
- "commandGetVersion": "பதிப்பை பெரு",
- "commandFirmwareUpdate": "பிர்மவாறு அமைத்தல் ",
- "commandSetConnection": "இணைப்பு அமைக்க",
- "commandSetOdometer": "ஓடோமீட்டர் அமைக்க ",
- "commandGetModemStatus": "மோடம் நிலையைப் பெறுக",
- "commandGetDeviceStatus": "சாதன விவரங்கள் பெறுக ",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "காலஇடைவெளி",
- "commandTimezone": "நேர மண்டலத்தை முடக்கு",
- "commandMessage": "குறுஞ்செய்தி",
- "commandRadius": "ஆரம்",
- "commandEnable": "செயல்படுத்த",
- "commandData": "தரவு",
- "commandIndex": "குறியீட்டு",
- "commandPhone": "தொலைபேசி எண்",
- "commandServer": "சர்வர்",
- "commandPort": "தகவல் வழி ",
- "eventAll": "அனைத்து நிகழ்வுகள்",
- "eventDeviceOnline": "நிலை ஆன்லைன்",
- "eventDeviceUnknown": "தெரியாத நிலை",
- "eventDeviceOffline": "நிலை ஆஃப்லைன்",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "சாதனம் நகரும்",
- "eventDeviceStopped": "சாதனம் நிறுத்தப்பட்டது",
- "eventDeviceOverspeed": "வேகம் வரம்பை மீறிவிட்டது",
- "eventDeviceFuelDrop": "எரிபொருள் குறைதல் ",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "கட்டளை விளைவு",
- "eventGeofenceEnter": "புவி வேலிக்குள் நுழைந்தது",
- "eventGeofenceExit": "புவி வேலி வெளியேறின",
- "eventAlarm": "அலாரம்",
- "eventIgnitionOn": "பற்றவைப்பு",
- "eventIgnitionOff": "பற்றவைத்தல்",
- "eventMaintenance": "பராமரிப்பு தேவை",
- "eventTextMessage": "உரை செய்தி பெற்றது",
- "eventDriverChanged": "இயக்குணர் மாற்றப்பட்டது",
- "eventMedia": "Media",
- "eventsScrollToLast": "நீடிக்கும்",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "பொது",
- "alarmSos": "அவசர உதவி ",
- "alarmVibration": "அதிர்வு",
- "alarmMovement": "இயக்கம்",
- "alarmLowspeed": "குறைவான வேகம்",
- "alarmOverspeed": "அதி வேகம் ",
- "alarmFallDown": "கீழே விழுதல்",
- "alarmLowPower": "குறைந்த சக்தி",
- "alarmLowBattery": "குறைவான மின்கலம் ",
- "alarmFault": "குற்றம்",
- "alarmPowerOff": "சக்தி அணை",
- "alarmPowerOn": "துவக்கு ",
- "alarmDoor": "கதவு ",
- "alarmLock": "பூட்டு ",
- "alarmUnlock": "திறக்க",
- "alarmGeofence": "புவி வேலி",
- "alarmGeofenceEnter": "புவி வேலி நுழைவு ",
- "alarmGeofenceExit": "குறைந்த சக்தி",
- "alarmGpsAntennaCut": "gps ஆண்டெனா",
- "alarmAccident": "விபத்து",
- "alarmTow": "கயிறு",
- "alarmIdle": "சும்மா",
- "alarmHighRpm": "உயர் rpm",
- "alarmHardAcceleration": "கடின முடுக்கம்",
- "alarmHardBraking": "கடின முறிப்பு",
- "alarmHardCornering": "கடின முனை",
- "alarmLaneChange": "பாதை மாற்றம் ",
- "alarmFatigueDriving": "சோர்வு ஓட்டுநர்",
- "alarmPowerCut": "மின் வெட்டு",
- "alarmPowerRestored": "சக்தி மீட்டெடுப்பு ",
- "alarmJamming": "நெருக்குதல்",
- "alarmTemperature": "வெப்ப நிலை",
- "alarmParking": "பார்க்கிங்",
- "alarmBonnet": "கார் குட்நெட்",
- "alarmFootBrake": "கால் பிரேக்",
- "alarmFuelLeak": "எரிபொருள் கசிவு",
- "alarmTampering": "சேதப்படுத்திய",
- "alarmRemoving": "நீக்கி",
- "notificationType": "type of notification",
- "notificationAlways": "எல்லா சாதனங்களும்",
- "notificationNotificators": "சேனல்கள்",
- "notificatorCommand": "Command",
- "notificatorWeb": "வலைத்தளம் ",
- "notificatorMail": "மின்னஞ்சல்",
- "notificatorSms": "குறுஞ்சய்தி ",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "பாதை",
- "reportEvents": "நிகழ்வுகள்",
- "reportTrips": "பயணங்கள்",
- "reportStops": "நிறுத்தங்கள்",
- "reportSummary": "சுருக்கம்",
- "reportDaily": "Daily Summary",
- "reportChart": "விளக்கப்படம்",
- "reportConfigure": "கட்டமைக்கவும்",
- "reportEventTypes": "நிகழ்வு வகைகள்",
- "reportChartType": "விளக்கப்படம் வகை",
- "reportShowMarkers": "குறிப்பான்கள் காட்டு",
- "reportExport": "ஏற்றுமதி",
- "reportEmail": "மின்னஞ்சல் அறிக்கை",
- "reportSchedule": "Schedule",
- "reportPeriod": "காலம்",
- "reportCustom": "விருப்ப",
- "reportToday": "இன்று",
- "reportYesterday": "நேற்று",
- "reportThisWeek": "இந்த வாரம்",
- "reportPreviousWeek": "முந்தைய வாரம்",
- "reportThisMonth": "இந்த மாதம்",
- "reportPreviousMonth": "சென்ற மாதம்",
- "reportDeviceName": "சாதன பெயர்",
- "reportAverageSpeed": "சராசரி வேகம்",
- "reportMaximumSpeed": "அதிகபட்ச வேகம்",
- "reportEngineHours": "இயந்திர மணி",
- "reportDuration": "கால அளவு ",
- "reportStartDate": "Start Date",
- "reportStartTime": "துவக்க நேரம் ",
- "reportStartAddress": "தொடக்க முகவரி ",
- "reportEndTime": "முடிவு நேரம்",
- "reportEndAddress": "இறுதி முகவரி",
- "reportSpentFuel": "எரிபொருள் செலவு",
- "reportStartOdometer": "ஓடோமீட்டர் தொடக்கம்",
- "reportEndOdometer": "ஓடோமீட்டர் முடிவு  ",
- "statisticsTitle": "புள்ளியியல்",
- "statisticsCaptureTime": "நேரம் பிடி",
- "statisticsActiveUsers": "செயலில் பயனர்கள்",
- "statisticsActiveDevices": "செயல்படும் சாதனங்கள் ",
- "statisticsRequests": "கோரிக்கைகள் ",
- "statisticsMessagesReceived": "செய்திகள் பெறப்பட்டன",
- "statisticsMessagesStored": "சேமித்த செய்திகள்",
- "statisticsGeocoder": "பூகோள கோரிக்கை",
- "statisticsGeolocation": "பூகோள கோரிக்கைகள் ",
- "categoryArrow": "அம்பு",
- "categoryDefault": "இயல்புநிலை",
- "categoryAnimal": "கால்நடை",
- "categoryBicycle": "மிதிவண்டி",
- "categoryBoat": "படகு",
- "categoryBus": "பேருந்து",
- "categoryCar": "கார்",
- "categoryCamper": "Camper",
- "categoryCrane": "கிரேன்",
- "categoryHelicopter": "ஹெலிகாப்டர்",
- "categoryMotorcycle": "மோட்டார் சைக்கிள்",
- "categoryOffroad": "இனிய சாலை",
- "categoryPerson": "நபர்",
- "categoryPickup": "இடும்",
- "categoryPlane": "விமானம்",
- "categoryShip": "கப்பல்",
- "categoryTractor": "டிராக்டர்",
- "categoryTrain": "ரயில்",
- "categoryTram": "டிராம்",
- "categoryTrolleybus": "தள்ளுவண்டி",
- "categoryTruck": "கண ரக வாகனம்",
- "categoryVan": "வேன் வாகனம் ",
- "categoryScooter": "Scooter",
- "maintenanceStart": "துவக்கு ",
- "maintenancePeriod": "காலம்"
-} \ No newline at end of file
diff --git a/web/l10n/th.json b/web/l10n/th.json
deleted file mode 100644
index 95f783c4..00000000
--- a/web/l10n/th.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "กำลังโหลด...",
- "sharedHide": "ซ่อน",
- "sharedSave": "จัดเก็บแฟ้มข้อมูล",
- "sharedUpload": "อัพโหลด",
- "sharedSet": "ตั้งค่า",
- "sharedCancel": "ยกเลิก",
- "sharedCopy": "คัดลอก",
- "sharedAdd": "เพิ่ม",
- "sharedEdit": "แก้ไข",
- "sharedRemove": "ลบรายการ",
- "sharedRemoveConfirm": "ยืนยันลบรายการ",
- "sharedNoData": "ไม่มีข้อมูล",
- "sharedSubject": "หัวข้อ",
- "sharedYes": "ใช่",
- "sharedNo": "ไม่",
- "sharedKm": "กม.",
- "sharedMi": "ไมล์",
- "sharedNmi": "nml",
- "sharedMeters": "ม.",
- "sharedFeet": "ฟุต",
- "sharedKn": "น๊อต",
- "sharedKmh": "กม./ชม.",
- "sharedMph": "ไมล์ต่อชั่วโมง",
- "sharedHour": "ชั่วโมง",
- "sharedMinute": "นาที",
- "sharedSecond": "วินาที",
- "sharedDays": "วัน",
- "sharedHours": "ชั่วโมง",
- "sharedMinutes": "นาที",
- "sharedDecimalDegrees": "องศา ทศนิยม",
- "sharedDegreesDecimalMinutes": "องศา นาที",
- "sharedDegreesMinutesSeconds": "องศา นาที วินาที",
- "sharedName": "ชื่อ",
- "sharedDescription": "คำอธิบาย",
- "sharedSearch": "ค้นหา",
- "sharedIconScale": "ขนาดไอคอน",
- "sharedGeofence": "เขตพื้นที่",
- "sharedGeofences": "เขตพื้นที่",
- "sharedCreateGeofence": "สร้างขอบเขตภูมิศาสตร์",
- "sharedNotifications": "การแจ้งเตือน",
- "sharedNotification": "แจ้งเตือน",
- "sharedAttributes": "คุณลักษณะ",
- "sharedAttribute": "คุณลักษณะ",
- "sharedDrivers": "ไดร์เวอร์",
- "sharedDriver": "คนขับรถ",
- "sharedArea": "พื้นที่",
- "sharedSound": "การแจ้งเตือนเสียง",
- "sharedType": "ชนิด",
- "sharedDistance": "ระยะทาง",
- "sharedHourAbbreviation": "ชม.",
- "sharedMinuteAbbreviation": "นาที",
- "sharedSecondAbbreviation": "วินาที",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "ลิตร",
- "sharedGallonAbbreviation": "แกลลอน",
- "sharedLiter": "ลิตร",
- "sharedImpGallon": "Imp แกลลอน",
- "sharedUsGallon": "U.S. แกลลอน",
- "sharedLiterPerHourAbbreviation": "ลิตรต่อชั่วโมง",
- "sharedGetMapState": "ได้รับสถานะแผนที่",
- "sharedComputedAttribute": "คำนวณแอตทริบิวต์",
- "sharedComputedAttributes": "คำนวณแอตทริบิวต์",
- "sharedCheckComputedAttribute": "ตรวจสอบคอมพิวเตอร์แอตทริบิวต์",
- "sharedExpression": "การแสดงออก",
- "sharedDevice": "อุปกรณ์",
- "sharedTest": "ทดสอบ",
- "sharedTestNotification": "ส่งการแจ้งเตือนการทดสอบ",
- "sharedTestNotificators": "ทดสอบแชนแนล",
- "sharedTestExpression": "ทดสอบนิพจน์",
- "sharedCalendar": "ปฏิทิน",
- "sharedCalendars": "ปฏิทิน",
- "sharedFile": "ไฟล์",
- "sharedSearchDevices": "ค้นหาอุปกรณ์",
- "sharedSortBy": "เรียงตาม",
- "sharedFilterMap": "กรองบนแผนที่",
- "sharedSelectFile": "เลือกไฟล์",
- "sharedPhone": "โทรศัพท์",
- "sharedRequired": "ต้องระบุ",
- "sharedPreferences": "การตั้งค่า",
- "sharedPermissions": "สิทธิ์",
- "sharedConnections": "การเชื่อมต่อ",
- "sharedExtra": "พิเศษ",
- "sharedPrimary": "หลัก",
- "sharedSecondary": "รอง",
- "sharedTypeString": "ตัวอักษร",
- "sharedTypeNumber": "จำนวน",
- "sharedTypeBoolean": "ตัวเลข",
- "sharedTimezone": "เขตเวลา",
- "sharedInfoTitle": "ข้อมูล",
- "sharedSavedCommand": "บันทึกคำสั่ง",
- "sharedSavedCommands": "บันทึกคำสั่ง",
- "sharedNew": "ใหม่...",
- "sharedShowAddress": "แสดงที่อยู่",
- "sharedShowDetails": "รายละเอียดเพิ่มเติม",
- "sharedDisabled": "ปิดการใช้งาน",
- "sharedMaintenance": "ซ่อมบำรุง",
- "sharedDeviceAccumulators": "รวม",
- "sharedAlarms": "เตือน",
- "sharedLocation": "สถานที่",
- "sharedImport": "นำเข้า",
- "sharedColumns": "คอลัมน์",
- "sharedDropzoneText": "ลากและวางไฟล์ที่นี่หรือคลิก",
- "sharedLogs": "Logs",
- "sharedLink": "ลิงก์",
- "calendarSimple": "เรียบง่าย",
- "calendarRecurrence": "การเกิดซ้ำ",
- "calendarOnce": "ครั้งเดียว",
- "calendarDaily": "รายวัน",
- "calendarWeekly": "รายสัปดาห์",
- "calendarMonthly": "รายเดือน",
- "calendarDays": "วัน",
- "calendarSunday": "อาทิตย์",
- "calendarMonday": "วันจันทร์",
- "calendarTuesday": "วันอังคาร",
- "calendarWednesday": "วันพุธ",
- "calendarThursday": "วันพฤหัสบดี",
- "calendarFriday": "วันศุกร์",
- "calendarSaturday": "วันเสาร์",
- "attributeShowGeofences": "แสดงขอบเขตภูมิศาสตร์",
- "attributeSpeedLimit": "จำกัดความเร็ว",
- "attributeFuelDropThreshold": "เกณฑ์การลดของเชื้อเพลิง",
- "attributeFuelIncreaseThreshold": "เกณฑ์การเพิ่มของเชื้อเพลิง",
- "attributePolylineDistance": "เส้นระยะทาง",
- "attributeReportIgnoreOdometer": "รายงาน: ละเว้นวัดระยะ",
- "attributeWebReportColor": "เว็บ: สีรายงาน",
- "attributeDevicePassword": "รหัสผ่านอุปกรณ์",
- "attributeDeviceImage": "ภาพอุปกรณ์",
- "attributeDeviceInactivityStart": "อุปกรณ์ยังไม่เริ่มทำงาน",
- "attributeDeviceInactivityPeriod": "ระยะเวลาที่อุปกรณ์ไม่ทำงาน",
- "attributeProcessingCopyAttributes": "การประมวลผล: คัดลอกคุณสมบัติ",
- "attributeColor": "สี",
- "attributeWebLiveRouteLength": "เว็บ: สดเส้นทางความยาว",
- "attributeWebSelectZoom": "เว็บ: ขยายเมื่อเลือก",
- "attributeWebMaxZoom": "เว็บ: ซูมสูงสุด",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "รหัสผู้ใช้ Pushover",
- "attributePushoverDeviceNames": "ชื่ออุปกรณ์ Pushover",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Host",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: ปิดใช้งานคำสั่งที่บันทึกไว้",
- "attributeUiDisableAttributes": "UI: ปิดใช้งานแอตทริบิวต์",
- "attributeUiDisableGroups": "UI: ปิดการใช้งานกลุ่ม",
- "attributeUiDisableEvents": "UI: ปิดการใช้งานเหตุการณ์",
- "attributeUiDisableVehicleFeatures": "UI : ปิดการใช้งานคุณสมบัติของยานพาหนะ",
- "attributeUiDisableDrivers": "UI: ปิดการใช้งานไดร์เวอร์",
- "attributeUiDisableComputedAttributes": "UI: ปิดใช้งานแอ็ตทริบิวต์ที่คำนวณ",
- "attributeUiDisableCalendars": "UI: ปิดปฏิทิน",
- "attributeUiDisableMaintenance": "UI: ปิด-ซ่อมบำรุง",
- "attributeUiHidePositionAttributes": "UI: ซ่อนตำแหน่งลักษณะ",
- "attributeUiDisableLoginLanguage": "UI: ปิดการใช้งานภาษาเข้าสู่ระบบ",
- "attributeNotificationTokens": "โทเค็นการแจ้งเตือน",
- "attributePopupInfo": "ป๊อปอัปข้อมูล",
- "errorTitle": "ผิดพลาด",
- "errorGeneral": "ไม่ถูกต้องพารามิเตอร์หรือ จำกัด การละเมิด",
- "errorConnection": "การเชื่อมต่อผิดพลาด",
- "errorSocket": "ข้อผิดพลาดการเชื่อมต่อซ็อกเก็ตเว็บ",
- "errorZero": "ไม่สามารถเป็นศูนย์",
- "userEmail": "อีเมล์",
- "userPassword": "รหัสผ่าน",
- "userAdmin": "ผู้ดูแลระบบ",
- "userRemember": "จำไว้",
- "userExpirationTime": "วันหมดอายุ",
- "userDeviceLimit": "จำนวน อุปกรณ์",
- "userUserLimit": "ขีดจำกัดผู้ใช้",
- "userDeviceReadonly": "อุปกรณ์ อ่านได้อย่างเดียว",
- "userLimitCommands": "จำกัดคำสั่ง",
- "userDisableReports": "ปิดการใช้งานรายงาน",
- "userFixedEmail": "ไม่มีการเปลี่ยนแปลงอีเมล",
- "userToken": "Token",
- "userDeleteAccount": "ลบบัญชี",
- "userTemporary": "ชั่วคราว",
- "loginTitle": "เข้าสู่ระบบ",
- "loginLanguage": "ภาษา",
- "loginReset": "รีเซ็ตรหัสผ่าน",
- "loginRegister": "ลงทะเบียน",
- "loginLogin": "เข้าสู่ระบบ",
- "loginOpenId": "เข้าสู่ระบบด้วย OpenID",
- "loginFailed": "ที่อยู่อีเมลหรือรหัสผ่านไม่ถูกต้อง",
- "loginCreated": "ผู้ใช้ใหม่ ได้รับการลงทะเบียน",
- "loginResetSuccess": "ตรวจสอบอีเมลของคุณ",
- "loginUpdateSuccess": "ตั้งรหัสผ่านใหม่แล้ว",
- "loginLogout": "ออกจากระบบ",
- "loginLogo": "Logo",
- "loginTotpCode": "รหัสผ่านแบบใช้ครั้งเดียว",
- "loginTotpKey": "คีย์ รหัสผ่านครั้งเดียว",
- "devicesAndState": "อุปกรณ์และสถานะ",
- "deviceSelected": "อุปกรณ์ที่เลือก",
- "deviceTitle": "เครื่อง/อุปกรณ์",
- "devicePrimaryInfo": "ชื่ออุปกรณ์",
- "deviceSecondaryInfo": "รายละเอียดอุปกรณ์",
- "deviceIdentifier": "ระบุเลขอุปกรณ์",
- "deviceModel": "รุ่น",
- "deviceContact": "เบอร์ติดต่อ",
- "deviceCategory": "หมวดหมู่",
- "deviceLastUpdate": "แก้ไขล่าสุด",
- "deviceCommand": "คำสั่ง",
- "deviceFollow": "ติดตาม",
- "deviceTotalDistance": "รวม ระยะทาง",
- "deviceStatus": "สถานะ",
- "deviceStatusOnline": "ออนไลน์",
- "deviceStatusOffline": "ออฟไลน์",
- "deviceStatusUnknown": "ไม่รู้จัก",
- "deviceRegisterFirst": "ลงทะเบียนอุปกรณ์เครื่องแรกของคุณ",
- "deviceIdentifierHelp": "IMEI หมายเลขซีเรียลหรือรหัสอื่นๆ จะต้องตรงกับรายงานอุปกรณ์ระบุไปยังเซิร์ฟเวอร์",
- "deviceShare": "แบ่งปันอุปกรณ์",
- "groupDialog": "กลุ่ม",
- "groupParent": "กลุ่ม",
- "groupNoGroup": "ไม่จัดกลุ่ม",
- "settingsTitle": "การตั้งค่า",
- "settingsUser": "บัญชีผู้ใช้",
- "settingsGroups": "ตั้งค่ากลุ่ม",
- "settingsServer": "เซิร์ฟเวอร์",
- "settingsUsers": "ตั้งค่าผู้ใช้งาน",
- "settingsDistanceUnit": "หน่วยระยะทาง",
- "settingsAltitudeUnit": "หน่วยระดับความสูง",
- "settingsSpeedUnit": "หน่วยความเร็ว",
- "settingsVolumeUnit": "หน่วยจำนวน",
- "settingsTwelveHourFormat": "รูปแบบเวลา 12 ชั่วโมง",
- "settingsCoordinateFormat": "รูปแบบพิกัด",
- "settingsServerVersion": "เวอร์ชั่นเซิร์ฟเวอร์",
- "settingsAppVersion": "เวอร์ชั่นแอพ",
- "settingsConnection": "การเชื่อมต่อ",
- "settingsDarkMode": "โหมดมืด",
- "settingsTotpEnable": "เปิดใช้งานรหัสผ่านครั้งเดียว",
- "settingsTotpForce": "บังคับใช้รหัสผ่านครั้งเดียว",
- "settingsServiceWorkerUpdateInterval": "รอบเวลาการอัปเดต ServiceWorker",
- "settingsUpdateAvailable": "มีการอัพเดต",
- "settingsSupport": "การสนับสนุน",
- "reportTitle": "รายงาน",
- "reportScheduled": "รายงานตามกำหนดเวลา",
- "reportDevice": "รายงานเครื่อง/อุปกรณ์",
- "reportGroup": "กลุ่ม",
- "reportFrom": "จาก",
- "reportTo": "ไปถึง",
- "reportShow": "แสดง",
- "reportClear": "ล้างรายงาน",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "แก้ไขเวลา",
- "positionDeviceTime": "เวลาอุปกรณ์",
- "positionServerTime": "เวลาเซิร์ฟเวอร์",
- "positionValid": "ถูกต้อง",
- "positionAccuracy": "ความถูกต้อง",
- "positionLatitude": "ละติจูด",
- "positionLongitude": "ลองจิจูด",
- "positionAltitude": "แอตติจูด",
- "positionSpeed": "ความเร็ว",
- "positionCourse": "ทิศทาง",
- "positionAddress": "ที่อยู่",
- "positionProtocol": "โปรโตคอล",
- "positionDistance": "ระยะทาง",
- "positionRpm": "RPM",
- "positionFuel": "เชื้อเพลิง",
- "positionPower": "พลังงาน",
- "positionBattery": "แบตเตอรี่",
- "positionRaw": "ดิบ",
- "positionIndex": "ดัชนี",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "ดาวเทียม",
- "positionSatVisible": "ดาวเทียมที่มองเห็นได้",
- "positionRssi": "RSSI",
- "positionGps": "จีพีเอส",
- "positionRoaming": "โรมมิ่ง",
- "positionEvent": "กิจกรรม",
- "positionAlarm": "แจ้งเตือน",
- "positionStatus": "สถานะ",
- "positionOdometer": "วัดระยะทาง",
- "positionServiceOdometer": "บริการวัดระยะทาง",
- "positionTripOdometer": "มาตรวัดการเดินทาง",
- "positionHours": "ชั่วโมง",
- "positionSteps": "Steps",
- "positionInput": "อินพุต",
- "positionHeartRate": "อัตราการเต้นของหัวใจ",
- "positionOutput": "เอาต์พุต",
- "positionBatteryLevel": "ระดับแบตเตอรี่",
- "positionFuelConsumption": "การใช้น้ำมันเชื้อเพลิง",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "ระบบจุดระเบิด",
- "positionFlags": "สัญลักษณ์",
- "positionCharge": "ชาร์จ",
- "positionIp": "IP",
- "positionArchive": "เก็บ",
- "positionVin": "VIN",
- "positionApproximate": "ประมาณ",
- "positionThrottle": "คันเร่ง",
- "positionMotion": "เคลื่อนไหว",
- "positionArmed": "Armed",
- "positionAcceleration": "การเร่งความเร็ว",
- "positionTemp": "อุณหภูมิ",
- "positionDeviceTemp": "อุณหภูมิของอุปกรณ์",
- "positionCoolantTemp": "อุณหภูมิน้ำหล่อเย็น",
- "positionOperator": "ผู้ประกอบการ",
- "positionCommand": "คำสั่ง",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "ความเร็ว OBD",
- "positionObdOdometer": "มาตรวัดระยะ OBD",
- "positionDrivingTime": "เวลาในการขับขี่",
- "positionDriverUniqueId": "หมายเลขเฉพาะไดร์เวอร์",
- "positionCard": "การ์ด",
- "positionImage": "รูปภาพ",
- "positionVideo": "วิดีโอ",
- "positionAudio": "เสียง",
- "serverTitle": "การตั้งค่าเซิร์ฟเวอร์",
- "serverZoom": "ชยาย +/-",
- "serverRegistration": "ลงทะเบียน",
- "serverReadonly": "อ่านได้อย่างเดียว",
- "serverForceSettings": "บังคับ การตั้งค่า",
- "serverAnnouncement": "ประกาศ",
- "serverName": "ชื่อเซิร์ฟเวอร์",
- "serverDescription": "รายละเอียดเซิร์ฟเวอร์",
- "serverColorPrimary": "สีหลัก",
- "serverColorSecondary": "สีรอง",
- "serverLogo": "รูปภาพโลโก้",
- "serverLogoInverted": "กลับด้านภาพโลโก้แล้ว",
- "serverChangeDisable": "ปิดใช้งานการเปลี่ยนแปลงเซิร์ฟเวอร์",
- "serverDisableShare": "ปิดใช้งานการแชร์อุปกรณ์",
- "mapTitle": "แผนที่",
- "mapActive": "แผนที่ที่ใช้งานอยู่",
- "mapOverlay": "การวางซ้อนแผนที่",
- "mapOverlayCustom": "การวางซ้อนแบบกำหนดเอง",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "ปริมาณน้ำฝน OpenWeather",
- "mapOpenWeatherPressure": "ความดัน OpenWeather",
- "mapOpenWeatherWind": "ลม OpenWeather",
- "mapOpenWeatherTemperature": "อุณหภูมิ OpenWeather",
- "mapLayer": "ชั้นแผนที่",
- "mapCustom": "กำหนดเอง (XYZ)",
- "mapCustomArcgis": "กำหนดเอง (ArcGIS)",
- "mapCustomLabel": "แผนที่ที่กำหนดเอง",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps สำคัญ",
- "mapBingRoad": "Bing Maps ถนน",
- "mapBingAerial": "Bing Maps ทางอากาศ",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "การสำรวจยุทโธปกรณ์",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "รูปหลายมุม",
- "mapShapeCircle": "วงกลม",
- "mapShapePolyline": "โพลีไลน์",
- "mapLiveRoutes": "เส้นทาง Live",
- "mapDirection": "แสดงทิศทาง",
- "mapCurrentLocation": "สถานที่ปัจจุบัน",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "การจัดกลุ่มเครื่องหมาย",
- "mapOnSelect": "แสดงแผนที่บริเวณที่เลือก",
- "mapDefault": "แผนที่เริ่มต้น",
- "stateTitle": "สถานะ",
- "stateName": "พารามิเตอร์",
- "stateValue": "มูลค่า",
- "commandTitle": "คำสั่ง",
- "commandSend": "ส่ง",
- "commandSent": "คำสั่ง-ส่งแล้ว",
- "commandQueued": "คำสั่ง-คิว",
- "commandUnit": "หน่วย",
- "commandCustom": "คำสั่งกำหนดเอง",
- "commandDeviceIdentification": "หมายเลขอุปกรณ์",
- "commandPositionSingle": "รายงานตำแหน่งเดียว",
- "commandPositionPeriodic": "แก้ไขตำแหน่ง",
- "commandPositionStop": "ตำแหน่ง หยุด",
- "commandEngineStop": "ดับเครื่องยนต์",
- "commandEngineResume": "ติดครื่องยนต์ใหม่",
- "commandAlarmArm": "แจ้งเตือนติดต่อสาขา",
- "commandAlarmDisarm": "แจ้งเตือนยกเลิกติดต่อสาขา",
- "commandAlarmDismiss": "ปิดการเตือน",
- "commandSetTimezone": "ตั้งค่าเขตเวลา",
- "commandRequestPhoto": "สั่งถ่ายภาพ",
- "commandPowerOff": "ปิดอุปกรณ์",
- "commandRebootDevice": "รีบูต",
- "commandFactoryReset": "รีเซ็ตเป็นค่าจากโรงงาน",
- "commandSendSms": "ส่ง SMS",
- "commandSendUssd": "ส่ง USSD",
- "commandSosNumber": "ตั้งค่าเลขหมายโทรฉุกเฉิน SOS",
- "commandSilenceTime": "ตั้งค่าช่วงเวลาหยุดนิ่ง",
- "commandSetPhonebook": "ตั้งค่าสมุดโทรศัพท์",
- "commandVoiceMessage": "ข้อความเสียง",
- "commandOutputControl": "ควบคุมข้อมูลที่ส่งออก",
- "commandVoiceMonitoring": "การตรวจสอบด้วยเสียง",
- "commandSetAgps": "ตั้งค่า AGPS",
- "commandSetIndicator": "ตั้งค่าตัวบ่งชี้",
- "commandConfiguration": "องค์ประกอบ",
- "commandGetVersion": "รับเวอร์ชัน",
- "commandFirmwareUpdate": "อัพเดตเฟิร์มแวร์",
- "commandSetConnection": "ตั้งค่าการเชื่อมต่อ",
- "commandSetOdometer": "ตั้งค่ามาตรวัดระยะทาง",
- "commandGetModemStatus": "ดูสถานะโมเด็ม",
- "commandGetDeviceStatus": "รับสถานะอุปกรณ์",
- "commandSetSpeedLimit": "ตั้งขีดจำกัดความเร็ว",
- "commandModePowerSaving": "โหมดประหยัดพลังงาน",
- "commandModeDeepSleep": "โหมดหลับลึก",
- "commandAlarmGeofence": "ตั้งเตือน Geofence",
- "commandAlarmBattery": "ตั้งการเตือนแบตเตอรี่",
- "commandAlarmSos": "ตั้งการเตือน SOS",
- "commandAlarmRemove": "ตั้งลบการเตือน",
- "commandAlarmClock": "ตั้งนาฬิการปลุก",
- "commandAlarmSpeed": "ตั้งการเตือนความเร็ว",
- "commandAlarmFall": "ตั้งการเตือนการตก",
- "commandAlarmVibration": "ตั้งการเตือนการสั่น",
- "commandFrequency": "ความถี่",
- "commandTimezone": "เขตเวลา ตรงข้าม",
- "commandMessage": "ข้อความ",
- "commandRadius": "รัศมี",
- "commandEnable": "เปิดใช้งาน",
- "commandData": "ข้อมูล",
- "commandIndex": "ดัชนี",
- "commandPhone": "หมายเลขโทรศัพท์",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "เหตุการณ์ทั้งหมด",
- "eventDeviceOnline": "ออนไลน์",
- "eventDeviceUnknown": "ไม่ระบุ",
- "eventDeviceOffline": "ออฟไลน์",
- "eventDeviceInactive": "อุปกรณ์ไม่ทำงาน",
- "eventQueuedCommandSent": "ส่งคำสั่งเข้าคิวแล้ว",
- "eventDeviceMoving": "เคลื่อนที่",
- "eventDeviceStopped": "หยุด/จอด",
- "eventDeviceOverspeed": "ความเร็วเกิน",
- "eventDeviceFuelDrop": "เชื้อเพลิงลด",
- "eventDeviceFuelIncrease": "น้ำมันเชื้อเพลิงเพิ่มขึ้น",
- "eventCommandResult": "ผลลัพธ์จากคำสั่ง",
- "eventGeofenceEnter": "เข้าเขต",
- "eventGeofenceExit": "ออกนอกเขต",
- "eventAlarm": "เตือน",
- "eventIgnitionOn": "เครื่องยนต์ติด",
- "eventIgnitionOff": "เครื่องยนต์ดับ",
- "eventMaintenance": "จำเป็นต้อง บำรุงรักษา",
- "eventTextMessage": "ข้อความที่ได้รับ",
- "eventDriverChanged": "เปลี่ยนคนขับ",
- "eventMedia": "สื่อ",
- "eventsScrollToLast": "เลื่อนไปที่ล่าสุด",
- "eventsSoundEvents": "เสียงเหตุการณ์",
- "eventsSoundAlarms": "เสียงปลุก",
- "alarmGeneral": "ทั่วไป",
- "alarmSos": "SOS",
- "alarmVibration": "สั่นสะเทือน",
- "alarmMovement": "เคลื่อนที่",
- "alarmLowspeed": "เคลื่อนช้าๆ",
- "alarmOverspeed": "ความเร็วเกิน",
- "alarmFallDown": "ร่วงหล่น",
- "alarmLowPower": "กำลัง-อ่อน",
- "alarmLowBattery": "แบต-อ่อน",
- "alarmFault": "ผิดพลาด",
- "alarmPowerOff": "ปิดเครื่อง",
- "alarmPowerOn": "เปิดเครื่อง",
- "alarmDoor": "ประตู",
- "alarmLock": "ล็อค",
- "alarmUnlock": "ปลดล็อค",
- "alarmGeofence": "ขอบเขต",
- "alarmGeofenceEnter": "เข้าขอบเขต",
- "alarmGeofenceExit": "ออกขอบเขต",
- "alarmGpsAntennaCut": "เสา GPS ตัด",
- "alarmAccident": "อุบัติเหตุ",
- "alarmTow": "ลาก",
- "alarmIdle": "นิ่ง",
- "alarmHighRpm": "รอบเครื่องสูง",
- "alarmHardAcceleration": "ออกตัวแรง",
- "alarmHardBraking": "เบรคแรง",
- "alarmHardCornering": "เลี้ยวกระทันหัน",
- "alarmLaneChange": "เปลี่ยนเลน",
- "alarmFatigueDriving": "ขับรถ-ล้า",
- "alarmPowerCut": "ตัดสตาร์ท",
- "alarmPowerRestored": "ไฟฟ้า-ต่อ",
- "alarmJamming": "สัญญาณรบกวน",
- "alarmTemperature": "อุณหภูมิ",
- "alarmParking": "จอด",
- "alarmBonnet": "ฝาสูบ",
- "alarmFootBrake": "เบรคเท้า",
- "alarmFuelLeak": "เชื้อเพลิงรั่ว",
- "alarmTampering": "บุกรุกเครื่อง",
- "alarmRemoving": "ถอดออก",
- "notificationType": "ชนิดการแจ้งเตือน",
- "notificationAlways": "อุปกรณ์ทั้งหมด",
- "notificationNotificators": "ช่อง",
- "notificatorCommand": "คำสั่ง",
- "notificatorWeb": "เว็ป",
- "notificatorMail": "เมลล์",
- "notificatorSms": "ส่งข้อความ",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "เล่นซ้ำ",
- "reportCombined": "รวมเรียบร้อยแล้ว",
- "reportRoute": "เส้นทาง",
- "reportEvents": "เหตุการณ์",
- "reportTrips": "การเดินทาง",
- "reportStops": "จุดจอด",
- "reportSummary": "ผลรวม",
- "reportDaily": "สรุปรายวัน",
- "reportChart": "แผนภูมิ",
- "reportConfigure": "ตั้งค่า",
- "reportEventTypes": "ประเภทเหตุการณ์",
- "reportChartType": "ชนิดของแผนภูมิ",
- "reportShowMarkers": "แสดงเครื่องหมาย",
- "reportExport": "ส่งออก",
- "reportEmail": "รายงาน-Email",
- "reportSchedule": "กำหนดการ",
- "reportPeriod": "ช่วงเวลา",
- "reportCustom": "กำหนดเอง",
- "reportToday": "วันนี้",
- "reportYesterday": "เมื่อวาน",
- "reportThisWeek": "สัปดาห์นี้",
- "reportPreviousWeek": "สัปดาห์ก่อน",
- "reportThisMonth": "เดือนนี้",
- "reportPreviousMonth": "เดือนก่อน",
- "reportDeviceName": "ชื่ออุปกรณ์",
- "reportAverageSpeed": "ความเร็วเฉลี่ย",
- "reportMaximumSpeed": "ความเร็วสูงสุด",
- "reportEngineHours": "เวลาการทำงานเครื่องยนต์",
- "reportDuration": "ช่วงเวลา",
- "reportStartDate": "วันที่เริ่ม",
- "reportStartTime": "เวลาเริ่มต้น",
- "reportStartAddress": "จุดเริ่มต้น",
- "reportEndTime": "เวลาสิ้นสุด",
- "reportEndAddress": "จุดสิ้นสุด",
- "reportSpentFuel": "เชื้อเพลิงที่ใช้",
- "reportStartOdometer": "เดินทาง-เริ่ม",
- "reportEndOdometer": "เดินทาง-สิ้นสุด",
- "statisticsTitle": "ข้อมูลสถิติ",
- "statisticsCaptureTime": "จับเวลา",
- "statisticsActiveUsers": "ผู้ใช้ที่ใช้งานอยู่",
- "statisticsActiveDevices": "อุปกรณ์ที่ใช้งานอยู่",
- "statisticsRequests": "การร้องขอ",
- "statisticsMessagesReceived": "ข้อความที่ได้รับ",
- "statisticsMessagesStored": "ข้อความที่เก็บไว้",
- "statisticsGeocoder": "คำขอรหัสทางภูมิศาสตร์",
- "statisticsGeolocation": "คำขอตำแหน่งทางภูมิศาสตร์",
- "categoryArrow": "ลูกศร",
- "categoryDefault": "ค่าเริ่มต้น",
- "categoryAnimal": "สัตว์",
- "categoryBicycle": "จักรยาน",
- "categoryBoat": "เรือ",
- "categoryBus": "รถบัส",
- "categoryCar": "รถยนต์",
- "categoryCamper": "คนพักแรม",
- "categoryCrane": "เครน",
- "categoryHelicopter": "เฮลิคอปเตอร์",
- "categoryMotorcycle": "รถจักรยานยนต์",
- "categoryOffroad": "ออฟโร้ด",
- "categoryPerson": "บุคคล",
- "categoryPickup": "รถกระบะ",
- "categoryPlane": "เครื่องบิน",
- "categoryShip": "เรือ",
- "categoryTractor": "รถแทรกเตอร์",
- "categoryTrain": "รถไฟ",
- "categoryTram": "รถราง",
- "categoryTrolleybus": "รถยก",
- "categoryTruck": "รถบรรทุก",
- "categoryVan": "รถตู้",
- "categoryScooter": "สกู๊ตเตอร์",
- "maintenanceStart": "เริ่มต้น",
- "maintenancePeriod": "ระยะเวลา"
-} \ No newline at end of file
diff --git a/web/l10n/tr.json b/web/l10n/tr.json
deleted file mode 100644
index ff534af7..00000000
--- a/web/l10n/tr.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Yükleniyor...",
- "sharedHide": "Gizle",
- "sharedSave": "Kaydet",
- "sharedUpload": "Upload",
- "sharedSet": "Belirle",
- "sharedCancel": "İptal",
- "sharedCopy": "Copy",
- "sharedAdd": "Ekle",
- "sharedEdit": "Düzenle",
- "sharedRemove": "Kaldır",
- "sharedRemoveConfirm": "Öğeyi kaldır",
- "sharedNoData": "Veri yok",
- "sharedSubject": "Subject",
- "sharedYes": "Evet",
- "sharedNo": "Hayır",
- "sharedKm": "km",
- "sharedMi": "mil",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "knot",
- "sharedKmh": "km/s",
- "sharedMph": "mil/s",
- "sharedHour": "Saat",
- "sharedMinute": "Dakika",
- "sharedSecond": "Saniye",
- "sharedDays": "gün",
- "sharedHours": "saat",
- "sharedMinutes": "dakika",
- "sharedDecimalDegrees": "Onluk Derece",
- "sharedDegreesDecimalMinutes": "Onluk Dakika Derecesi",
- "sharedDegreesMinutesSeconds": "Dakika Saniye Derecesi",
- "sharedName": "İsim",
- "sharedDescription": "Açıklama",
- "sharedSearch": "Arama",
- "sharedIconScale": "Simge Ölçeği",
- "sharedGeofence": "Güvenli Bölge",
- "sharedGeofences": "Güvenli Bölgeler",
- "sharedCreateGeofence": "Coğrafi Sınır oluştur",
- "sharedNotifications": "Bildirimler",
- "sharedNotification": "Bildirim",
- "sharedAttributes": "Nitelikler",
- "sharedAttribute": "Nitelik",
- "sharedDrivers": "Sürücüler",
- "sharedDriver": "Sürücü",
- "sharedArea": "Bölge",
- "sharedSound": "Bildirim sesi",
- "sharedType": "Tip",
- "sharedDistance": "Mesafe",
- "sharedHourAbbreviation": "s",
- "sharedMinuteAbbreviation": "d",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "galon",
- "sharedLiter": "Litre",
- "sharedImpGallon": "İngiliz Galonu",
- "sharedUsGallon": "Amerikan Galonu",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Harita Durumunu Getir",
- "sharedComputedAttribute": "Hesaplanmış Nitelik",
- "sharedComputedAttributes": "Hesaplanmış Nitelikler",
- "sharedCheckComputedAttribute": "Hesaplanmış Nitelikleri Kontrol Et",
- "sharedExpression": "İfade",
- "sharedDevice": "Cihaz",
- "sharedTest": "Test",
- "sharedTestNotification": "Deneme bildirimi gönder",
- "sharedTestNotificators": "Test Kanalları",
- "sharedTestExpression": "Test İfadesi",
- "sharedCalendar": "Takvim",
- "sharedCalendars": "Takvimler",
- "sharedFile": "Dosya",
- "sharedSearchDevices": "Cihaz Arama",
- "sharedSortBy": "Göre sırala",
- "sharedFilterMap": "Haritada Filtrele",
- "sharedSelectFile": "Dosya Seçin",
- "sharedPhone": "Telefon",
- "sharedRequired": "Gerekli",
- "sharedPreferences": "Özellikler",
- "sharedPermissions": "Yetkiler",
- "sharedConnections": "Bağlantılar",
- "sharedExtra": "Ekstra",
- "sharedPrimary": "Birincil",
- "sharedSecondary": "İkincil",
- "sharedTypeString": "Akış",
- "sharedTypeNumber": "Sayı",
- "sharedTypeBoolean": "Evet - Hayır",
- "sharedTimezone": "Saat dilimi",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Komut Kaydet",
- "sharedSavedCommands": "Komutları Kaydet",
- "sharedNew": "Yeni",
- "sharedShowAddress": "Adresi Göster",
- "sharedShowDetails": "Daha fazla detay",
- "sharedDisabled": "Devre Dışı",
- "sharedMaintenance": "Bakım",
- "sharedDeviceAccumulators": "Akümülatörler",
- "sharedAlarms": "Alarmlar",
- "sharedLocation": "Konum",
- "sharedImport": "İçe aktarmak",
- "sharedColumns": "Sütunlar",
- "sharedDropzoneText": "Bir dosyayı buraya sürükleyip bırakın veya tıklayın",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Basit",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Bir kere",
- "calendarDaily": "Günlük",
- "calendarWeekly": "Haftalık",
- "calendarMonthly": "Aylık",
- "calendarDays": "Gün",
- "calendarSunday": "Pazar",
- "calendarMonday": "Pazartesi",
- "calendarTuesday": "Salı",
- "calendarWednesday": "Çarşamba",
- "calendarThursday": "Perşembe",
- "calendarFriday": "Cuma",
- "calendarSaturday": "Cumartesi",
- "attributeShowGeofences": "Coğrafi Sınırları Göster",
- "attributeSpeedLimit": "Hız Limiti",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Çizgi uzaklığı",
- "attributeReportIgnoreOdometer": "Rapor: Odometerı yoksay",
- "attributeWebReportColor": "Web: Rapor Rengi",
- "attributeDevicePassword": "Araç şifresi",
- "attributeDeviceImage": "Cihaz Resmi",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "İşleniyor: Nitelikler Kopyalanıyor",
- "attributeColor": "Renk",
- "attributeWebLiveRouteLength": "Web: Rota Uzunluğu",
- "attributeWebSelectZoom": "Web: Seçiliye Yaklaş",
- "attributeWebMaxZoom": "Web: Maksimum Yakınlaştırma",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Eposta: SMTP Sunucu",
- "attributeMailSmtpPort": "Eposta: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Eposta: SMTP STARTTLS Kullan",
- "attributeMailSmtpStarttlsRequired": "Eposta: SMTP STARTTLS Gerekli",
- "attributeMailSmtpSslEnable": "Eposta: SMTP SSL Kullan",
- "attributeMailSmtpSslTrust": "Eposta: SMTP SSL Güvenli",
- "attributeMailSmtpSslProtocols": "Eposta: SMTP SSL Protokol",
- "attributeMailSmtpFrom": "Eposta: SMTP Kimden",
- "attributeMailSmtpAuth": "Eposta: SMTP Parola Etkin",
- "attributeMailSmtpUsername": "Eposta: SMTP Kullanıcı Adı",
- "attributeMailSmtpPassword": "Eposta: SMTP Şifre",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "Etkinlikler Devredışı",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "Görünüm: Sürücüler Devredışı",
- "attributeUiDisableComputedAttributes": "Görünüm: Hesaplanmış Öznitelikler Devredışı",
- "attributeUiDisableCalendars": "Görünüm: Takvim Devredışı",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "Konum Özniteliklerini Gizle",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Hata",
- "errorGeneral": "Geçersiz parametre veya kısıtlama ihlali",
- "errorConnection": "Bağlantı Hatası",
- "errorSocket": "Web Soketine bağlanırken hata",
- "errorZero": "Sıfır olamaz",
- "userEmail": "Eposta",
- "userPassword": "Şifre",
- "userAdmin": "Yönetici",
- "userRemember": "Hatırla",
- "userExpirationTime": "Geçersizlik Tarihi",
- "userDeviceLimit": "Cihaz Limiti",
- "userUserLimit": "Kullanıcı Limiti",
- "userDeviceReadonly": "Cihaz Salt Okunur",
- "userLimitCommands": "Komutları Kısıtla",
- "userDisableReports": "Raporları Devre Dışı Bırak",
- "userFixedEmail": "No Email Change",
- "userToken": "Kullanıcı Anahtarı",
- "userDeleteAccount": "Hesabı sil",
- "userTemporary": "Temporary",
- "loginTitle": "Oturum aç",
- "loginLanguage": "Lisan",
- "loginReset": "Şifreyi yenile",
- "loginRegister": "Kayıt",
- "loginLogin": "Oturumu aç",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Geçersiz eposta veya şifre",
- "loginCreated": "Yeni kullanıcı kaydedildi",
- "loginResetSuccess": "E-postanı kontrol et",
- "loginUpdateSuccess": "Yeni şifre belirlendi",
- "loginLogout": "Oturumu sonlandır",
- "loginLogo": "Logo",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Cihazlar ve Bölge",
- "deviceSelected": "Seçilen Cihaz",
- "deviceTitle": "Cihazlar",
- "devicePrimaryInfo": "Cihaz Başlığı",
- "deviceSecondaryInfo": "Cihaz Detayı",
- "deviceIdentifier": "Kimlik",
- "deviceModel": "Model",
- "deviceContact": "İletişim",
- "deviceCategory": "Kategori",
- "deviceLastUpdate": "Son Güncelleme",
- "deviceCommand": "Komut",
- "deviceFollow": "Takip",
- "deviceTotalDistance": "Toplam Mesafe",
- "deviceStatus": "Durum",
- "deviceStatusOnline": "Çevrimiçi",
- "deviceStatusOffline": "Çevrimdışı",
- "deviceStatusUnknown": "Bilinmeyen",
- "deviceRegisterFirst": "İlk cihazınızı kaydedin",
- "deviceIdentifierHelp": "IMEI, seri numarası veya diğer kimlik. Tanımlayıcı cihaz raporlarını sunucuyla eşleştirmesi gerekir.",
- "deviceShare": "Share Device",
- "groupDialog": "Grup",
- "groupParent": "Grup",
- "groupNoGroup": "Grupsuz",
- "settingsTitle": "Ayarlar",
- "settingsUser": "Hesap",
- "settingsGroups": "Gruplar",
- "settingsServer": "Sunucu",
- "settingsUsers": "Kullanıcı",
- "settingsDistanceUnit": "Uzaklık Birimi",
- "settingsAltitudeUnit": "Rakım Birimi",
- "settingsSpeedUnit": "Hız Birimi",
- "settingsVolumeUnit": "Hacim Birimi",
- "settingsTwelveHourFormat": "12 saat formatı",
- "settingsCoordinateFormat": "Koordinat Formatı",
- "settingsServerVersion": "Sunucu Sürümü",
- "settingsAppVersion": "Uygulama sürümü",
- "settingsConnection": "Bağlantı",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Raporlar",
- "reportScheduled": "Planlanmış Raporlar",
- "reportDevice": "Aygıt",
- "reportGroup": "Grup",
- "reportFrom": "Başlangıç",
- "reportTo": "Varış",
- "reportShow": "Göster",
- "reportClear": "Temizle",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Cihaz Saati",
- "positionServerTime": "Sunucu zamanı",
- "positionValid": "Geçerli",
- "positionAccuracy": "Hata Payı",
- "positionLatitude": "Enlem",
- "positionLongitude": "Boylam",
- "positionAltitude": "Rakım",
- "positionSpeed": "Sürat",
- "positionCourse": "Yön",
- "positionAddress": "Adres",
- "positionProtocol": "Protokol",
- "positionDistance": "Mesafe",
- "positionRpm": "RPM",
- "positionFuel": "Yakıt",
- "positionPower": "Güç",
- "positionBattery": "Batarya",
- "positionRaw": "Ham",
- "positionIndex": "Indeks",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Uydu",
- "positionSatVisible": "Görünür Uydu",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Dolaşım",
- "positionEvent": "Etkinlik",
- "positionAlarm": "Alarm",
- "positionStatus": "Durum",
- "positionOdometer": "Kilometre Sayacı",
- "positionServiceOdometer": "Kilometre Sayacı Hizmeti",
- "positionTripOdometer": "Kilometre Sayacı Turu",
- "positionHours": "Saat",
- "positionSteps": "Adım",
- "positionInput": "Giren",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Çıkan",
- "positionBatteryLevel": "Pil Seviyesi",
- "positionFuelConsumption": "Yakıt Tüketimi",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Versiyonu",
- "positionVersionHw": "Hardware Versiyonu",
- "positionIgnition": "Kontak",
- "positionFlags": "Etiketler",
- "positionCharge": "Şarz",
- "positionIp": "IP",
- "positionArchive": "Arşiv",
- "positionVin": "VIN",
- "positionApproximate": "Yaklaşık",
- "positionThrottle": "Kısıtlama",
- "positionMotion": "Hareket",
- "positionArmed": "Hazır",
- "positionAcceleration": "Hızlanma",
- "positionTemp": "Sıcaklık",
- "positionDeviceTemp": "Cihaz Sıcaklığı",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operatör",
- "positionCommand": "Komut",
- "positionBlocked": "Bloke Edildi",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Hız",
- "positionObdOdometer": "OBD Kilometre Sayacı",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Benzersiz Sürücü Kimliği",
- "positionCard": "Card",
- "positionImage": "Görüntü",
- "positionVideo": "Video",
- "positionAudio": "Ses",
- "serverTitle": "Sunucu Ayarları",
- "serverZoom": "Yakınlaştırma",
- "serverRegistration": "Kayıt",
- "serverReadonly": "Sadece Okunur",
- "serverForceSettings": "Zorunlu Ayarlar",
- "serverAnnouncement": "Duyuru",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Harita",
- "mapActive": "Aktif Haritalar",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Harita Katmanı",
- "mapCustom": "Özel (XYZ)",
- "mapCustomArcgis": "Özel (ArcGIS)",
- "mapCustomLabel": "Özel harita",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Çokgen",
- "mapShapeCircle": "Çember",
- "mapShapePolyline": "Çizim",
- "mapLiveRoutes": "Canlı Takip",
- "mapDirection": "Yönü Göster",
- "mapCurrentLocation": "Mevcut konum",
- "mapPoiLayer": "POI Katmanı",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Seçimde Haritayı Göster",
- "mapDefault": "Varsayılan Harita",
- "stateTitle": "Bölge",
- "stateName": "Özellik",
- "stateValue": "Değer",
- "commandTitle": "Komut",
- "commandSend": "Gönder",
- "commandSent": "Komut gönderildi",
- "commandQueued": "Komut sıraya alındı",
- "commandUnit": "Ünite",
- "commandCustom": "Özel komut",
- "commandDeviceIdentification": "Cihaz Tanımı",
- "commandPositionSingle": "Tekil Raporlama",
- "commandPositionPeriodic": "Periyodik Rapor",
- "commandPositionStop": "Raporlamayı Durdur",
- "commandEngineStop": "Motoru Durdur",
- "commandEngineResume": "Motoru Çalıştır",
- "commandAlarmArm": "Alarm Kur",
- "commandAlarmDisarm": "Alarmı Kapat",
- "commandAlarmDismiss": "Alarmı Kapat",
- "commandSetTimezone": "Zaman Dilimini Belirle",
- "commandRequestPhoto": "Fotoğraf İste",
- "commandPowerOff": "Cihazı Kapatın",
- "commandRebootDevice": "Aygıtı Yeniden Başlat",
- "commandFactoryReset": "Fabrika Ayarları",
- "commandSendSms": "SMS Gönder",
- "commandSendUssd": "USSD Gönder",
- "commandSosNumber": "Acil Durum Numarasını Belirle",
- "commandSilenceTime": "Sessiz Zamanı Belirle",
- "commandSetPhonebook": "Telefon Defterini Belirle",
- "commandVoiceMessage": "Ses Mesajı",
- "commandOutputControl": "Çıkış Kontrolü",
- "commandVoiceMonitoring": "Ses İzleme",
- "commandSetAgps": "AGPS Ayarla",
- "commandSetIndicator": "Belirteci Ayarla",
- "commandConfiguration": "Konfigürasyon",
- "commandGetVersion": "Sürüm Al",
- "commandFirmwareUpdate": "Aygıt Yazılımı Güncelle",
- "commandSetConnection": "Bağlantı Ayarla",
- "commandSetOdometer": "Kilometre Sayacı Ayarla",
- "commandGetModemStatus": "Modem Durumunu Al",
- "commandGetDeviceStatus": "Cihaz Durumunu Al",
- "commandSetSpeedLimit": "Hız Sınırını Ayarla",
- "commandModePowerSaving": "Enerji Tasarrufu Modu",
- "commandModeDeepSleep": "Derin Uyku Modu",
- "commandAlarmGeofence": "Coğrafi Sınır Alarmını Ayarla",
- "commandAlarmBattery": "Pil Alarmını Ayarla",
- "commandAlarmSos": "SOS Alarmını Ayarla",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Saat Alarmını Ayarla",
- "commandAlarmSpeed": "Hız Alarmını Ayarla",
- "commandAlarmFall": "Düşme Alarmını Ayarla",
- "commandAlarmVibration": "Titreşim Alarmını Ayarla",
- "commandFrequency": "Frekans",
- "commandTimezone": "Saat Dilimi Dışında",
- "commandMessage": "Mesaj",
- "commandRadius": "Yarıçap",
- "commandEnable": "Etkinleştir",
- "commandData": "Veri",
- "commandIndex": "Fihrist",
- "commandPhone": "Telefon Numarası",
- "commandServer": "Sunucu",
- "commandPort": "Port",
- "eventAll": "Tüm Olaylar",
- "eventDeviceOnline": "Durumu çevrimiçi",
- "eventDeviceUnknown": "Durumu bilinmiyor",
- "eventDeviceOffline": "Durum çevrimdışı",
- "eventDeviceInactive": "Cihaz etkin değil",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Cihaz hareket halinde",
- "eventDeviceStopped": "Cihaz hareket etmiyor",
- "eventDeviceOverspeed": "Hız limiti aşıldı",
- "eventDeviceFuelDrop": "Yakıt düştü",
- "eventDeviceFuelIncrease": "Yakıt artışı",
- "eventCommandResult": "Komut sonucu",
- "eventGeofenceEnter": "Coğrafik çite girildi",
- "eventGeofenceExit": "Coğrafik çitden çıkıldı",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Kontak açık",
- "eventIgnitionOff": "Kontak kapalı",
- "eventMaintenance": "Bakım Gerekli",
- "eventTextMessage": "Kısa mesaj alındı",
- "eventDriverChanged": "Sürücü değişti",
- "eventMedia": "Media",
- "eventsScrollToLast": "Sona Git",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Genel",
- "alarmSos": "Acil Yardım",
- "alarmVibration": "Sarsıntı",
- "alarmMovement": "Hareket",
- "alarmLowspeed": "Düşük Hız",
- "alarmOverspeed": "Aşırı Hız",
- "alarmFallDown": "Düşmek",
- "alarmLowPower": "Düşük Güç",
- "alarmLowBattery": "Düşük pil",
- "alarmFault": "Arıza",
- "alarmPowerOff": "Kapalı",
- "alarmPowerOn": "Çalışıyor",
- "alarmDoor": "Kapı",
- "alarmLock": "Kilit acık",
- "alarmUnlock": "Kilit kapalı",
- "alarmGeofence": "Coğrafik çit",
- "alarmGeofenceEnter": "Coğrafik çite girildi",
- "alarmGeofenceExit": "Coğrafik çitden çıkıldı",
- "alarmGpsAntennaCut": "GPS Anteni Kes",
- "alarmAccident": "Kaza",
- "alarmTow": "Çekme",
- "alarmIdle": "Çalışmıyor",
- "alarmHighRpm": "Yüksek devir",
- "alarmHardAcceleration": "Ani Hızlanma",
- "alarmHardBraking": "Ani Yavaşlama",
- "alarmHardCornering": "Sert Viraj",
- "alarmLaneChange": "Şerit Değiştirme",
- "alarmFatigueDriving": "Yorgun Sürücü",
- "alarmPowerCut": "Enerji kesildi",
- "alarmPowerRestored": "Enerji geldi",
- "alarmJamming": "Sıkışıklık",
- "alarmTemperature": "Hararet",
- "alarmParking": "Park halinde",
- "alarmBonnet": "Kaput",
- "alarmFootBrake": "Ayak freni",
- "alarmFuelLeak": "Yakıt sızıntısı",
- "alarmTampering": "Kurcalama",
- "alarmRemoving": "Çıkarma",
- "notificationType": "Bildirim tipi",
- "notificationAlways": "Tüm Cihazlar",
- "notificationNotificators": "Kanallar",
- "notificatorCommand": "Emir",
- "notificatorWeb": "Web",
- "notificatorMail": "Eposta",
- "notificatorSms": "SMS Mesajı",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Tekrar oynat",
- "reportCombined": "Kombine",
- "reportRoute": "Rota",
- "reportEvents": "Olaylar",
- "reportTrips": "Turlar",
- "reportStops": "Stops",
- "reportSummary": "Özet",
- "reportDaily": "Günlük Özet",
- "reportChart": "Grafik",
- "reportConfigure": "Ayarlar",
- "reportEventTypes": "Olay Tipleri",
- "reportChartType": "Grafik Tipi",
- "reportShowMarkers": "İşaretleri Göster",
- "reportExport": "Çıktı Al",
- "reportEmail": "Eposta Rapor",
- "reportSchedule": "Takvim",
- "reportPeriod": "Dönem",
- "reportCustom": "Özel",
- "reportToday": "Bugün",
- "reportYesterday": "Dün",
- "reportThisWeek": "Bu Hafta",
- "reportPreviousWeek": "Geçen Hafta",
- "reportThisMonth": "Bu Ay",
- "reportPreviousMonth": "Geçen Ay",
- "reportDeviceName": "Cihaz İsmi",
- "reportAverageSpeed": "Ortalama Hız",
- "reportMaximumSpeed": "En Fazla Hız",
- "reportEngineHours": "Motor Saatleri",
- "reportDuration": "Süre",
- "reportStartDate": "Başlangıç ​​Tarihi",
- "reportStartTime": "Başlama Zamanı",
- "reportStartAddress": "Başlama Adresi",
- "reportEndTime": "Bittiği Zaman",
- "reportEndAddress": "Bittiği Adres",
- "reportSpentFuel": "Tüketilen Yakıt",
- "reportStartOdometer": "Kilometre Sayacı Başlangıçı",
- "reportEndOdometer": "Kilometre Sayacı Sonu",
- "statisticsTitle": "Statistics",
- "statisticsCaptureTime": "Yakalama Zamanı",
- "statisticsActiveUsers": "Aktif Kullanıcılar",
- "statisticsActiveDevices": "Aktif Cihazlar",
- "statisticsRequests": "İstenilenler",
- "statisticsMessagesReceived": "Mesajlar Alındı",
- "statisticsMessagesStored": "Mesajlar Kaydedildi",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Yön",
- "categoryDefault": "Varsayılan",
- "categoryAnimal": "Hayvan",
- "categoryBicycle": "Bisiklet",
- "categoryBoat": "Tekne",
- "categoryBus": "Otobüs",
- "categoryCar": "Araba",
- "categoryCamper": "Camper",
- "categoryCrane": "Vinç",
- "categoryHelicopter": "Helikopter",
- "categoryMotorcycle": "Motorsiklet",
- "categoryOffroad": "Offroad",
- "categoryPerson": "İnsan",
- "categoryPickup": "Kamyonet",
- "categoryPlane": "Uçak",
- "categoryShip": "Gemi",
- "categoryTractor": "Tractor",
- "categoryTrain": "Tren",
- "categoryTram": "Tramvay",
- "categoryTrolleybus": "Troleybüs",
- "categoryTruck": "Kamyon",
- "categoryVan": "Van",
- "categoryScooter": "Mobilet",
- "maintenanceStart": "Başlat",
- "maintenancePeriod": "Dönem"
-} \ No newline at end of file
diff --git a/web/l10n/uk.json b/web/l10n/uk.json
deleted file mode 100644
index 5e013dc6..00000000
--- a/web/l10n/uk.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Завантаження... ",
- "sharedHide": "Приховувати",
- "sharedSave": "Зберегти",
- "sharedUpload": "Upload",
- "sharedSet": "Встановити",
- "sharedCancel": "Відміна",
- "sharedCopy": "Copy",
- "sharedAdd": "Додати",
- "sharedEdit": "Редагувати",
- "sharedRemove": "Видалити",
- "sharedRemoveConfirm": "Видалити пункт?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "км",
- "sharedMi": "Милi",
- "sharedNmi": "морська миля",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "Вузли",
- "sharedKmh": "км/год",
- "sharedMph": "Миль/год",
- "sharedHour": "Години",
- "sharedMinute": "Хвилини",
- "sharedSecond": "Секунди",
- "sharedDays": "днів",
- "sharedHours": "годин",
- "sharedMinutes": "хвилин",
- "sharedDecimalDegrees": "Градуси°",
- "sharedDegreesDecimalMinutes": "Градуси° хвилини′",
- "sharedDegreesMinutesSeconds": "Градуси° хвилини′ секунди″",
- "sharedName": "Назва пристрою",
- "sharedDescription": "Опис",
- "sharedSearch": "Пошук",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Геозон",
- "sharedGeofences": "Геозони",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Повідомлення",
- "sharedNotification": "Повідомлення",
- "sharedAttributes": "Атрибути",
- "sharedAttribute": "Атрибут",
- "sharedDrivers": "Водії",
- "sharedDriver": "Водій",
- "sharedArea": "Площа",
- "sharedSound": "Звукове повідомлення",
- "sharedType": "Тип",
- "sharedDistance": "Відстань",
- "sharedHourAbbreviation": "г",
- "sharedMinuteAbbreviation": "хв",
- "sharedSecondAbbreviation": "c",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Літр",
- "sharedImpGallon": "Імп. галон",
- "sharedUsGallon": "Галон США",
- "sharedLiterPerHourAbbreviation": "л/ч",
- "sharedGetMapState": "Отримати стан карти",
- "sharedComputedAttribute": "Обчислюваний атрибут",
- "sharedComputedAttributes": "Обчислювані атрибути",
- "sharedCheckComputedAttribute": "Перевірити обчислюваний атрибут",
- "sharedExpression": "Вираз",
- "sharedDevice": "Пристрій",
- "sharedTest": "Test",
- "sharedTestNotification": "Відправити тестове повідомлення",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Календар",
- "sharedCalendars": "Календарi",
- "sharedFile": "Файл",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Вибрати файл",
- "sharedPhone": "Телефон",
- "sharedRequired": "Обов'язкові",
- "sharedPreferences": "Налаштування",
- "sharedPermissions": "Дозволи",
- "sharedConnections": "Connections",
- "sharedExtra": "Екстра",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Строка",
- "sharedTypeNumber": "Число",
- "sharedTypeBoolean": "Логічне значення",
- "sharedTimezone": "Часовий пояс",
- "sharedInfoTitle": "Інфо",
- "sharedSavedCommand": "Збережена команда",
- "sharedSavedCommands": "Збережені команди",
- "sharedNew": "Новий…",
- "sharedShowAddress": "Показати адрес",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Вимкнутий",
- "sharedMaintenance": "Обслуговування",
- "sharedDeviceAccumulators": "Акумулятори",
- "sharedAlarms": "Тривоги",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Обмеження швидкості",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Відстань від лінії",
- "attributeReportIgnoreOdometer": "Звіт: Ігнорувати одометер",
- "attributeWebReportColor": "Веб: Колір звіту",
- "attributeDevicePassword": "Пароль пристрою",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Обробка: Копіювання атрибутів",
- "attributeColor": "Колір",
- "attributeWebLiveRouteLength": "Веб: Довжина онлайн маршруту",
- "attributeWebSelectZoom": "Веб: Збільшення при виборі",
- "attributeWebMaxZoom": "Веб: Максимальне збільшення",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Пошта: SMTP хост",
- "attributeMailSmtpPort": "Пошта: SMTP порт",
- "attributeMailSmtpStarttlsEnable": "Пошта: увімкнути SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "Пошта: потрібен SMTP STARTTLS",
- "attributeMailSmtpSslEnable": "Пошта: увімкнути SMTP SSL",
- "attributeMailSmtpSslTrust": "Пошта: довіра SMTP SSL",
- "attributeMailSmtpSslProtocols": "Пошта: Протоколи SMTP SSL",
- "attributeMailSmtpFrom": "Пошта: SMTP відправник",
- "attributeMailSmtpAuth": "Пошта: Увімкнути SMTP Auth",
- "attributeMailSmtpUsername": "Пошта: SMTP ім'я користувача",
- "attributeMailSmtpPassword": "Пошта: SMTP пароль",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Вимкнути події",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Вимкнути водіїв",
- "attributeUiDisableComputedAttributes": "UI: Вимкнути обчислювані атрибути",
- "attributeUiDisableCalendars": "UI: Вимкнути календарі",
- "attributeUiDisableMaintenance": "UI: Вимкнути обслуговування",
- "attributeUiHidePositionAttributes": "UI: Приховувати атрибути",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Помилка",
- "errorGeneral": "Неправильні параметри або порушення обмежень",
- "errorConnection": "Помилка з'єднання",
- "errorSocket": "Помилка web socket з'єднання",
- "errorZero": "Не може бути нульовим",
- "userEmail": "E-mail",
- "userPassword": "Пароль",
- "userAdmin": "Адмiнiстратор",
- "userRemember": "Запам'ятати",
- "userExpirationTime": "Термін дії",
- "userDeviceLimit": "Обмеження пристроїв",
- "userUserLimit": "Обмеження користувачів",
- "userDeviceReadonly": "Тільки перегляд пристроїв",
- "userLimitCommands": "Обмеження команд",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Ключ",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Логiн",
- "loginLanguage": "Мова",
- "loginReset": "Reset Password",
- "loginRegister": "Реєстрація",
- "loginLogin": "Ввійти",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Неправильне адреса електронної пошти або пароль",
- "loginCreated": "Новий користувач був зареєстрований",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Вийти",
- "loginLogo": "Логотип",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Пристрої та стан",
- "deviceSelected": "Selected Device",
- "deviceTitle": " Прилади",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Iдентифікатор",
- "deviceModel": "Модель",
- "deviceContact": "Контакт",
- "deviceCategory": "Категорія",
- "deviceLastUpdate": "Останнє оновлення",
- "deviceCommand": "Команда",
- "deviceFollow": "Слідувати",
- "deviceTotalDistance": "Загальна відстань",
- "deviceStatus": "Статус",
- "deviceStatusOnline": "Онлайн",
- "deviceStatusOffline": "Офлайн",
- "deviceStatusUnknown": "Невідомий",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Група",
- "groupParent": "Група",
- "groupNoGroup": "Група відсутня",
- "settingsTitle": "Налаштування",
- "settingsUser": "Аккаунт",
- "settingsGroups": "Групи",
- "settingsServer": "Сервер",
- "settingsUsers": "Користувачі",
- "settingsDistanceUnit": "Одиниця відстані",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Одиниця швидкості",
- "settingsVolumeUnit": "Одиниця об'єму",
- "settingsTwelveHourFormat": "12-годинний формат",
- "settingsCoordinateFormat": "Формат координат",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Звіти",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Пристрій ",
- "reportGroup": "Група",
- "reportFrom": "З",
- "reportTo": "До",
- "reportShow": "Показати",
- "reportClear": "Очистити",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Дійсний",
- "positionAccuracy": "Точність",
- "positionLatitude": "Широта",
- "positionLongitude": "Довгота ",
- "positionAltitude": "Висота",
- "positionSpeed": "Швидкість ",
- "positionCourse": "Напрямок",
- "positionAddress": "Адреса",
- "positionProtocol": "Протокол",
- "positionDistance": "Відстань",
- "positionRpm": "Обороти",
- "positionFuel": "Паливо",
- "positionPower": "Живлення",
- "positionBattery": "Батарея",
- "positionRaw": "Cирі дані",
- "positionIndex": "Індекс",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Супутники",
- "positionSatVisible": "Видимі супутники",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Роумінг",
- "positionEvent": "Подія",
- "positionAlarm": "Тривога",
- "positionStatus": "Статус",
- "positionOdometer": "Одометр",
- "positionServiceOdometer": "Одометр обслуговування",
- "positionTripOdometer": "Одометр поїздки",
- "positionHours": "Години",
- "positionSteps": "Кроки",
- "positionInput": "Входи",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Виходи",
- "positionBatteryLevel": "Рівень заряду батареї",
- "positionFuelConsumption": "Витрати палива",
- "positionRfid": "RFID",
- "positionVersionFw": "Версія прошивки",
- "positionVersionHw": "Версія пристрою",
- "positionIgnition": "Запалення",
- "positionFlags": "Флаги",
- "positionCharge": "Заряд",
- "positionIp": "IP",
- "positionArchive": "Архів",
- "positionVin": "VIN",
- "positionApproximate": "Приблизний",
- "positionThrottle": "Дросель",
- "positionMotion": "Рух",
- "positionArmed": "Охорона",
- "positionAcceleration": "Прискорення",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Температура пристрою",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Оператор",
- "positionCommand": "Команда",
- "positionBlocked": "Блокування",
- "positionDtcs": "Помилки",
- "positionObdSpeed": "OBD швидкість",
- "positionObdOdometer": "OBD одометр",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "ID водія",
- "positionCard": "Card",
- "positionImage": "Зображення",
- "positionVideo": "Video",
- "positionAudio": "Аудіо",
- "serverTitle": "Налаштування сервера",
- "serverZoom": "Наближення",
- "serverRegistration": "Реєстрація",
- "serverReadonly": "Лише для читання",
- "serverForceSettings": "Налаштування Force",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Карта",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Використання мап",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Ключ Bing Maps ",
- "mapBingRoad": "Bing Maps Дороги",
- "mapBingAerial": "Bing Maps Супутник",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Багатокутник",
- "mapShapeCircle": "Коло",
- "mapShapePolyline": "Лінія",
- "mapLiveRoutes": "Поточні маршрути",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "Шар POI",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Стан",
- "stateName": "Атрибут",
- "stateValue": "Значення ",
- "commandTitle": "Команда ",
- "commandSend": "Послати. ",
- "commandSent": "Команда відправлена",
- "commandQueued": "Команда додана в чергу",
- "commandUnit": "Одиниці",
- "commandCustom": "Користувацька команда",
- "commandDeviceIdentification": "Ідентифікація пристрою",
- "commandPositionSingle": "Разове відстеження",
- "commandPositionPeriodic": "Періодична звітність",
- "commandPositionStop": "Скасувати відстеження. ",
- "commandEngineStop": "Заблокувати двигун ",
- "commandEngineResume": "Розблокувати двигун",
- "commandAlarmArm": "Активувати сигналізацію",
- "commandAlarmDisarm": "Вимкнути сигналізацію",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Часовий пояс",
- "commandRequestPhoto": "Запит фото",
- "commandPowerOff": "Вимкнути пристрій",
- "commandRebootDevice": "Перезавантаження пристрою",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Надсилання SMS",
- "commandSendUssd": "Надсилання USSD",
- "commandSosNumber": "Номер SOS",
- "commandSilenceTime": "Встановити час пиші",
- "commandSetPhonebook": "Телефонна книга",
- "commandVoiceMessage": "Голосове повідомлення",
- "commandOutputControl": "Контроль виходу",
- "commandVoiceMonitoring": "Голосове повідомлення",
- "commandSetAgps": "Налаштувати AGPS",
- "commandSetIndicator": "Налаштувати ітдикатор",
- "commandConfiguration": "Конфігурація",
- "commandGetVersion": "Отримати версію",
- "commandFirmwareUpdate": "Оновити прошивку",
- "commandSetConnection": "Налаштувати з'єднання",
- "commandSetOdometer": "Налаштувати одометр",
- "commandGetModemStatus": "Отримати стан модема",
- "commandGetDeviceStatus": "Отримати статус пристрою",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Частота",
- "commandTimezone": "Зсув часової зони",
- "commandMessage": "Повідомлення",
- "commandRadius": "Радіус",
- "commandEnable": "Увімкнути",
- "commandData": "Дані",
- "commandIndex": "Індекс",
- "commandPhone": "Номер телефону",
- "commandServer": "Сервер",
- "commandPort": "Порт",
- "eventAll": "Всі події",
- "eventDeviceOnline": "Статус онлайн",
- "eventDeviceUnknown": "Статус невідомий",
- "eventDeviceOffline": "Статус офлайн",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Пристрій рухається",
- "eventDeviceStopped": "Пристрій зупинився",
- "eventDeviceOverspeed": "Перевищено обмеження швидкості",
- "eventDeviceFuelDrop": "Злив палива",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Результат команди",
- "eventGeofenceEnter": "Вхід в геозон",
- "eventGeofenceExit": "Вихід з геозон",
- "eventAlarm": "Тривога",
- "eventIgnitionOn": "Запалення увімкнено",
- "eventIgnitionOff": "Запалення вимкнено",
- "eventMaintenance": "Потрібне обслуговування",
- "eventTextMessage": "Текстове повідомлення отримано",
- "eventDriverChanged": "Водій змінений",
- "eventMedia": "Media",
- "eventsScrollToLast": "Прокрутка до кінця",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "Загальне",
- "alarmSos": "SOS",
- "alarmVibration": "Вібрація",
- "alarmMovement": "Рух",
- "alarmLowspeed": "Низька швидкість",
- "alarmOverspeed": "Перевищення швидкості",
- "alarmFallDown": "Падіння",
- "alarmLowPower": "Низький рівень живлення",
- "alarmLowBattery": "Батарея розряджена",
- "alarmFault": "Несправність",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Двері",
- "alarmLock": "Блокування",
- "alarmUnlock": "Разблокування",
- "alarmGeofence": "Геозон",
- "alarmGeofenceEnter": "Вхід в геозон",
- "alarmGeofenceExit": "Вихід з геозон",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Тип повідомлення",
- "notificationAlways": "Всi пристрої",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Маршрут",
- "reportEvents": "Події",
- "reportTrips": "Подорожі",
- "reportStops": "Зупинки",
- "reportSummary": "Звіт",
- "reportDaily": "Daily Summary",
- "reportChart": "Діаграма",
- "reportConfigure": "Конфігурувати",
- "reportEventTypes": "Тип події",
- "reportChartType": "Тип діаграми",
- "reportShowMarkers": "Показати маркери",
- "reportExport": "Експорт",
- "reportEmail": "Звіт по пошті",
- "reportSchedule": "Schedule",
- "reportPeriod": "Період",
- "reportCustom": "Користувальницький",
- "reportToday": "Сьогодні",
- "reportYesterday": "Вчора",
- "reportThisWeek": "Поточний тиждень",
- "reportPreviousWeek": "Попередній тиждень",
- "reportThisMonth": "Поточний місяць",
- "reportPreviousMonth": "Попередній місяць",
- "reportDeviceName": "Ім'я пристрою",
- "reportAverageSpeed": "Середня швидкість",
- "reportMaximumSpeed": "Максимальна швидкість",
- "reportEngineHours": "Мотогодинник",
- "reportDuration": "Тривалість",
- "reportStartDate": "Start Date",
- "reportStartTime": "Початковий час",
- "reportStartAddress": "Початкова адреса",
- "reportEndTime": "Кінцевий час",
- "reportEndAddress": "Кінцева адреса",
- "reportSpentFuel": "Використано палива",
- "reportStartOdometer": "Одометр, початок",
- "reportEndOdometer": "Одометр, закінчення",
- "statisticsTitle": "Статистика",
- "statisticsCaptureTime": "Час збору",
- "statisticsActiveUsers": "Активні користувачі",
- "statisticsActiveDevices": "Активні пристрої",
- "statisticsRequests": "Запити",
- "statisticsMessagesReceived": "Отримано повідомлень",
- "statisticsMessagesStored": "Збережено повідомлень",
- "statisticsGeocoder": "Запити геокодера",
- "statisticsGeolocation": "Запити геолокації",
- "categoryArrow": "Стрілка",
- "categoryDefault": "За замовчуванням",
- "categoryAnimal": "Тварина",
- "categoryBicycle": "Велосипед",
- "categoryBoat": "Човен",
- "categoryBus": "Автобус",
- "categoryCar": "Автомобіль",
- "categoryCamper": "Camper",
- "categoryCrane": "Кран",
- "categoryHelicopter": "Гвинтокрил",
- "categoryMotorcycle": "Мотоцикл",
- "categoryOffroad": "Позашляховик",
- "categoryPerson": "Людина",
- "categoryPickup": "Пікап",
- "categoryPlane": "Літак",
- "categoryShip": "Корабель",
- "categoryTractor": "Трактор",
- "categoryTrain": "Поїзд",
- "categoryTram": "Трамвай",
- "categoryTrolleybus": "Тролейбус",
- "categoryTruck": "Вантажний автомобіль",
- "categoryVan": "Фургон",
- "categoryScooter": "Скутер",
- "maintenanceStart": "Початок",
- "maintenancePeriod": "Період"
-} \ No newline at end of file
diff --git a/web/l10n/uz.json b/web/l10n/uz.json
deleted file mode 100644
index 51b9364d..00000000
--- a/web/l10n/uz.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Юкланмоқда...",
- "sharedHide": "Беркитиш",
- "sharedSave": "Сақлаш",
- "sharedUpload": "Upload",
- "sharedSet": "Ўрнатиш",
- "sharedCancel": "Бекор қилиш",
- "sharedCopy": "Copy",
- "sharedAdd": "Қўшиш",
- "sharedEdit": "Таҳрирлаш",
- "sharedRemove": "Ўчириш",
- "sharedRemoveConfirm": "Элементни ўчирайми?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "км",
- "sharedMi": "миллар",
- "sharedNmi": "м.миллар",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "уз",
- "sharedKmh": "км/с",
- "sharedMph": "миль/с",
- "sharedHour": "Соат",
- "sharedMinute": "Дақиқалар",
- "sharedSecond": "Сониялар",
- "sharedDays": "days",
- "sharedHours": "hours",
- "sharedMinutes": "minutes",
- "sharedDecimalDegrees": "Ўнлик даража",
- "sharedDegreesDecimalMinutes": "Градуслар Ўнлик Дақиқалар",
- "sharedDegreesMinutesSeconds": "Градуслар Дақиқалар Сониялар",
- "sharedName": "Исм",
- "sharedDescription": "Тавсиф",
- "sharedSearch": "Қидирув",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Геозона",
- "sharedGeofences": "Геозоналар",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Хабарнома",
- "sharedNotification": "Notification",
- "sharedAttributes": "Атрибутлар",
- "sharedAttribute": "Атрибут",
- "sharedDrivers": "Drivers",
- "sharedDriver": "Driver",
- "sharedArea": "Соҳа",
- "sharedSound": "Notification Sound",
- "sharedType": "Тур",
- "sharedDistance": "Масофа",
- "sharedHourAbbreviation": "с",
- "sharedMinuteAbbreviation": "д",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Харита ҳолатини билиш",
- "sharedComputedAttribute": "Computed Attribute",
- "sharedComputedAttributes": "Computed Attributes",
- "sharedCheckComputedAttribute": "Check Computed Attribute",
- "sharedExpression": "Expression",
- "sharedDevice": "Қурилма",
- "sharedTest": "Test",
- "sharedTestNotification": "Send Test Notification",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Тақвим",
- "sharedCalendars": "Тақвимлар",
- "sharedFile": "Файл",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Файлни танлаш",
- "sharedPhone": "Phone",
- "sharedRequired": "Required",
- "sharedPreferences": "Preferences",
- "sharedPermissions": "Permissions",
- "sharedConnections": "Connections",
- "sharedExtra": "Extra",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "String",
- "sharedTypeNumber": "Number",
- "sharedTypeBoolean": "Boolean",
- "sharedTimezone": "Timezone",
- "sharedInfoTitle": "Info",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Speed Limit",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Report: Ignore Odometer",
- "attributeWebReportColor": "Web: Report Color",
- "attributeDevicePassword": "Device Password",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Processing: Copy Attributes",
- "attributeColor": "Color",
- "attributeWebLiveRouteLength": "Web: Live Route Length",
- "attributeWebSelectZoom": "Web: Zoom On Select",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Mail: SMTP Host",
- "attributeMailSmtpPort": "Mail: SMTP Port",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Хато",
- "errorGeneral": "Invalid parameters or constraints violation",
- "errorConnection": "Уланишда хато",
- "errorSocket": "Web socket connection error",
- "errorZero": "Can't be zero",
- "userEmail": "Email",
- "userPassword": "Парол",
- "userAdmin": "Маъмурият",
- "userRemember": "Эслаб қолиш",
- "userExpirationTime": "Хизмат муддати",
- "userDeviceLimit": "Қурилманинг чекловлари",
- "userUserLimit": "Фойдаланувчини чегаралаш",
- "userDeviceReadonly": "Фақат кўриш",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Калит",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Кириш",
- "loginLanguage": "Тил",
- "loginReset": "Reset Password",
- "loginRegister": "Рўйхатдан ўтиш",
- "loginLogin": "Кириш",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Нотўғри email ёки пароль",
- "loginCreated": "Янги фойдаланувчи рўйхатдан ўтди",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Чиқиш",
- "loginLogo": "Логотип",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Қурилмалар ва Ҳолатлар",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Қурилмалар",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Идентификатор",
- "deviceModel": "Модел",
- "deviceContact": "Алоқа воситаси",
- "deviceCategory": "Тоифа",
- "deviceLastUpdate": "Сўнгги янгиланиш",
- "deviceCommand": "Гуруҳ",
- "deviceFollow": "Амал қилиш",
- "deviceTotalDistance": "Умумий масофа",
- "deviceStatus": "Status",
- "deviceStatusOnline": "Online",
- "deviceStatusOffline": "Offline",
- "deviceStatusUnknown": "Unknown",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Гуруҳ",
- "groupParent": "Гуруҳ",
- "groupNoGroup": "Гуруҳсиз",
- "settingsTitle": "Созламалар",
- "settingsUser": "Аккаунт",
- "settingsGroups": "Гуруҳлар",
- "settingsServer": "Сервер",
- "settingsUsers": "Фойдаланувчилар",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "12-соатли формат",
- "settingsCoordinateFormat": "Координаталар формати",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Ҳисоботлар",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Қурилма",
- "reportGroup": "Гуруҳ",
- "reportFrom": "дан",
- "reportTo": "гача",
- "reportShow": "Кўрсатиш",
- "reportClear": "Тозалаш",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Аниқлик",
- "positionAccuracy": "Аниқлик",
- "positionLatitude": "Кенглик",
- "positionLongitude": "Узунлик",
- "positionAltitude": "Баландлик",
- "positionSpeed": "Тезлик",
- "positionCourse": "Йўналиш",
- "positionAddress": "Манзил",
- "positionProtocol": "Баённома",
- "positionDistance": "Оралиқ масофа",
- "positionRpm": "RPM",
- "positionFuel": "Fuel",
- "positionPower": "Power",
- "positionBattery": "Battery",
- "positionRaw": "Raw",
- "positionIndex": "Index",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Event",
- "positionAlarm": "Alarm",
- "positionStatus": "Status",
- "positionOdometer": "Odometer",
- "positionServiceOdometer": "Service Odometer",
- "positionTripOdometer": "Trip Odometer",
- "positionHours": "Hours",
- "positionSteps": "Steps",
- "positionInput": "Input",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Output",
- "positionBatteryLevel": "Battery Level",
- "positionFuelConsumption": "Fuel Consumption",
- "positionRfid": "RFID",
- "positionVersionFw": "Firmware Version",
- "positionVersionHw": "Hardware Version",
- "positionIgnition": "Ignition",
- "positionFlags": "Flags",
- "positionCharge": "Charge",
- "positionIp": "IP",
- "positionArchive": "Archive",
- "positionVin": "VIN",
- "positionApproximate": "Approximate",
- "positionThrottle": "Throttle",
- "positionMotion": "Motion",
- "positionArmed": "Armed",
- "positionAcceleration": "Acceleration",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Device Temperature",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Command",
- "positionBlocked": "Blocked",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "OBD Speed",
- "positionObdOdometer": "OBD Odometer",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Сервер созламалари",
- "serverZoom": "Яқинлаштириш",
- "serverRegistration": "Рўйхатдан ўтиш",
- "serverReadonly": "Фақат кўриш",
- "serverForceSettings": "Созламаларни кучайтириш",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Харита",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Харита қавати",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps калити",
- "mapBingRoad": "Bing Maps йўллар",
- "mapBingAerial": "Bing Maps Спутник",
- "mapBingHybrid": "Bing Maps Hybrid",
- "mapBaidu": "Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Yandex Map",
- "mapYandexSat": "Yandex Satellite",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Кўпбурчак",
- "mapShapeCircle": "Айлана",
- "mapShapePolyline": "Чизиқ",
- "mapLiveRoutes": "Амалдаги маршрутлар",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Ҳолат",
- "stateName": "Параметр",
- "stateValue": "Маъноси",
- "commandTitle": "Буйруқ",
- "commandSend": "Жўнатиш",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "Бирликлар",
- "commandCustom": "Фойдаланувчи буйруғи",
- "commandDeviceIdentification": "Қурилма идентификацияси",
- "commandPositionSingle": "Бир марта кузатиш",
- "commandPositionPeriodic": "Кузатувни бошлаш",
- "commandPositionStop": "Кузатувни бекор қилиш",
- "commandEngineStop": "Двигателни блокировка қилиш",
- "commandEngineResume": "Двигателдан блокировкани ечиш",
- "commandAlarmArm": "Сигнализацияни активлаштириш",
- "commandAlarmDisarm": "Сигнализация активлигини бекор қилиш",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Соат қутбини созлаш",
- "commandRequestPhoto": "Фото сўраш",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Қурилмани қайта юклаш",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "СМС жўнатиш",
- "commandSendUssd": "USSD жўнатиш",
- "commandSosNumber": "Шошилинч рақамни созлаш",
- "commandSilenceTime": "Тинчлик вақтини созлаш",
- "commandSetPhonebook": "Телефон дафтарини созлаш",
- "commandVoiceMessage": "Товушли хабар",
- "commandOutputControl": "Чиқиш назорати",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Set Indicator",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Частота",
- "commandTimezone": "Соат қутбининг силжиши",
- "commandMessage": "Хабар",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Маълумотлар",
- "commandIndex": "Индекс",
- "commandPhone": "Телефон рақами",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Барча воқеалар",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Буйруқ натижаси",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Хизмат кўрсатиш талаб этилади",
- "eventTextMessage": "Text message received",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Scroll To Last",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Хабарнома тури",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Маршрут",
- "reportEvents": "Ҳодисалар",
- "reportTrips": "Сафарлар",
- "reportStops": "Stops",
- "reportSummary": "Маълумот",
- "reportDaily": "Daily Summary",
- "reportChart": "График",
- "reportConfigure": "Конфигурациялаш",
- "reportEventTypes": "Ҳодиса тури",
- "reportChartType": "График тури",
- "reportShowMarkers": "Маркетларни кўрсатиш",
- "reportExport": "Экспорт",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "Қурилма номи",
- "reportAverageSpeed": "Ўртача тезлик",
- "reportMaximumSpeed": "Максимал тезлик",
- "reportEngineHours": "Мотосоат",
- "reportDuration": "Узунлиги",
- "reportStartDate": "Start Date",
- "reportStartTime": "Бошланиш вақти",
- "reportStartAddress": "Бошланиш манзили",
- "reportEndTime": "Тугаш вақти",
- "reportEndAddress": "Сўнгги манзил",
- "reportSpentFuel": "Ёқилғи сарфи",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Статистика",
- "statisticsCaptureTime": "Йиғилиш вақти",
- "statisticsActiveUsers": "Актив фойдаланувчилар",
- "statisticsActiveDevices": "Актив қурилмалар",
- "statisticsRequests": "Сўровлар",
- "statisticsMessagesReceived": "Хабарлар қабул қилинган",
- "statisticsMessagesStored": "Хабарлар сақланган",
- "statisticsGeocoder": "Geocoder Requests",
- "statisticsGeolocation": "Geolocation Requests",
- "categoryArrow": "Стрелка",
- "categoryDefault": "Сўзсиз",
- "categoryAnimal": "Жонивор",
- "categoryBicycle": "Велосипед",
- "categoryBoat": "Boat",
- "categoryBus": "Автобус",
- "categoryCar": "Автомобиль",
- "categoryCamper": "Camper",
- "categoryCrane": "Crane",
- "categoryHelicopter": "Helicopter",
- "categoryMotorcycle": "Мотоцикл",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Одам",
- "categoryPickup": "Pickup",
- "categoryPlane": "Самолёт",
- "categoryShip": "Кема",
- "categoryTractor": "Tractor",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Юк автомобили",
- "categoryVan": "Van",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/vi.json b/web/l10n/vi.json
deleted file mode 100644
index 87f0e236..00000000
--- a/web/l10n/vi.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "Đang tải...",
- "sharedHide": "Ẩn",
- "sharedSave": "Lưu",
- "sharedUpload": "Upload",
- "sharedSet": "Thiết lập",
- "sharedCancel": "Hủy",
- "sharedCopy": "Copy",
- "sharedAdd": "Thêm mới",
- "sharedEdit": "Chỉnh sửa",
- "sharedRemove": "Xóa",
- "sharedRemoveConfirm": "Xóa lựa chọn?",
- "sharedNoData": "No data",
- "sharedSubject": "Subject",
- "sharedYes": "Yes",
- "sharedNo": "No",
- "sharedKm": "km",
- "sharedMi": "dặm",
- "sharedNmi": "nmi",
- "sharedMeters": "m",
- "sharedFeet": "ft",
- "sharedKn": "kn",
- "sharedKmh": "km/h",
- "sharedMph": "mph",
- "sharedHour": "Giờ",
- "sharedMinute": "Phút",
- "sharedSecond": "Giây",
- "sharedDays": "Ngày",
- "sharedHours": "Giờ",
- "sharedMinutes": "Phút",
- "sharedDecimalDegrees": "Độ thập phân",
- "sharedDegreesDecimalMinutes": "Độ thập phân phút",
- "sharedDegreesMinutesSeconds": "Độ thập phân giây",
- "sharedName": "Tên",
- "sharedDescription": "Mô tả",
- "sharedSearch": "Tìm kiếm",
- "sharedIconScale": "Icon Scale",
- "sharedGeofence": "Giới hạn địa lý",
- "sharedGeofences": "Giới hạn địa lý",
- "sharedCreateGeofence": "Create Geofence",
- "sharedNotifications": "Thông báo",
- "sharedNotification": "Notification",
- "sharedAttributes": "Thuộc tính",
- "sharedAttribute": "Thuộc tính",
- "sharedDrivers": "Drivers",
- "sharedDriver": "Driver",
- "sharedArea": "Khu vực",
- "sharedSound": "Tiếng thông báo",
- "sharedType": "Loại",
- "sharedDistance": "Khoảng cách",
- "sharedHourAbbreviation": "h",
- "sharedMinuteAbbreviation": "m",
- "sharedSecondAbbreviation": "s",
- "sharedVoltAbbreviation": "V",
- "sharedLiterAbbreviation": "l",
- "sharedGallonAbbreviation": "gal",
- "sharedLiter": "Liter",
- "sharedImpGallon": "Imp. Gallon",
- "sharedUsGallon": "U.S. Gallon",
- "sharedLiterPerHourAbbreviation": "l/h",
- "sharedGetMapState": "Lấy trạng thái bản đồ",
- "sharedComputedAttribute": "Tính toán thuộc tính",
- "sharedComputedAttributes": "Tính toán thuộc tính",
- "sharedCheckComputedAttribute": "Kiểm tra tính toán thuộc tính",
- "sharedExpression": "Truyền",
- "sharedDevice": "Thiết bị",
- "sharedTest": "Test",
- "sharedTestNotification": "Gửi thông báo thử",
- "sharedTestNotificators": "Test Channels",
- "sharedTestExpression": "Test Expression",
- "sharedCalendar": "Lịch",
- "sharedCalendars": "Lịch",
- "sharedFile": "Tập tin",
- "sharedSearchDevices": "Search Devices",
- "sharedSortBy": "Sort By",
- "sharedFilterMap": "Filter on Map",
- "sharedSelectFile": "Lựa chọn tập tin",
- "sharedPhone": "Điện thoại",
- "sharedRequired": "Bắt buộc",
- "sharedPreferences": "Ưu tiên",
- "sharedPermissions": "Cấp phép",
- "sharedConnections": "Connections",
- "sharedExtra": "Thêm vào",
- "sharedPrimary": "Primary",
- "sharedSecondary": "Secondary",
- "sharedTypeString": "Chuỗi",
- "sharedTypeNumber": "Số",
- "sharedTypeBoolean": "Toán tử",
- "sharedTimezone": "Múi giờ",
- "sharedInfoTitle": "Thông tin",
- "sharedSavedCommand": "Saved Command",
- "sharedSavedCommands": "Saved Commands",
- "sharedNew": "New…",
- "sharedShowAddress": "Show Address",
- "sharedShowDetails": "More Details",
- "sharedDisabled": "Disabled",
- "sharedMaintenance": "Maintenance",
- "sharedDeviceAccumulators": "Accumulators",
- "sharedAlarms": "Alarms",
- "sharedLocation": "Location",
- "sharedImport": "Import",
- "sharedColumns": "Columns",
- "sharedDropzoneText": "Drag and drop a file here or click",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "Simple",
- "calendarRecurrence": "Recurrence",
- "calendarOnce": "Once",
- "calendarDaily": "Daily",
- "calendarWeekly": "Weekly",
- "calendarMonthly": "Monthly",
- "calendarDays": "Days",
- "calendarSunday": "Sunday",
- "calendarMonday": "Monday",
- "calendarTuesday": "Tuesday",
- "calendarWednesday": "Wednesday",
- "calendarThursday": "Thursday",
- "calendarFriday": "Friday",
- "calendarSaturday": "Saturday",
- "attributeShowGeofences": "Show Geofences",
- "attributeSpeedLimit": "Giới hạn tốc độ",
- "attributeFuelDropThreshold": "Fuel Drop Threshold",
- "attributeFuelIncreaseThreshold": "Fuel Increase Threshold",
- "attributePolylineDistance": "Polyline Distance",
- "attributeReportIgnoreOdometer": "Báo cáo: Bỏ qua đồng hồ đo",
- "attributeWebReportColor": "Web: Màu báo cáo",
- "attributeDevicePassword": "Mật khẩu thiết bị",
- "attributeDeviceImage": "Device Image",
- "attributeDeviceInactivityStart": "Device Inactivity Start",
- "attributeDeviceInactivityPeriod": "Device Inactivity Period",
- "attributeProcessingCopyAttributes": "Thực thi: sao chép thuộc tính",
- "attributeColor": "Màu",
- "attributeWebLiveRouteLength": "Web: Độ dài tuyến",
- "attributeWebSelectZoom": "Web: phóng to lựa chọn",
- "attributeWebMaxZoom": "Web: Maximum Zoom",
- "attributeTelegramChatId": "Telegram Chat ID",
- "attributePushoverUserKey": "Pushover User Key",
- "attributePushoverDeviceNames": "Pushover Device Names",
- "attributeMailSmtpHost": "Email: SMTP Host",
- "attributeMailSmtpPort": "Email: Cổng SMTP",
- "attributeMailSmtpStarttlsEnable": "Mail: SMTP STARTTLS Enable",
- "attributeMailSmtpStarttlsRequired": "Mail: SMTP STARTTLS Required",
- "attributeMailSmtpSslEnable": "Mail: SMTP SSL Enable",
- "attributeMailSmtpSslTrust": "Mail: SMTP SSL Trust",
- "attributeMailSmtpSslProtocols": "Mail: SMTP SSL Protocols",
- "attributeMailSmtpFrom": "Mail: SMTP From",
- "attributeMailSmtpAuth": "Mail: SMTP Auth Enable",
- "attributeMailSmtpUsername": "Mail: SMTP Username",
- "attributeMailSmtpPassword": "Mail: SMTP Password",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "UI: Disable Attributes",
- "attributeUiDisableGroups": "UI: Disable Groups",
- "attributeUiDisableEvents": "UI: Disable Events",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "UI: Disable Drivers",
- "attributeUiDisableComputedAttributes": "UI: Disable Computed Attributes",
- "attributeUiDisableCalendars": "UI: Disable Calendars",
- "attributeUiDisableMaintenance": "UI: Disable Maintenance",
- "attributeUiHidePositionAttributes": "UI: Hide Position Attributes",
- "attributeUiDisableLoginLanguage": "UI: Disable Login Language",
- "attributeNotificationTokens": "Notification Tokens",
- "attributePopupInfo": "Popup Info",
- "errorTitle": "Lỗi",
- "errorGeneral": "Tham số không hợp lệ hoặc hạn chế vi phạm",
- "errorConnection": "Lỗi kết nối",
- "errorSocket": "Lỗi kết nối trang",
- "errorZero": "Can't be zero",
- "userEmail": "Email",
- "userPassword": "Mật khẩu",
- "userAdmin": "Quản trị",
- "userRemember": "Nhớ",
- "userExpirationTime": "Hết hạn",
- "userDeviceLimit": "Hạn chế thiết bị",
- "userUserLimit": "Hạn chế người dùng",
- "userDeviceReadonly": "Chỉ xem thiết bị",
- "userLimitCommands": "Limit Commands",
- "userDisableReports": "Disable Reports",
- "userFixedEmail": "No Email Change",
- "userToken": "Token",
- "userDeleteAccount": "Delete Account",
- "userTemporary": "Temporary",
- "loginTitle": "Đăng nhập",
- "loginLanguage": "Ngôn ngữ",
- "loginReset": "Reset Password",
- "loginRegister": "Đăng ký",
- "loginLogin": "Đăng nhập",
- "loginOpenId": "Login with OpenID",
- "loginFailed": "Sai mật khẩu hoặc địa chỉ email",
- "loginCreated": "Người dùng mới đã được đăng ký",
- "loginResetSuccess": "Check your email",
- "loginUpdateSuccess": "New password is set",
- "loginLogout": "Đăng xuất",
- "loginLogo": "Biểu tượng",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "Các thiết bị và trạng thái",
- "deviceSelected": "Selected Device",
- "deviceTitle": "Các thiết bị",
- "devicePrimaryInfo": "Device Title",
- "deviceSecondaryInfo": "Device Detail",
- "deviceIdentifier": "Định danh",
- "deviceModel": "Mẫu",
- "deviceContact": "Liên hệ",
- "deviceCategory": "Phân loại",
- "deviceLastUpdate": "Cập nhật lần cuối",
- "deviceCommand": "Lệnh",
- "deviceFollow": "Theo dõi",
- "deviceTotalDistance": "Tổng quãng đường",
- "deviceStatus": "Trạng thái",
- "deviceStatusOnline": "Trực tuyến",
- "deviceStatusOffline": "Ngoại tuyến",
- "deviceStatusUnknown": "Không xác định",
- "deviceRegisterFirst": "Register your first device",
- "deviceIdentifierHelp": "IMEI, serial number or other id. It has to match the identifier device reports to the server.",
- "deviceShare": "Share Device",
- "groupDialog": "Nhóm",
- "groupParent": "Nhóm",
- "groupNoGroup": "Không có nhóm",
- "settingsTitle": "Cài đặt",
- "settingsUser": "Tài khoản",
- "settingsGroups": "Nhóm",
- "settingsServer": "Máy chủ",
- "settingsUsers": "Người dùng",
- "settingsDistanceUnit": "Distance Unit",
- "settingsAltitudeUnit": "Altitude Unit",
- "settingsSpeedUnit": "Speed Unit",
- "settingsVolumeUnit": "Volume Unit",
- "settingsTwelveHourFormat": "Định dạng 12h",
- "settingsCoordinateFormat": "Cấu chúc tọa độ",
- "settingsServerVersion": "Server Version",
- "settingsAppVersion": "App Version",
- "settingsConnection": "Connection",
- "settingsDarkMode": "Dark Mode",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "Báo cáo",
- "reportScheduled": "Scheduled Reports",
- "reportDevice": "Thiết bị",
- "reportGroup": "Nhóm",
- "reportFrom": "Từ",
- "reportTo": "Đến",
- "reportShow": "Hiển thị",
- "reportClear": "Xóa",
- "linkGoogleMaps": "Google Maps",
- "linkAppleMaps": "Apple Maps",
- "linkStreetView": "Street View",
- "positionFixTime": "Fix Time",
- "positionDeviceTime": "Device Time",
- "positionServerTime": "Server Time",
- "positionValid": "Có hiệu lực",
- "positionAccuracy": "Chính xác",
- "positionLatitude": "Vĩ độ",
- "positionLongitude": "Kinh độ",
- "positionAltitude": "Độ cao",
- "positionSpeed": "Tốc độ",
- "positionCourse": "Hướng",
- "positionAddress": "Địa chỉ",
- "positionProtocol": "Giao thức",
- "positionDistance": "Khoảng cách",
- "positionRpm": "RPM",
- "positionFuel": "Nhiên liệu",
- "positionPower": "Nguồn",
- "positionBattery": "Pin",
- "positionRaw": "Thô",
- "positionIndex": "Danh mục",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "Satellites",
- "positionSatVisible": "Visible Satellites",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "Roaming",
- "positionEvent": "Sự kiện",
- "positionAlarm": "Cảnh báo",
- "positionStatus": "Trạng thái",
- "positionOdometer": "Đồng hồ đo",
- "positionServiceOdometer": "Đồng hồ đo",
- "positionTripOdometer": "Quãng đường",
- "positionHours": "Giờ",
- "positionSteps": "Steps",
- "positionInput": "Nhập",
- "positionHeartRate": "Heart Rate",
- "positionOutput": "Xuất",
- "positionBatteryLevel": "Mức pin",
- "positionFuelConsumption": "Tiêu thụ nhiên liệu",
- "positionRfid": "RFID",
- "positionVersionFw": "Phiên bản",
- "positionVersionHw": "Phiên bản phần cứng",
- "positionIgnition": "Máy",
- "positionFlags": "Cờ",
- "positionCharge": "Nạp tiền",
- "positionIp": "IP",
- "positionArchive": "Lưu trữ",
- "positionVin": "VIN",
- "positionApproximate": "Độ chính xác",
- "positionThrottle": "Cổ hút",
- "positionMotion": "Chuyển động",
- "positionArmed": "Bật báo động",
- "positionAcceleration": "Tăng tốc",
- "positionTemp": "Temperature",
- "positionDeviceTemp": "Nhiệt độ thiết bị",
- "positionCoolantTemp": "Coolant Temperature",
- "positionOperator": "Operator",
- "positionCommand": "Command",
- "positionBlocked": "Chặn",
- "positionDtcs": "DTCs",
- "positionObdSpeed": "Tốc độ OBD",
- "positionObdOdometer": "Quãng đường ODB",
- "positionDrivingTime": "Driving Time",
- "positionDriverUniqueId": "Driver Unique Id",
- "positionCard": "Card",
- "positionImage": "Image",
- "positionVideo": "Video",
- "positionAudio": "Audio",
- "serverTitle": "Cài đặt máy chủ",
- "serverZoom": "Phóng to",
- "serverRegistration": "Đăng ký",
- "serverReadonly": "Chỉ đọc",
- "serverForceSettings": "Buộc thiết lập",
- "serverAnnouncement": "Announcement",
- "serverName": "Server Name",
- "serverDescription": "Server Description",
- "serverColorPrimary": "Color Primary",
- "serverColorSecondary": "Color Secondary",
- "serverLogo": "Logo Image",
- "serverLogoInverted": "Inverted Logo Image",
- "serverChangeDisable": "Disable Server Change",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "Bản đồ",
- "mapActive": "Active Maps",
- "mapOverlay": "Map Overlay",
- "mapOverlayCustom": "Custom Overlay",
- "mapOpenSeaMap": "OpenSeaMap",
- "mapOpenRailwayMap": "OpenRailwayMap",
- "mapOpenWeatherKey": "OpenWeather API Key",
- "mapOpenWeatherClouds": "OpenWeather Clouds",
- "mapOpenWeatherPrecipitation": "OpenWeather Precipitation",
- "mapOpenWeatherPressure": "OpenWeather Pressure",
- "mapOpenWeatherWind": "OpenWeather Wind",
- "mapOpenWeatherTemperature": "OpenWeather Temperature",
- "mapLayer": "Lớp bản đồ",
- "mapCustom": "Custom (XYZ)",
- "mapCustomArcgis": "Custom (ArcGIS)",
- "mapCustomLabel": "Custom map",
- "mapCarto": "Carto Basemaps",
- "mapOsm": "OpenStreetMap",
- "mapGoogleRoad": "Google Road",
- "mapGoogleHybrid": "Google Hybrid",
- "mapGoogleSatellite": "Google Satellite",
- "mapOpenTopoMap": "OpenTopoMap",
- "mapBingKey": "Bing Maps Key",
- "mapBingRoad": "Bing Maps Road",
- "mapBingAerial": "Bing Maps Aerial",
- "mapBingHybrid": "Bản đồ Bing Hybird",
- "mapBaidu": "Bản đồ Baidu",
- "mapAutoNavi": "AutoNavi",
- "mapYandexMap": "Bản đồ Yandex",
- "mapYandexSat": "Bản đồ Yandex Vệ tinh ",
- "mapWikimedia": "Wikimedia",
- "mapOrdnanceSurvey": "Ordnance Survey",
- "mapMapboxStreets": "Mapbox Streets",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox Outdoors",
- "mapMapboxSatellite": "Mapbox Satellite",
- "mapMapboxKey": "Mapbox Access Token",
- "mapMapTilerBasic": "MapTiler Basic",
- "mapMapTilerHybrid": "MapTiler Hybrid",
- "mapMapTilerKey": "MapTiler API Key",
- "mapLocationIqStreets": "LocationIQ Streets",
- "mapLocationIqDark": "LocationIQ Dark",
- "mapLocationIqKey": "LocationIQ Access Token",
- "mapTomTomBasic": "TomTom Basic",
- "mapTomTomFlow": "TomTom Traffic Flow",
- "mapTomTomIncidents": "TomTom Traffic Incidents",
- "mapTomTomKey": "TomTom API Key",
- "mapHereBasic": "Here Basic",
- "mapHereHybrid": "Here Hybrid",
- "mapHereSatellite": "Here Satellite",
- "mapHereFlow": "Here Traffic Flow",
- "mapHereKey": "Here API Key",
- "mapShapePolygon": "Đa giác",
- "mapShapeCircle": "Vòng tròn",
- "mapShapePolyline": "Đường kẻ đa giác",
- "mapLiveRoutes": "Lộ trình trực tuyến",
- "mapDirection": "Show Direction",
- "mapCurrentLocation": "Current Location",
- "mapPoiLayer": "POI Layer",
- "mapClustering": "Markers Clustering",
- "mapOnSelect": "Show Map on Selection",
- "mapDefault": "Default Map",
- "stateTitle": "Trạng thái",
- "stateName": "Thuộc tính",
- "stateValue": "Giá trị",
- "commandTitle": "Lệnh",
- "commandSend": "Gửi",
- "commandSent": "Command sent",
- "commandQueued": "Command queued",
- "commandUnit": "Đơn vị",
- "commandCustom": "Lệnh tùy chỉnh",
- "commandDeviceIdentification": "Định danh thiết bị",
- "commandPositionSingle": "Báo cáo đơn",
- "commandPositionPeriodic": "Báo cáo định kỳ",
- "commandPositionStop": "Dừng báo cáo",
- "commandEngineStop": "Tắt máy",
- "commandEngineResume": "Bật máy",
- "commandAlarmArm": "Báo động cho phép",
- "commandAlarmDisarm": "Báo động không cho phép",
- "commandAlarmDismiss": "Dismiss Alarm",
- "commandSetTimezone": "Thiết lập múi giờ",
- "commandRequestPhoto": "Yêu cầu ảnh",
- "commandPowerOff": "Power Off Device",
- "commandRebootDevice": "Khởi động lại thiết bị",
- "commandFactoryReset": "Factory Reset",
- "commandSendSms": "Gửi tin nhắn",
- "commandSendUssd": "Gửi mã USSD",
- "commandSosNumber": "Thiết lập số khẩn cấp",
- "commandSilenceTime": "Thiêt lập giờ im lặng",
- "commandSetPhonebook": "Thiết lập danh bạ điện thoại",
- "commandVoiceMessage": "Tin nhắn thoại",
- "commandOutputControl": "Điều khiển đầu ra",
- "commandVoiceMonitoring": "Voice Monitoring",
- "commandSetAgps": "Set AGPS",
- "commandSetIndicator": "Thiết lập hiển thị",
- "commandConfiguration": "Configuration",
- "commandGetVersion": "Get Version",
- "commandFirmwareUpdate": "Update Firmware",
- "commandSetConnection": "Set Connection",
- "commandSetOdometer": "Set Odometer",
- "commandGetModemStatus": "Get Modem Status",
- "commandGetDeviceStatus": "Get Device Status",
- "commandSetSpeedLimit": "Set Speed Limit",
- "commandModePowerSaving": "Power Saving Mode",
- "commandModeDeepSleep": "Deep Sleep Mode",
- "commandAlarmGeofence": "Set Geofence Alarm",
- "commandAlarmBattery": "Set Battery Alarm",
- "commandAlarmSos": "Set SOS Alarm",
- "commandAlarmRemove": "Set Remove Alarm",
- "commandAlarmClock": "Set Clock Alarm",
- "commandAlarmSpeed": "Set Speed Alarm",
- "commandAlarmFall": "Set Fall Alarm",
- "commandAlarmVibration": "Set Vibration Alarm",
- "commandFrequency": "Tần suất",
- "commandTimezone": "Múi giờ",
- "commandMessage": "Thông báo",
- "commandRadius": "Radius",
- "commandEnable": "Enable",
- "commandData": "Dữ liệu",
- "commandIndex": "Danh mục",
- "commandPhone": "Số điện thoại",
- "commandServer": "Server",
- "commandPort": "Port",
- "eventAll": "Tất cả sự kiện",
- "eventDeviceOnline": "Status online",
- "eventDeviceUnknown": "Status unknown",
- "eventDeviceOffline": "Status offline",
- "eventDeviceInactive": "Device inactive",
- "eventQueuedCommandSent": "Queued command sent",
- "eventDeviceMoving": "Device moving",
- "eventDeviceStopped": "Device stopped",
- "eventDeviceOverspeed": "Speed limit exceeded",
- "eventDeviceFuelDrop": "Fuel drop",
- "eventDeviceFuelIncrease": "Fuel increase",
- "eventCommandResult": "Kết quả lệnh",
- "eventGeofenceEnter": "Geofence entered",
- "eventGeofenceExit": "Geofence exited",
- "eventAlarm": "Alarm",
- "eventIgnitionOn": "Ignition on",
- "eventIgnitionOff": "Ignition off",
- "eventMaintenance": "Yêu cầu bảo dưỡng",
- "eventTextMessage": "Đã nhận tin nhắn",
- "eventDriverChanged": "Driver changed",
- "eventMedia": "Media",
- "eventsScrollToLast": "Kéo xuống cuối",
- "eventsSoundEvents": "Sound Events",
- "eventsSoundAlarms": "Sound Alarms",
- "alarmGeneral": "General",
- "alarmSos": "SOS",
- "alarmVibration": "Vibration",
- "alarmMovement": "Movement",
- "alarmLowspeed": "Low Speed",
- "alarmOverspeed": "Overspeed",
- "alarmFallDown": "Fall Down",
- "alarmLowPower": "Low Power",
- "alarmLowBattery": "Low Battery",
- "alarmFault": "Fault",
- "alarmPowerOff": "Power Off",
- "alarmPowerOn": "Power On",
- "alarmDoor": "Door",
- "alarmLock": "Lock",
- "alarmUnlock": "Unlock",
- "alarmGeofence": "Geofence",
- "alarmGeofenceEnter": "Geofence Enter",
- "alarmGeofenceExit": "Geofence Exit",
- "alarmGpsAntennaCut": "GPS Antenna Cut",
- "alarmAccident": "Accident",
- "alarmTow": "Tow",
- "alarmIdle": "Idle",
- "alarmHighRpm": "High RPM",
- "alarmHardAcceleration": "Hard Acceleration",
- "alarmHardBraking": "Hard Braking",
- "alarmHardCornering": "Hard Cornering",
- "alarmLaneChange": "Lane Change",
- "alarmFatigueDriving": "Fatigue Driving",
- "alarmPowerCut": "Power Cut",
- "alarmPowerRestored": "Power Restored",
- "alarmJamming": "Jamming",
- "alarmTemperature": "Temperature",
- "alarmParking": "Parking",
- "alarmBonnet": "Bonnet",
- "alarmFootBrake": "Foot Brake",
- "alarmFuelLeak": "Fuel Leak",
- "alarmTampering": "Tampering",
- "alarmRemoving": "Removing",
- "notificationType": "Loại thông báo",
- "notificationAlways": "All Devices",
- "notificationNotificators": "Channels",
- "notificatorCommand": "Command",
- "notificatorWeb": "Web",
- "notificatorMail": "Mail",
- "notificatorSms": "SMS",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "Replay",
- "reportCombined": "Combined",
- "reportRoute": "Lộ trình",
- "reportEvents": "Sự kiện",
- "reportTrips": "Hành trình",
- "reportStops": "Dừng đỗ",
- "reportSummary": "Sơ lược",
- "reportDaily": "Daily Summary",
- "reportChart": "Biểu đồ",
- "reportConfigure": "Cấu hình",
- "reportEventTypes": "Loại sự kiện",
- "reportChartType": "Kiểu biều đồ",
- "reportShowMarkers": "Hiển thị dấu",
- "reportExport": "Xuất",
- "reportEmail": "Email Report",
- "reportSchedule": "Schedule",
- "reportPeriod": "Period",
- "reportCustom": "Custom",
- "reportToday": "Today",
- "reportYesterday": "Yesterday",
- "reportThisWeek": "This Week",
- "reportPreviousWeek": "Previous Week",
- "reportThisMonth": "This Month",
- "reportPreviousMonth": "Previous Month",
- "reportDeviceName": "Tên thiết bị",
- "reportAverageSpeed": "Tốc độ trung bình",
- "reportMaximumSpeed": "Tốc độ cao nhất",
- "reportEngineHours": "Thời gian nổ máy",
- "reportDuration": "Khoảng thời gian",
- "reportStartDate": "Start Date",
- "reportStartTime": "Thời gian bắt đầu",
- "reportStartAddress": "Địa chỉ bắt đầu",
- "reportEndTime": "Thời gian kết thúc",
- "reportEndAddress": "Địa chỉ kết thúc",
- "reportSpentFuel": "Tiêu thụ nguyên liệu",
- "reportStartOdometer": "Odometer Start",
- "reportEndOdometer": "Odometer End",
- "statisticsTitle": "Thống kê",
- "statisticsCaptureTime": "Thời gian",
- "statisticsActiveUsers": "Người dùng được kích hoạt",
- "statisticsActiveDevices": "Thiết bị được kích hoạt",
- "statisticsRequests": "Yêu cầu",
- "statisticsMessagesReceived": "Thông báo đã nhận",
- "statisticsMessagesStored": "Thông báo đã nhận",
- "statisticsGeocoder": "Yêu cầu địa chỉ",
- "statisticsGeolocation": "Yêu cầu địa chỉ",
- "categoryArrow": "Mũi tên",
- "categoryDefault": "Mặc định",
- "categoryAnimal": "Vật nuôi",
- "categoryBicycle": "Xe đạp",
- "categoryBoat": "Tầu thuyền",
- "categoryBus": "Xe buýt",
- "categoryCar": "Xe con",
- "categoryCamper": "Camper",
- "categoryCrane": "Cần cẩu",
- "categoryHelicopter": "Trực thăng",
- "categoryMotorcycle": "Xe máy",
- "categoryOffroad": "Offroad",
- "categoryPerson": "Cá nhân",
- "categoryPickup": "Pickup",
- "categoryPlane": "Máy bay",
- "categoryShip": "Tàu thủy",
- "categoryTractor": "Máy kéo",
- "categoryTrain": "Train",
- "categoryTram": "Tram",
- "categoryTrolleybus": "Trolleybus",
- "categoryTruck": "Xe tải",
- "categoryVan": "Xe thùng",
- "categoryScooter": "Scooter",
- "maintenanceStart": "Start",
- "maintenancePeriod": "Period"
-} \ No newline at end of file
diff --git a/web/l10n/zh.json b/web/l10n/zh.json
deleted file mode 100644
index 65d9e723..00000000
--- a/web/l10n/zh.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "加载",
- "sharedHide": "隐藏",
- "sharedSave": "保存",
- "sharedUpload": "上传",
- "sharedSet": "设置",
- "sharedCancel": "取消",
- "sharedCopy": "复制",
- "sharedAdd": "添加",
- "sharedEdit": "编辑",
- "sharedRemove": "删除",
- "sharedRemoveConfirm": "删除选中项?",
- "sharedNoData": "没有数据",
- "sharedSubject": "主题",
- "sharedYes": "是",
- "sharedNo": "否",
- "sharedKm": "千米",
- "sharedMi": "英里",
- "sharedNmi": "海里",
- "sharedMeters": "米",
- "sharedFeet": "英尺",
- "sharedKn": "节",
- "sharedKmh": "千米/小时",
- "sharedMph": "英里/小时",
- "sharedHour": "小时",
- "sharedMinute": "分钟",
- "sharedSecond": "秒",
- "sharedDays": "天",
- "sharedHours": "小时",
- "sharedMinutes": "分钟",
- "sharedDecimalDegrees": "度",
- "sharedDegreesDecimalMinutes": "度分",
- "sharedDegreesMinutesSeconds": "度分秒",
- "sharedName": "名称",
- "sharedDescription": "描述",
- "sharedSearch": "搜索",
- "sharedIconScale": "图标比例",
- "sharedGeofence": "围栏",
- "sharedGeofences": "围栏",
- "sharedCreateGeofence": "创建围栏",
- "sharedNotifications": "通知",
- "sharedNotification": "通知",
- "sharedAttributes": "属性",
- "sharedAttribute": "属性",
- "sharedDrivers": "驾驶员",
- "sharedDriver": "驾驶员",
- "sharedArea": "区域",
- "sharedSound": "通知铃声",
- "sharedType": "类型",
- "sharedDistance": "里程",
- "sharedHourAbbreviation": "小时",
- "sharedMinuteAbbreviation": "分",
- "sharedSecondAbbreviation": "秒",
- "sharedVoltAbbreviation": "伏",
- "sharedLiterAbbreviation": "升",
- "sharedGallonAbbreviation": "加仑",
- "sharedLiter": "升",
- "sharedImpGallon": "英制加仑",
- "sharedUsGallon": "美制加仑",
- "sharedLiterPerHourAbbreviation": "升/小时",
- "sharedGetMapState": "获取地图状态",
- "sharedComputedAttribute": "计算属性",
- "sharedComputedAttributes": "计算属性",
- "sharedCheckComputedAttribute": "确认计算属性",
- "sharedExpression": "表达式",
- "sharedDevice": "设备",
- "sharedTest": "测试",
- "sharedTestNotification": "发送测试通知",
- "sharedTestNotificators": "测试通道",
- "sharedTestExpression": "测试表达式",
- "sharedCalendar": "日历",
- "sharedCalendars": "日历",
- "sharedFile": "文件",
- "sharedSearchDevices": "搜索设备",
- "sharedSortBy": "排序方式",
- "sharedFilterMap": "在地图上过滤",
- "sharedSelectFile": "选择文件",
- "sharedPhone": "电话",
- "sharedRequired": "必填",
- "sharedPreferences": "首选项",
- "sharedPermissions": "权限",
- "sharedConnections": "关联",
- "sharedExtra": "附加",
- "sharedPrimary": "设备信息首行",
- "sharedSecondary": "设备信息次行",
- "sharedTypeString": "字符串",
- "sharedTypeNumber": "数字",
- "sharedTypeBoolean": "布尔",
- "sharedTimezone": "时区",
- "sharedInfoTitle": "信息",
- "sharedSavedCommand": "保存指令",
- "sharedSavedCommands": "指令表",
- "sharedNew": "新建",
- "sharedShowAddress": "显示地址",
- "sharedShowDetails": "详情请见",
- "sharedDisabled": "禁用",
- "sharedMaintenance": "维护",
- "sharedDeviceAccumulators": "蓄电池",
- "sharedAlarms": "警报",
- "sharedLocation": "位置",
- "sharedImport": "导入",
- "sharedColumns": "显示列",
- "sharedDropzoneText": "将文件拖放到此处或者单击",
- "sharedLogs": "日志",
- "sharedLink": "关联",
- "calendarSimple": "简单",
- "calendarRecurrence": "复现",
- "calendarOnce": "单次",
- "calendarDaily": "每日",
- "calendarWeekly": "每周",
- "calendarMonthly": "每月",
- "calendarDays": "天",
- "calendarSunday": "周日",
- "calendarMonday": "周一",
- "calendarTuesday": "周二",
- "calendarWednesday": "周三",
- "calendarThursday": "周四",
- "calendarFriday": "周五",
- "calendarSaturday": "周六",
- "attributeShowGeofences": "显示围栏",
- "attributeSpeedLimit": "速度限制",
- "attributeFuelDropThreshold": "燃油下降阈值",
- "attributeFuelIncreaseThreshold": "燃油增加阈值",
- "attributePolylineDistance": "折线里程",
- "attributeReportIgnoreOdometer": "报告:忽略里程表",
- "attributeWebReportColor": "网页:报告颜色",
- "attributeDevicePassword": "设备密码",
- "attributeDeviceImage": "设备图片",
- "attributeDeviceInactivityStart": "设备无响应起始",
- "attributeDeviceInactivityPeriod": "设备无响应时段",
- "attributeProcessingCopyAttributes": "处理中:复制属性",
- "attributeColor": "颜色",
- "attributeWebLiveRouteLength": "网页:活动路径长度",
- "attributeWebSelectZoom": "网页:缩放选择项",
- "attributeWebMaxZoom": "网页:最大的缩放",
- "attributeTelegramChatId": "Telegram 账号",
- "attributePushoverUserKey": "Pushover 用户密钥",
- "attributePushoverDeviceNames": "Pushover 设备名称",
- "attributeMailSmtpHost": "邮件:SMTP 主机",
- "attributeMailSmtpPort": "邮件:SMTP 端口",
- "attributeMailSmtpStarttlsEnable": "邮件:SMTP STARTTLS 开启",
- "attributeMailSmtpStarttlsRequired": "邮件:SMTP STARTTLS 必填",
- "attributeMailSmtpSslEnable": "邮件:SMTP SSL 开启",
- "attributeMailSmtpSslTrust": "邮件:SMTP SSL 信任",
- "attributeMailSmtpSslProtocols": "邮件:SMTP SSL 协议",
- "attributeMailSmtpFrom": "邮件:SMTP 来源",
- "attributeMailSmtpAuth": "邮件:SMTP 认证开启",
- "attributeMailSmtpUsername": "邮件:SMTP 用户名",
- "attributeMailSmtpPassword": "邮件:SMTP 密码",
- "attributeUiDisableSavedCommands": "用户界面:禁用已保存的命令",
- "attributeUiDisableAttributes": "用户界面:禁用属性",
- "attributeUiDisableGroups": "用户界面:禁用分组",
- "attributeUiDisableEvents": "用户界面:禁用事件",
- "attributeUiDisableVehicleFeatures": "用户界面:禁用车辆功能",
- "attributeUiDisableDrivers": "用户界面:禁用驾驶员",
- "attributeUiDisableComputedAttributes": "用户界面:禁用计算属性",
- "attributeUiDisableCalendars": "用户界面:禁用日历",
- "attributeUiDisableMaintenance": "用户界面:禁用维护",
- "attributeUiHidePositionAttributes": "用户界面:隐藏位置属性",
- "attributeUiDisableLoginLanguage": "用户界面:禁用登录语言",
- "attributeNotificationTokens": "通知令牌",
- "attributePopupInfo": "卡片信息",
- "errorTitle": "错误",
- "errorGeneral": "无效参数",
- "errorConnection": "连接错误",
- "errorSocket": "网络通讯错误",
- "errorZero": "不能为零",
- "userEmail": "邮箱",
- "userPassword": "密码",
- "userAdmin": "管理员",
- "userRemember": "记住密码",
- "userExpirationTime": "失效日期",
- "userDeviceLimit": "设备限制",
- "userUserLimit": "用户限制",
- "userDeviceReadonly": "设备只读",
- "userLimitCommands": "禁用指令",
- "userDisableReports": "禁用报表",
- "userFixedEmail": "禁止更改邮箱",
- "userToken": "令牌",
- "userDeleteAccount": "删除账户",
- "userTemporary": "暂时",
- "loginTitle": "登录",
- "loginLanguage": "语言",
- "loginReset": "密码重设",
- "loginRegister": "注册",
- "loginLogin": "登录",
- "loginOpenId": "以开放 ID 登录",
- "loginFailed": "邮箱或密码错误",
- "loginCreated": "新用户已注册成功",
- "loginResetSuccess": "查看您的电子邮件",
- "loginUpdateSuccess": "密码已重置",
- "loginLogout": "注销",
- "loginLogo": "图标",
- "loginTotpCode": "一次性密码",
- "loginTotpKey": "一次性密码密钥",
- "devicesAndState": "设备和状态",
- "deviceSelected": "已选设备",
- "deviceTitle": "设备",
- "devicePrimaryInfo": "设备名称",
- "deviceSecondaryInfo": "设备详情",
- "deviceIdentifier": "标识符",
- "deviceModel": "型号",
- "deviceContact": "联系人",
- "deviceCategory": "类别",
- "deviceLastUpdate": "最后更新时间",
- "deviceCommand": "指令",
- "deviceFollow": "跟随设备",
- "deviceTotalDistance": "总里程",
- "deviceStatus": "状态",
- "deviceStatusOnline": "在线",
- "deviceStatusOffline": "离线",
- "deviceStatusUnknown": "未知",
- "deviceRegisterFirst": "注册您的第一台设备",
- "deviceIdentifierHelp": "IMEI、序列号或其他 ID。它必须匹配报告给服务器的设备标识符。",
- "deviceShare": "共享设备",
- "groupDialog": "分组",
- "groupParent": "分组",
- "groupNoGroup": "未分组",
- "settingsTitle": "设置",
- "settingsUser": "账户",
- "settingsGroups": "分组",
- "settingsServer": "服务器",
- "settingsUsers": "用户",
- "settingsDistanceUnit": "里程单位",
- "settingsAltitudeUnit": "海拔单位",
- "settingsSpeedUnit": "速度单位",
- "settingsVolumeUnit": "体积单位",
- "settingsTwelveHourFormat": "12 小时制",
- "settingsCoordinateFormat": "坐标格式",
- "settingsServerVersion": "服务器版本",
- "settingsAppVersion": "应用版本",
- "settingsConnection": "连接",
- "settingsDarkMode": "深色模式",
- "settingsTotpEnable": "启用一次性密码",
- "settingsTotpForce": "强制使用一次性密码",
- "settingsServiceWorkerUpdateInterval": "服务线程更新间隔",
- "settingsUpdateAvailable": "有可用更新。",
- "settingsSupport": "支持",
- "reportTitle": "报表",
- "reportScheduled": "预定报告",
- "reportDevice": "设备",
- "reportGroup": "分组",
- "reportFrom": "起始",
- "reportTo": "结束",
- "reportShow": "查询",
- "reportClear": "清空",
- "linkGoogleMaps": "谷歌地图",
- "linkAppleMaps": "苹果地图",
- "linkStreetView": "街景",
- "positionFixTime": "修正时间",
- "positionDeviceTime": "设备时间",
- "positionServerTime": "服务器时间",
- "positionValid": "有效",
- "positionAccuracy": "精度",
- "positionLatitude": "纬度",
- "positionLongitude": "经度",
- "positionAltitude": "海拔",
- "positionSpeed": "速度",
- "positionCourse": "行驶方向",
- "positionAddress": "地址",
- "positionProtocol": "协议",
- "positionDistance": "里程",
- "positionRpm": "转速",
- "positionFuel": "燃油",
- "positionPower": "电源",
- "positionBattery": "电池",
- "positionRaw": "原生数据",
- "positionIndex": "索引",
- "positionHdop": "水平精度",
- "positionVdop": "垂直精度",
- "positionPdop": "位置精度",
- "positionSat": "卫星",
- "positionSatVisible": "可见卫星",
- "positionRssi": "接收信号强度",
- "positionGps": "全球定位系统",
- "positionRoaming": "漫游",
- "positionEvent": "事件",
- "positionAlarm": "警报",
- "positionStatus": "状态",
- "positionOdometer": "里程表",
- "positionServiceOdometer": "服务里程表",
- "positionTripOdometer": "行程里程表",
- "positionHours": "小时",
- "positionSteps": "步骤",
- "positionInput": "输入",
- "positionHeartRate": "心率",
- "positionOutput": "输出",
- "positionBatteryLevel": "电池电量",
- "positionFuelConsumption": "油耗",
- "positionRfid": "射频识别",
- "positionVersionFw": "固件版本",
- "positionVersionHw": "硬件版本",
- "positionIgnition": "点火",
- "positionFlags": "标记",
- "positionCharge": "充电",
- "positionIp": "IP 地址",
- "positionArchive": "档案",
- "positionVin": "车辆识别码",
- "positionApproximate": "近似值",
- "positionThrottle": "油门",
- "positionMotion": "移动",
- "positionArmed": "Armed",
- "positionAcceleration": "加速度",
- "positionTemp": "温度",
- "positionDeviceTemp": "设备温度",
- "positionCoolantTemp": "冷却液温度",
- "positionOperator": "操作员",
- "positionCommand": "指令",
- "positionBlocked": "屏蔽",
- "positionDtcs": "双离合变速箱",
- "positionObdSpeed": "OBD 速度",
- "positionObdOdometer": "OBD 里程表",
- "positionDrivingTime": "行驶时间",
- "positionDriverUniqueId": "驾驶员独有 ID",
- "positionCard": "卡片",
- "positionImage": "图片",
- "positionVideo": "视频",
- "positionAudio": "音频",
- "serverTitle": "服务器设置",
- "serverZoom": "缩放",
- "serverRegistration": "注册",
- "serverReadonly": "只读",
- "serverForceSettings": "强制设置",
- "serverAnnouncement": "公告",
- "serverName": "服务器名称",
- "serverDescription": "服务器描述",
- "serverColorPrimary": "首选颜色",
- "serverColorSecondary": "次选颜色",
- "serverLogo": "标识图片",
- "serverLogoInverted": "倒置标识图片",
- "serverChangeDisable": "禁用服务器更改",
- "serverDisableShare": "禁用设备共享",
- "mapTitle": "地图",
- "mapActive": "已选地图",
- "mapOverlay": "地图叠层",
- "mapOverlayCustom": "自定义叠层",
- "mapOpenSeaMap": "开放海洋地图",
- "mapOpenRailwayMap": "开放铁路地图",
- "mapOpenWeatherKey": "开放气候API密钥",
- "mapOpenWeatherClouds": "开放气候云层图",
- "mapOpenWeatherPrecipitation": "开放气候降水图",
- "mapOpenWeatherPressure": "开放气候气压图",
- "mapOpenWeatherWind": "开放气候风力图",
- "mapOpenWeatherTemperature": "开放气候气温图",
- "mapLayer": "地图图层",
- "mapCustom": "自定义 (XYZ)",
- "mapCustomArcgis": "自定义 (ArcGIS)",
- "mapCustomLabel": "自定义地图",
- "mapCarto": "Carto 基础地图",
- "mapOsm": "开放街景地图",
- "mapGoogleRoad": "谷歌道路地图",
- "mapGoogleHybrid": "谷歌混合地图",
- "mapGoogleSatellite": "谷歌卫星地图",
- "mapOpenTopoMap": "OpenTopo 地图",
- "mapBingKey": "必应地图密钥",
- "mapBingRoad": "必应公路地图",
- "mapBingAerial": "必应航测地图",
- "mapBingHybrid": "必应混合地图",
- "mapBaidu": "百度地图",
- "mapAutoNavi": " 高德地图",
- "mapYandexMap": "Yandex 地图",
- "mapYandexSat": "Yandex 卫星地图",
- "mapWikimedia": "维基媒体",
- "mapOrdnanceSurvey": " 全国地形测量",
- "mapMapboxStreets": "Mapbox 街道",
- "mapMapboxStreetsDark": "Mapbox 深色街图",
- "mapMapboxOutdoors": "Mapbox 外景",
- "mapMapboxSatellite": "Mapbox 卫星地图",
- "mapMapboxKey": "Mapbox 访问令牌",
- "mapMapTilerBasic": "MapTiler 基础地图",
- "mapMapTilerHybrid": "MapTiler 混合地图",
- "mapMapTilerKey": "MapTiler API 密钥",
- "mapLocationIqStreets": "LocationIQ 街道地图",
- "mapLocationIqDark": "LocationIQ 深色地图",
- "mapLocationIqKey": "LocationIQ 访问令牌",
- "mapTomTomBasic": "TomTom 基础地图",
- "mapTomTomFlow": "TomTom 交通路况",
- "mapTomTomIncidents": "TomTom 交通事故",
- "mapTomTomKey": "TomTom API 密钥",
- "mapHereBasic": "Here 基础地图",
- "mapHereHybrid": "Here 混合地图",
- "mapHereSatellite": "Here 卫星地图",
- "mapHereFlow": "Here 交通路况",
- "mapHereKey": "Here API 密钥",
- "mapShapePolygon": "多边形",
- "mapShapeCircle": "圆形",
- "mapShapePolyline": "多段线",
- "mapLiveRoutes": "移动轨迹",
- "mapDirection": "显示方向",
- "mapCurrentLocation": "当前位置",
- "mapPoiLayer": "兴趣点图层",
- "mapClustering": "合并车辆标记",
- "mapOnSelect": "显示地图选项",
- "mapDefault": "默认地图",
- "stateTitle": "状态",
- "stateName": "参数",
- "stateValue": "值",
- "commandTitle": "指令",
- "commandSend": "发送",
- "commandSent": "指令已发送",
- "commandQueued": "指令已排队",
- "commandUnit": "单位",
- "commandCustom": "自定义指令",
- "commandDeviceIdentification": "设备标识",
- "commandPositionSingle": "单个报告",
- "commandPositionPeriodic": "定期报告",
- "commandPositionStop": "停止报告",
- "commandEngineStop": "引擎熄火",
- "commandEngineResume": "引擎重启",
- "commandAlarmArm": "部署警报",
- "commandAlarmDisarm": "解除警报",
- "commandAlarmDismiss": "消除警报",
- "commandSetTimezone": "设置时区",
- "commandRequestPhoto": "请求图片",
- "commandPowerOff": "关闭设备",
- "commandRebootDevice": "重启设备",
- "commandFactoryReset": "恢复出厂设置",
- "commandSendSms": "发送短信",
- "commandSendUssd": "发送 USSD",
- "commandSosNumber": "设置 SOS 号码",
- "commandSilenceTime": "设置静音时间",
- "commandSetPhonebook": "设置通讯录",
- "commandVoiceMessage": "语音信息",
- "commandOutputControl": "输出控制",
- "commandVoiceMonitoring": "语音监控",
- "commandSetAgps": "设置 AGPS",
- "commandSetIndicator": "设置指示器",
- "commandConfiguration": "配置",
- "commandGetVersion": "获取版本",
- "commandFirmwareUpdate": "更新固件",
- "commandSetConnection": "设置连接",
- "commandSetOdometer": "设置里程表",
- "commandGetModemStatus": "获取调制解调器状态",
- "commandGetDeviceStatus": "获取设备状态",
- "commandSetSpeedLimit": "设置速度限制",
- "commandModePowerSaving": "节能模式",
- "commandModeDeepSleep": "睡眠模式",
- "commandAlarmGeofence": "设置围栏警报",
- "commandAlarmBattery": "设置电池警报",
- "commandAlarmSos": "设置 SOS 警报",
- "commandAlarmRemove": "设置删除警报",
- "commandAlarmClock": "设置时钟警报",
- "commandAlarmSpeed": "设置速度警报",
- "commandAlarmFall": "设置跌落警报",
- "commandAlarmVibration": "设置振动警报",
- "commandFrequency": "频率",
- "commandTimezone": "时区偏移",
- "commandMessage": "消息",
- "commandRadius": "半径",
- "commandEnable": "开启",
- "commandData": "日期",
- "commandIndex": "索引",
- "commandPhone": "电话号码",
- "commandServer": "服务器",
- "commandPort": "端口",
- "eventAll": "所有事件",
- "eventDeviceOnline": "在线状态",
- "eventDeviceUnknown": "未知状态",
- "eventDeviceOffline": "离线状态",
- "eventDeviceInactive": "设备无响应",
- "eventQueuedCommandSent": "已发送命令队列",
- "eventDeviceMoving": "设备移动中",
- "eventDeviceStopped": "设备已停止",
- "eventDeviceOverspeed": "超速限制",
- "eventDeviceFuelDrop": "燃油下降",
- "eventDeviceFuelIncrease": "燃油增加",
- "eventCommandResult": "指令结果",
- "eventGeofenceEnter": "进入围栏",
- "eventGeofenceExit": "离开围栏",
- "eventAlarm": "警报",
- "eventIgnitionOn": "点火",
- "eventIgnitionOff": "熄火",
- "eventMaintenance": "需要维护",
- "eventTextMessage": "已接收文本信息",
- "eventDriverChanged": "驾驶员变更",
- "eventMedia": "媒体",
- "eventsScrollToLast": "移至最后",
- "eventsSoundEvents": "事件铃声",
- "eventsSoundAlarms": "报警铃声",
- "alarmGeneral": "通常",
- "alarmSos": "求救",
- "alarmVibration": "振动",
- "alarmMovement": "移动",
- "alarmLowspeed": "低速",
- "alarmOverspeed": "超速",
- "alarmFallDown": "跌落",
- "alarmLowPower": "低功率",
- "alarmLowBattery": "低电量",
- "alarmFault": "故障",
- "alarmPowerOff": "关闭电源",
- "alarmPowerOn": "开启电源",
- "alarmDoor": "门",
- "alarmLock": "锁定",
- "alarmUnlock": "解锁",
- "alarmGeofence": "围栏",
- "alarmGeofenceEnter": "进入围栏",
- "alarmGeofenceExit": "离开围栏",
- "alarmGpsAntennaCut": "GPS 天线断开",
- "alarmAccident": "事故",
- "alarmTow": "拖",
- "alarmIdle": "空转",
- "alarmHighRpm": "高转速",
- "alarmHardAcceleration": "急加速",
- "alarmHardBraking": "急刹车",
- "alarmHardCornering": "急转弯",
- "alarmLaneChange": "车道改变",
- "alarmFatigueDriving": "疲劳驾驶",
- "alarmPowerCut": "断电",
- "alarmPowerRestored": "电源恢复",
- "alarmJamming": "干扰",
- "alarmTemperature": "温度",
- "alarmParking": "停车中",
- "alarmBonnet": "阀盖",
- "alarmFootBrake": "脚踏制动器",
- "alarmFuelLeak": "燃油泄漏",
- "alarmTampering": "干预",
- "alarmRemoving": "移除中",
- "notificationType": "通知类型",
- "notificationAlways": "所有设备",
- "notificationNotificators": "通道",
- "notificatorCommand": "命令",
- "notificatorWeb": "网页",
- "notificatorMail": "邮件",
- "notificatorSms": "短信",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram 账号",
- "notificatorPushover": "Pushover",
- "reportReplay": "轨迹回放",
- "reportCombined": "组合",
- "reportRoute": "轨迹",
- "reportEvents": "事件",
- "reportTrips": "行程",
- "reportStops": "停留点",
- "reportSummary": "总览",
- "reportDaily": "每日汇报",
- "reportChart": "图表",
- "reportConfigure": "筛选",
- "reportEventTypes": "事件类型",
- "reportChartType": "图表类型",
- "reportShowMarkers": "显示图标",
- "reportExport": "导出",
- "reportEmail": "邮件发送",
- "reportSchedule": "工作计划",
- "reportPeriod": "时段",
- "reportCustom": "自定义",
- "reportToday": "今天",
- "reportYesterday": "昨天",
- "reportThisWeek": "本周",
- "reportPreviousWeek": "上周",
- "reportThisMonth": "本月",
- "reportPreviousMonth": "上月",
- "reportDeviceName": "设备名称",
- "reportAverageSpeed": "平均速度",
- "reportMaximumSpeed": "最大速度",
- "reportEngineHours": "发动机使用时间",
- "reportDuration": "持续时间",
- "reportStartDate": "开始日期",
- "reportStartTime": "开始时间",
- "reportStartAddress": "开始地址",
- "reportEndTime": "结束时间",
- "reportEndAddress": "结束地址",
- "reportSpentFuel": "燃油消耗",
- "reportStartOdometer": "起始里程",
- "reportEndOdometer": "结束里程",
- "statisticsTitle": "统计",
- "statisticsCaptureTime": "获取时间",
- "statisticsActiveUsers": "活动用户",
- "statisticsActiveDevices": "活动设备",
- "statisticsRequests": "请求",
- "statisticsMessagesReceived": "已收到消息",
- "statisticsMessagesStored": "已存储消息",
- "statisticsGeocoder": "地理编码请求",
- "statisticsGeolocation": "地理定位请求",
- "categoryArrow": "箭头",
- "categoryDefault": "默认",
- "categoryAnimal": "动物",
- "categoryBicycle": "单车",
- "categoryBoat": "船只",
- "categoryBus": "巴士",
- "categoryCar": "汽车",
- "categoryCamper": "露营车",
- "categoryCrane": "起重机",
- "categoryHelicopter": "直升机",
- "categoryMotorcycle": "摩托车",
- "categoryOffroad": "越野车",
- "categoryPerson": "人员",
- "categoryPickup": "皮卡",
- "categoryPlane": "飞机",
- "categoryShip": "游轮",
- "categoryTractor": "拖拉机",
- "categoryTrain": "火车",
- "categoryTram": "有轨电车",
- "categoryTrolleybus": "无轨电车",
- "categoryTruck": "卡车",
- "categoryVan": "厢式货车",
- "categoryScooter": "小型摩托车",
- "maintenanceStart": "开启",
- "maintenancePeriod": "时段"
-} \ No newline at end of file
diff --git a/web/l10n/zh_TW.json b/web/l10n/zh_TW.json
deleted file mode 100644
index 10cb88a8..00000000
--- a/web/l10n/zh_TW.json
+++ /dev/null
@@ -1,600 +0,0 @@
-{
- "sharedLoading": "讀取資料中……",
- "sharedHide": "隱藏",
- "sharedSave": "存檔",
- "sharedUpload": "上傳",
- "sharedSet": "設定",
- "sharedCancel": "取消",
- "sharedCopy": "Copy",
- "sharedAdd": "新增",
- "sharedEdit": "編輯",
- "sharedRemove": "移除",
- "sharedRemoveConfirm": "確認要移除嗎?",
- "sharedNoData": "沒有資料",
- "sharedSubject": "Subject",
- "sharedYes": "是",
- "sharedNo": "否",
- "sharedKm": "公里",
- "sharedMi": "英里",
- "sharedNmi": "海里",
- "sharedMeters": "米",
- "sharedFeet": "英尺",
- "sharedKn": "節",
- "sharedKmh": "公里/小時",
- "sharedMph": "英里/小時",
- "sharedHour": "小時",
- "sharedMinute": "分鐘",
- "sharedSecond": "秒",
- "sharedDays": "天",
- "sharedHours": "小時",
- "sharedMinutes": "分鐘",
- "sharedDecimalDegrees": "度",
- "sharedDegreesDecimalMinutes": "分",
- "sharedDegreesMinutesSeconds": "秒",
- "sharedName": "名稱",
- "sharedDescription": "描述",
- "sharedSearch": "搜尋",
- "sharedIconScale": "圖標比例",
- "sharedGeofence": "地理圍籬",
- "sharedGeofences": "地理圍籬",
- "sharedCreateGeofence": "建立地理圍籬",
- "sharedNotifications": "通知",
- "sharedNotification": "通知",
- "sharedAttributes": "屬性",
- "sharedAttribute": "屬性",
- "sharedDrivers": "駕駛",
- "sharedDriver": "駕駛",
- "sharedArea": "區域",
- "sharedSound": "通知音效",
- "sharedType": "類型",
- "sharedDistance": "距離",
- "sharedHourAbbreviation": "時",
- "sharedMinuteAbbreviation": "分",
- "sharedSecondAbbreviation": "秒",
- "sharedVoltAbbreviation": "伏特",
- "sharedLiterAbbreviation": "公升",
- "sharedGallonAbbreviation": "加侖",
- "sharedLiter": "升",
- "sharedImpGallon": "英制加侖",
- "sharedUsGallon": "美制加侖",
- "sharedLiterPerHourAbbreviation": "公升/小時",
- "sharedGetMapState": "取得地圖狀態",
- "sharedComputedAttribute": "計算屬性",
- "sharedComputedAttributes": "計算屬性",
- "sharedCheckComputedAttribute": "檢查計算屬性",
- "sharedExpression": "表示式",
- "sharedDevice": "設備",
- "sharedTest": "測試",
- "sharedTestNotification": "傳送測試通知",
- "sharedTestNotificators": "測試頻道",
- "sharedTestExpression": "測試表示式",
- "sharedCalendar": "日曆",
- "sharedCalendars": "日曆",
- "sharedFile": "檔案",
- "sharedSearchDevices": "搜尋設備",
- "sharedSortBy": "排序方式",
- "sharedFilterMap": "在地圖上篩選",
- "sharedSelectFile": "選擇檔案",
- "sharedPhone": "手機",
- "sharedRequired": "必需",
- "sharedPreferences": "偏好",
- "sharedPermissions": "權限",
- "sharedConnections": "關聯",
- "sharedExtra": "更多",
- "sharedPrimary": "首要",
- "sharedSecondary": "次要",
- "sharedTypeString": "字串",
- "sharedTypeNumber": "整數",
- "sharedTypeBoolean": "布林值",
- "sharedTimezone": "時區",
- "sharedInfoTitle": "資訊",
- "sharedSavedCommand": "儲存指令",
- "sharedSavedCommands": "儲存指令",
- "sharedNew": "新建",
- "sharedShowAddress": "顯示地址",
- "sharedShowDetails": "詳情請見",
- "sharedDisabled": "關閉",
- "sharedMaintenance": "保養",
- "sharedDeviceAccumulators": "累加器",
- "sharedAlarms": "警告",
- "sharedLocation": "位置",
- "sharedImport": "接入",
- "sharedColumns": "列",
- "sharedDropzoneText": "將文件拖放到此處或者點擊",
- "sharedLogs": "Logs",
- "sharedLink": "Link",
- "calendarSimple": "簡單",
- "calendarRecurrence": "復現",
- "calendarOnce": "僅一次",
- "calendarDaily": "每日",
- "calendarWeekly": "每週",
- "calendarMonthly": "每月",
- "calendarDays": "天",
- "calendarSunday": "周日",
- "calendarMonday": "周一",
- "calendarTuesday": "周二",
- "calendarWednesday": "周三",
- "calendarThursday": "周四",
- "calendarFriday": "周五",
- "calendarSaturday": "周六",
- "attributeShowGeofences": "顯示地理圍籬",
- "attributeSpeedLimit": "速限",
- "attributeFuelDropThreshold": "燃油下降閾值",
- "attributeFuelIncreaseThreshold": "燃料增加閾值",
- "attributePolylineDistance": "折線距離",
- "attributeReportIgnoreOdometer": "報告:忽略里程表",
- "attributeWebReportColor": "網頁:報告顏色",
- "attributeDevicePassword": "設備密碼",
- "attributeDeviceImage": "設備圖片",
- "attributeDeviceInactivityStart": "設備無回應起始",
- "attributeDeviceInactivityPeriod": "設備無回應期間",
- "attributeProcessingCopyAttributes": "處理中:複製屬性",
- "attributeColor": "顏色",
- "attributeWebLiveRouteLength": "網頁:即時軌跡長度",
- "attributeWebSelectZoom": "網頁:選擇縮放等級",
- "attributeWebMaxZoom": "網頁∶最大縮放",
- "attributeTelegramChatId": "Telegram帳號",
- "attributePushoverUserKey": "Pushover用戶密鑰",
- "attributePushoverDeviceNames": "Pushover設備名稱",
- "attributeMailSmtpHost": "電子郵件:SMTP 主機",
- "attributeMailSmtpPort": "電子郵件:SMTP 埠口",
- "attributeMailSmtpStarttlsEnable": "電子郵件:啟用 SMTP STARTTLS",
- "attributeMailSmtpStarttlsRequired": "電子郵件:需要 SMTP STARTTLS",
- "attributeMailSmtpSslEnable": "電子郵件:啟用 SMTP SSL",
- "attributeMailSmtpSslTrust": "電子郵件:信任 SMTP SSL",
- "attributeMailSmtpSslProtocols": "電子郵件:SMTP SSL 協定",
- "attributeMailSmtpFrom": "電子郵件:SMTP 來源",
- "attributeMailSmtpAuth": "電子郵件:啟用 SMTP 認證",
- "attributeMailSmtpUsername": "電子郵件:SMTP 用戶名稱",
- "attributeMailSmtpPassword": "電子郵件:SMTP 密碼",
- "attributeUiDisableSavedCommands": "UI: Disable Saved Commands",
- "attributeUiDisableAttributes": "用戶界面:禁用屬性",
- "attributeUiDisableGroups": "用戶界面:禁用分組",
- "attributeUiDisableEvents": "用戶界面:禁用事件",
- "attributeUiDisableVehicleFeatures": "UI: Disable Vehicle Features",
- "attributeUiDisableDrivers": "用戶界面:禁用駕駛員",
- "attributeUiDisableComputedAttributes": "用戶界面:禁用計算屬性",
- "attributeUiDisableCalendars": "用戶界面:禁用日曆",
- "attributeUiDisableMaintenance": "用戶界面:禁用保養",
- "attributeUiHidePositionAttributes": "用戶界面:隱藏位置屬性",
- "attributeUiDisableLoginLanguage": "用戶界面:禁用登入語言",
- "attributeNotificationTokens": "通知令牌",
- "attributePopupInfo": "資訊卡",
- "errorTitle": "錯誤",
- "errorGeneral": "非法的參數或違反限制",
- "errorConnection": "連線錯誤",
- "errorSocket": "網頁接口連線錯誤",
- "errorZero": "不能為零",
- "userEmail": "電子郵件",
- "userPassword": "密碼",
- "userAdmin": "管理員",
- "userRemember": "記住密碼",
- "userExpirationTime": "有效期限",
- "userDeviceLimit": "設備限制",
- "userUserLimit": "用戶限制",
- "userDeviceReadonly": "唯讀設備",
- "userLimitCommands": "禁用指令",
- "userDisableReports": "禁用報表",
- "userFixedEmail": "禁止更改電子郵件",
- "userToken": "簽證",
- "userDeleteAccount": "刪除帳號",
- "userTemporary": "Temporary",
- "loginTitle": "登入",
- "loginLanguage": "語言",
- "loginReset": "密碼重設",
- "loginRegister": "註冊",
- "loginLogin": "登入",
- "loginOpenId": "使用 OpenID 登入",
- "loginFailed": "錯誤的電子信箱地址或密碼",
- "loginCreated": "已成功註冊新用戶",
- "loginResetSuccess": "郵件查詢",
- "loginUpdateSuccess": "新密碼已重置",
- "loginLogout": "登出",
- "loginLogo": "標識",
- "loginTotpCode": "One-time Password Code",
- "loginTotpKey": "One-time Password Key",
- "devicesAndState": "設備與狀態",
- "deviceSelected": "已選定的設備",
- "deviceTitle": "設備",
- "devicePrimaryInfo": "設備標題",
- "deviceSecondaryInfo": "設備詳情",
- "deviceIdentifier": "識別號碼",
- "deviceModel": "型號",
- "deviceContact": "聯絡人",
- "deviceCategory": "分類",
- "deviceLastUpdate": "最近更新",
- "deviceCommand": "命令",
- "deviceFollow": "跟隨",
- "deviceTotalDistance": "總距離",
- "deviceStatus": "狀態",
- "deviceStatusOnline": "上線",
- "deviceStatusOffline": "下線",
- "deviceStatusUnknown": "未知",
- "deviceRegisterFirst": "註冊您的首個設備",
- "deviceIdentifierHelp": "IMEI、序列號或其他 ID。必須與設備回報到伺服器的識別碼相同。",
- "deviceShare": "Share Device",
- "groupDialog": "群組",
- "groupParent": "上層群組",
- "groupNoGroup": "無所屬群組",
- "settingsTitle": "設定",
- "settingsUser": "用戶",
- "settingsGroups": "群組",
- "settingsServer": "伺服器",
- "settingsUsers": "用戶",
- "settingsDistanceUnit": "距離單位",
- "settingsAltitudeUnit": "高度單位",
- "settingsSpeedUnit": "速度單位",
- "settingsVolumeUnit": "體積單位",
- "settingsTwelveHourFormat": "十二小時制",
- "settingsCoordinateFormat": "座標格式",
- "settingsServerVersion": "服務器版本",
- "settingsAppVersion": "應用版本",
- "settingsConnection": "連接",
- "settingsDarkMode": "夜間模式",
- "settingsTotpEnable": "Enable One-time Password",
- "settingsTotpForce": "Force One-time Password",
- "settingsServiceWorkerUpdateInterval": "ServiceWorker Update Interval",
- "settingsUpdateAvailable": "There is an update available.",
- "settingsSupport": "Support",
- "reportTitle": "報告",
- "reportScheduled": "已排程的報告",
- "reportDevice": "設備",
- "reportGroup": "群組",
- "reportFrom": "開始",
- "reportTo": "至",
- "reportShow": "顯示",
- "reportClear": "清空",
- "linkGoogleMaps": "Google 地圖",
- "linkAppleMaps": "蘋果地圖",
- "linkStreetView": "街景",
- "positionFixTime": "定位時間",
- "positionDeviceTime": "設備時間",
- "positionServerTime": "伺服器時間",
- "positionValid": "有效",
- "positionAccuracy": "精準度",
- "positionLatitude": "緯度",
- "positionLongitude": "經度",
- "positionAltitude": "海拔",
- "positionSpeed": "速率",
- "positionCourse": "方向",
- "positionAddress": "地址",
- "positionProtocol": "協定",
- "positionDistance": "距離",
- "positionRpm": "轉速",
- "positionFuel": "燃油",
- "positionPower": "電源",
- "positionBattery": "電池",
- "positionRaw": "Raw",
- "positionIndex": "索引",
- "positionHdop": "HDOP",
- "positionVdop": "VDOP",
- "positionPdop": "PDOP",
- "positionSat": "衛星",
- "positionSatVisible": "可見衛星",
- "positionRssi": "RSSI",
- "positionGps": "GPS",
- "positionRoaming": "漫遊",
- "positionEvent": "事件",
- "positionAlarm": "提醒",
- "positionStatus": "狀態",
- "positionOdometer": "里程表",
- "positionServiceOdometer": "伺服器里程表",
- "positionTripOdometer": "旅程里程表",
- "positionHours": "小時",
- "positionSteps": "步驟",
- "positionInput": "輸入",
- "positionHeartRate": "心跳",
- "positionOutput": "輸出",
- "positionBatteryLevel": "電池計量",
- "positionFuelConsumption": "燃油消耗",
- "positionRfid": "RFID",
- "positionVersionFw": "韌體版本",
- "positionVersionHw": "更體版本",
- "positionIgnition": "點火",
- "positionFlags": "旗標",
- "positionCharge": "充電",
- "positionIp": "IP",
- "positionArchive": "車籍",
- "positionVin": "車輛識別號碼",
- "positionApproximate": "約",
- "positionThrottle": "油門",
- "positionMotion": "移動",
- "positionArmed": "警報",
- "positionAcceleration": "加速",
- "positionTemp": "溫度",
- "positionDeviceTemp": "設備溫度",
- "positionCoolantTemp": "水冷液溫度",
- "positionOperator": "司機",
- "positionCommand": "命令",
- "positionBlocked": "已封鎖",
- "positionDtcs": "動態扭力控制",
- "positionObdSpeed": "車上診斷系統速率",
- "positionObdOdometer": "車上診斷系統里程表",
- "positionDrivingTime": "行駛時間",
- "positionDriverUniqueId": "駕駛唯一識別號碼",
- "positionCard": "卡片",
- "positionImage": "圖片",
- "positionVideo": "影片",
- "positionAudio": "音頻",
- "serverTitle": "伺服器設定",
- "serverZoom": "縮放",
- "serverRegistration": "註冊",
- "serverReadonly": "唯讀",
- "serverForceSettings": "強制覆寫設定",
- "serverAnnouncement": "公告",
- "serverName": "伺服器名稱",
- "serverDescription": "伺服器描述",
- "serverColorPrimary": "主顏色",
- "serverColorSecondary": "次顏色",
- "serverLogo": "Logo 圖片",
- "serverLogoInverted": "倒置 Logo 圖片",
- "serverChangeDisable": "禁改伺服器",
- "serverDisableShare": "Disable Device Sharing",
- "mapTitle": "地圖",
- "mapActive": "啟用地圖",
- "mapOverlay": "地圖疊層",
- "mapOverlayCustom": "自定義疊層",
- "mapOpenSeaMap": "OpenSea地圖",
- "mapOpenRailwayMap": "鐵路地圖",
- "mapOpenWeatherKey": "OpenWeather API密鑰",
- "mapOpenWeatherClouds": "OpenWeather雲層圖",
- "mapOpenWeatherPrecipitation": "OpenWeather降水圖",
- "mapOpenWeatherPressure": "OpenWeather氣壓圖",
- "mapOpenWeatherWind": "OpenWeather 風力圖",
- "mapOpenWeatherTemperature": "OpenWeather氣溫圖",
- "mapLayer": "地圖圖層",
- "mapCustom": "自定義(XYZ)",
- "mapCustomArcgis": "自定義(ArcGIS)",
- "mapCustomLabel": "自定義地圖",
- "mapCarto": "CARTO 地圖",
- "mapOsm": "OpenStreet地圖",
- "mapGoogleRoad": "Google 道路地圖",
- "mapGoogleHybrid": "Google 混合地圖",
- "mapGoogleSatellite": "Google 衛星地圖",
- "mapOpenTopoMap": "OpenTopo地圖",
- "mapBingKey": "Bing 地圖金鑰",
- "mapBingRoad": "Bing 道路地圖",
- "mapBingAerial": "Bing 空照圖地圖",
- "mapBingHybrid": "Bing 溫合地圖",
- "mapBaidu": "百度",
- "mapAutoNavi": "高德地圖",
- "mapYandexMap": "Yandex 地圖",
- "mapYandexSat": "Yandex 衛星",
- "mapWikimedia": "維基百科",
- "mapOrdnanceSurvey": "英國地形測量局",
- "mapMapboxStreets": "Mapbox 街道",
- "mapMapboxStreetsDark": "Mapbox Streets Dark",
- "mapMapboxOutdoors": "Mapbox 外景",
- "mapMapboxSatellite": "Mapbox 衛星地圖",
- "mapMapboxKey": "Maxbox 訪問令牌",
- "mapMapTilerBasic": "MapTiler基礎地圖",
- "mapMapTilerHybrid": "MapTiler混合地圖",
- "mapMapTilerKey": "MapTiler API密鑰",
- "mapLocationIqStreets": "LocationIQ街道地圖",
- "mapLocationIqDark": "LocationIQ 黑主題",
- "mapLocationIqKey": "LocationIQ訪問指令牌",
- "mapTomTomBasic": "TomTom基礎地圖",
- "mapTomTomFlow": "TomTom交通路況",
- "mapTomTomIncidents": "TomTom交通事故",
- "mapTomTomKey": "TomTom API密鑰",
- "mapHereBasic": "Here基礎地圖",
- "mapHereHybrid": "Here混合地圖",
- "mapHereSatellite": "Here衛星地圖",
- "mapHereFlow": "Here交通路况",
- "mapHereKey": "Here API密鑰",
- "mapShapePolygon": "多邊形",
- "mapShapeCircle": "圓形",
- "mapShapePolyline": "多邊形",
- "mapLiveRoutes": "即時軌跡",
- "mapDirection": "顯示方向",
- "mapCurrentLocation": "當前位置",
- "mapPoiLayer": "POI 圖層",
- "mapClustering": "標記叢集",
- "mapOnSelect": "選擇設備時顯示地圖",
- "mapDefault": "預設地圖",
- "stateTitle": "狀態",
- "stateName": "名稱",
- "stateValue": "數值",
- "commandTitle": "命令",
- "commandSend": "傳送",
- "commandSent": "指令已發送",
- "commandQueued": "指令已排隊",
- "commandUnit": "單位",
- "commandCustom": "自訂命令",
- "commandDeviceIdentification": "設備識別號碼",
- "commandPositionSingle": "個別報告",
- "commandPositionPeriodic": "定期報告",
- "commandPositionStop": "停止報告",
- "commandEngineStop": "停止引擎",
- "commandEngineResume": "恢復引擎",
- "commandAlarmArm": "啟動警報",
- "commandAlarmDisarm": "解除警報",
- "commandAlarmDismiss": "解除警報",
- "commandSetTimezone": "設定時區",
- "commandRequestPhoto": "請求照片",
- "commandPowerOff": "設備關機",
- "commandRebootDevice": "重啟設備",
- "commandFactoryReset": "回復原廠設定",
- "commandSendSms": "傳送簡訊",
- "commandSendUssd": "傳送 USSD 簡訊",
- "commandSosNumber": "設定救援號碼",
- "commandSilenceTime": "設定靜音時段",
- "commandSetPhonebook": "設定電話簿",
- "commandVoiceMessage": "語音訊息",
- "commandOutputControl": "輸出控制",
- "commandVoiceMonitoring": "語音監控",
- "commandSetAgps": "設定 AGPS",
- "commandSetIndicator": "設定指標",
- "commandConfiguration": "設置",
- "commandGetVersion": "獲取版本",
- "commandFirmwareUpdate": "更新韌體",
- "commandSetConnection": "設置連接",
- "commandSetOdometer": "設置里程表",
- "commandGetModemStatus": "獲取數據機狀態",
- "commandGetDeviceStatus": "獲取設備狀態",
- "commandSetSpeedLimit": "設置速度限制",
- "commandModePowerSaving": "省電模式",
- "commandModeDeepSleep": "睡眠模式",
- "commandAlarmGeofence": "設定地理圍籬警報",
- "commandAlarmBattery": "設置電池警報",
- "commandAlarmSos": "設置SOS警報",
- "commandAlarmRemove": "設置刪除警報",
- "commandAlarmClock": "設置時鐘警報",
- "commandAlarmSpeed": "設置速度警報",
- "commandAlarmFall": "設置掉落警報",
- "commandAlarmVibration": "設置震動警報",
- "commandFrequency": "頻率",
- "commandTimezone": "時區",
- "commandMessage": "訊息",
- "commandRadius": "半徑",
- "commandEnable": "啟用",
- "commandData": "資料",
- "commandIndex": "索引",
- "commandPhone": "電話號碼",
- "commandServer": "服務器",
- "commandPort": "端口",
- "eventAll": "所有事件",
- "eventDeviceOnline": "已上線",
- "eventDeviceUnknown": "未知狀態",
- "eventDeviceOffline": "已下線",
- "eventDeviceInactive": "設備無回應",
- "eventQueuedCommandSent": "已發送排列命令",
- "eventDeviceMoving": "設備移動中",
- "eventDeviceStopped": "設備已停止",
- "eventDeviceOverspeed": "超速限制",
- "eventDeviceFuelDrop": "燃油下降",
- "eventDeviceFuelIncrease": "燃油增加",
- "eventCommandResult": "命令結果",
- "eventGeofenceEnter": "已進入地理圍籬",
- "eventGeofenceExit": "已離開地理圍籬",
- "eventAlarm": "警報",
- "eventIgnitionOn": "點火",
- "eventIgnitionOff": "熄火",
- "eventMaintenance": "需要保養",
- "eventTextMessage": "已接收文字訊息",
- "eventDriverChanged": "駕駛員變更",
- "eventMedia": "多媒體",
- "eventsScrollToLast": "卷軸已拉到底",
- "eventsSoundEvents": "事件鈴聲",
- "eventsSoundAlarms": "警報鈴聲",
- "alarmGeneral": "一般",
- "alarmSos": "求救",
- "alarmVibration": "震動",
- "alarmMovement": "移動",
- "alarmLowspeed": "低速",
- "alarmOverspeed": "超速",
- "alarmFallDown": "跌落",
- "alarmLowPower": "低電量",
- "alarmLowBattery": "電池低電量",
- "alarmFault": "故障",
- "alarmPowerOff": "關機",
- "alarmPowerOn": "開機",
- "alarmDoor": "車門",
- "alarmLock": "鎖定",
- "alarmUnlock": "解鎖",
- "alarmGeofence": "地理圍籬",
- "alarmGeofenceEnter": "進入地理圍籬",
- "alarmGeofenceExit": "離開地理圍籬",
- "alarmGpsAntennaCut": "GPS天線斷開",
- "alarmAccident": "事故",
- "alarmTow": "牽引",
- "alarmIdle": "怠速",
- "alarmHighRpm": "高轉速",
- "alarmHardAcceleration": "急加速",
- "alarmHardBraking": "急剎車",
- "alarmHardCornering": "急轉彎",
- "alarmLaneChange": "改變車道",
- "alarmFatigueDriving": "疲勞駕駛",
- "alarmPowerCut": "斷電",
- "alarmPowerRestored": "恢復電源",
- "alarmJamming": "干擾",
- "alarmTemperature": "溫度",
- "alarmParking": "停車處",
- "alarmBonnet": "引擎蓋",
- "alarmFootBrake": "腳剎",
- "alarmFuelLeak": "漏油",
- "alarmTampering": "篡改",
- "alarmRemoving": "移除中",
- "notificationType": "通知類型",
- "notificationAlways": "所有設備",
- "notificationNotificators": "通道",
- "notificatorCommand": "指令",
- "notificatorWeb": "網頁",
- "notificatorMail": "電子郵件",
- "notificatorSms": "簡訊",
- "notificatorFirebase": "Firebase",
- "notificatorTraccar": "Traccar",
- "notificatorTelegram": "Telegram",
- "notificatorPushover": "Pushover",
- "reportReplay": "軌跡回放",
- "reportCombined": "合併",
- "reportRoute": "路線",
- "reportEvents": "事件",
- "reportTrips": "旅程",
- "reportStops": "站點",
- "reportSummary": "摘要",
- "reportDaily": "每日匯報",
- "reportChart": "圖表",
- "reportConfigure": "設置",
- "reportEventTypes": "事件類型",
- "reportChartType": "圖表類型",
- "reportShowMarkers": "顯示地標",
- "reportExport": "匯出",
- "reportEmail": "郵件發送",
- "reportSchedule": "排程",
- "reportPeriod": "期間",
- "reportCustom": "自定義",
- "reportToday": "今天",
- "reportYesterday": "昨天",
- "reportThisWeek": "本週",
- "reportPreviousWeek": "上週",
- "reportThisMonth": "本月",
- "reportPreviousMonth": "上月",
- "reportDeviceName": "設備名稱",
- "reportAverageSpeed": "平均速率",
- "reportMaximumSpeed": "最高速率",
- "reportEngineHours": "引擎時數",
- "reportDuration": "持續時間",
- "reportStartDate": "起始日期",
- "reportStartTime": "起始時間",
- "reportStartAddress": "起始地點",
- "reportEndTime": "結束時間",
- "reportEndAddress": "結束地點",
- "reportSpentFuel": "燃油消耗",
- "reportStartOdometer": "起始里程",
- "reportEndOdometer": "結束里程",
- "statisticsTitle": "統計",
- "statisticsCaptureTime": "截取時間",
- "statisticsActiveUsers": "活躍用戶量",
- "statisticsActiveDevices": "活躍設備量",
- "statisticsRequests": "請求數",
- "statisticsMessagesReceived": "已接收訊息量",
- "statisticsMessagesStored": "已儲存訊息量",
- "statisticsGeocoder": "地理碼請求數",
- "statisticsGeolocation": "地理座標請求數",
- "categoryArrow": "箭頭",
- "categoryDefault": "預設",
- "categoryAnimal": "動物",
- "categoryBicycle": "自行車",
- "categoryBoat": "船舶",
- "categoryBus": "公車",
- "categoryCar": "小客車",
- "categoryCamper": "Camper",
- "categoryCrane": "起重機",
- "categoryHelicopter": "直昇機",
- "categoryMotorcycle": "機車",
- "categoryOffroad": "越野車",
- "categoryPerson": "行人",
- "categoryPickup": "皮卡車",
- "categoryPlane": "飛機",
- "categoryShip": "船艦",
- "categoryTractor": "曳引機",
- "categoryTrain": "火車",
- "categoryTram": "有軌電車",
- "categoryTrolleybus": "無軌電車",
- "categoryTruck": "貨車",
- "categoryVan": "箱型車",
- "categoryScooter": "小型摩拖車",
- "maintenanceStart": "起始值",
- "maintenancePeriod": "期間"
-} \ No newline at end of file
diff --git a/web/load.js b/web/load.js
deleted file mode 100644
index 482a059a..00000000
--- a/web/load.js
+++ /dev/null
@@ -1,183 +0,0 @@
-(function () {
- var debugMode, touchMode, locale, localeParameter, extjsVersion, proj4jsVersion, olVersion, i, language, languages, languageDefault;
-
- function addStyleFile(file) {
- var link = document.createElement('link');
- link.setAttribute('rel', 'stylesheet');
- link.setAttribute('type', 'text/css');
- link.setAttribute('href', file);
- document.head.appendChild(link);
- }
-
- function addScriptFile(file) {
- var script = document.createElement('script');
- script.setAttribute('src', file);
- script.async = false;
- document.head.appendChild(script);
- }
-
- function addSvgFile(file, id) {
- var svg = document.createElement('object');
- svg.setAttribute('id', id);
- svg.setAttribute('data', file);
- svg.setAttribute('type', 'image/svg+xml');
- svg.setAttribute('style', 'visibility:hidden;position:absolute;left:-100px;');
- document.body.appendChild(svg);
- }
-
- debugMode = document.getElementById('loadScript').getAttribute('mode') === 'debug';
- touchMode = 'ontouchstart' in window || navigator.maxTouchPoints;
-
- window.updateNotificationToken = function (token) {
- Traccar.app.updateNotificationToken(token);
- };
-
- locale = {};
- window.Locale = locale;
-
- locale.languages = {
- 'af': { name: 'Afrikaans', code: 'af' },
- 'ar': { name: 'العربية', code: 'en' },
- 'az': { name: 'Azərbaycanca', code: 'en' },
- 'bg': { name: 'Български', code: 'bg' },
- 'bn': { name: 'বাংলা', code: 'en' },
- 'ca': { name: 'Català', code: 'en' },
- 'cs': { name: 'Čeština', code: 'cs' },
- 'de': { name: 'Deutsch', code: 'de' },
- 'da': { name: 'Dansk', code: 'da' },
- 'el': { name: 'Ελληνικά', code: 'el' },
- 'en': { name: 'English', code: 'en' },
- 'es': { name: 'Español', code: 'es' },
- 'fa': { name: 'فارسی', code: 'fa' },
- 'fi': { name: 'Suomi', code: 'fi' },
- 'fr': { name: 'Français', code: 'fr' },
- 'he': { name: 'עברית', code: 'he' },
- 'hi': { name: 'हिन्दी', code: 'en' },
- 'hr': { name: 'Hrvatski', code: 'hr' },
- 'hu': { name: 'Magyar', code: 'hu' },
- 'id': { name: 'Bahasa Indonesia', code: 'id' },
- 'it': { name: 'Italiano', code: 'it' },
- 'ja': { name: '日本語', code: 'ja' },
- 'ka': { name: 'ქართული', code: 'en' },
- 'kk': { name: 'Қазақша', code: 'en' },
- 'ko': { name: '한국어', code: 'ko' },
- 'km': { name: 'ភាសាខ្មែរ', code: 'en' },
- 'lo': { name: 'ລາວ', code: 'en' },
- 'lt': { name: 'Lietuvių', code: 'lt' },
- 'lv': { name: 'Latviešu', code: 'lv' },
- 'ml': { name: 'മലയാളം', code: 'en' },
- 'mn': { name: 'Монгол хэл', code: 'en' },
- 'ms': { name: 'بهاس ملايو', code: 'en' },
- 'nb': { name: 'Norsk bokmål', code: 'no_NB' },
- 'ne': { name: 'नेपाली', code: 'en' },
- 'nl': { name: 'Nederlands', code: 'nl' },
- 'nn': { name: 'Norsk nynorsk', code: 'no_NN' },
- 'pl': { name: 'Polski', code: 'pl' },
- 'pt': { name: 'Português', code: 'pt' },
- 'pt_BR': { name: 'Português (Brasil)', code: 'pt_BR' },
- 'ro': { name: 'Română', code: 'ro' },
- 'ru': { name: 'Русский', code: 'ru' },
- 'si': { name: 'සිංහල', code: 'en' },
- 'sk': { name: 'Slovenčina', code: 'sk' },
- 'sl': { name: 'Slovenščina', code: 'sl' },
- 'sq': { name: 'Shqipëria', code: 'en' },
- 'sr': { name: 'Srpski', code: 'sr' },
- 'sv': { name: 'Svenska', code: 'sv' },
- 'ta': { name: 'தமிழ்', code: 'en' },
- 'th': { name: 'ไทย', code: 'th' },
- 'tr': { name: 'Türkçe', code: 'tr' },
- 'uk': { name: 'Українська', code: 'ukr' },
- 'uz': { name: 'Oʻzbekcha', code: 'en' },
- 'vi': { name: 'Tiếng Việt', code: 'en' },
- 'zh': { name: '中文', code: 'zh_CN' },
- 'zh_TW': { name: '中文 (Taiwan)', code: 'zh_TW' }
- };
-
- languageDefault = 'en';
- localeParameter = window.location.search.match(/locale=([^&#]+)/);
- locale.language = localeParameter && localeParameter[1];
- if (!(locale.language in locale.languages)) {
- languages = window.navigator.languages !== undefined ? window.navigator.languages.slice() : [];
- language = window.navigator.userLanguage || window.navigator.language;
- languages.push(language);
- languages.push(language.substring(0, 2));
- languages.push(languageDefault);
- for (i = 0; i < languages.length; i++) {
- language = languages[i].replace('-', '_');
- if (language in locale.languages) {
- locale.language = language;
- break;
- }
- if (language.length > 2) {
- language = languages[i].substring(0, 2);
- if (language in locale.languages) {
- locale.language = language;
- break;
- }
- }
- }
- }
-
- window.addEventListener('load', function (event) {
-
- if (debugMode) {
- Ext.Loader.setConfig({
- disableCaching: false
- });
- }
-
- Ext.Ajax.request({
- url: 'l10n/' + languageDefault + '.json',
- callback: function (options, success, response) {
- window.Strings = Ext.decode(response.responseText);
- if (Locale.language !== languageDefault) {
- Ext.Ajax.request({
- url: 'l10n/' + Locale.language + '.json',
- callback: function (options, success, response) {
- var key, data = Ext.decode(response.responseText);
- for (key in data) {
- if (data.hasOwnProperty(key)) {
- window.Strings[key] = data[key];
- }
- }
- addScriptFile(debugMode ? 'app.js' : 'app.min.js');
- }
- });
- } else {
- addScriptFile(debugMode ? 'app.js' : 'app.min.js');
- }
- }
- });
-
- });
-
- // Hack for new versions of Android
- if (navigator.userAgent.indexOf('Android') !== -1 && navigator.userAgent.indexOf('OPR') !== -1) {
- var __originalUserAgent = navigator.userAgent;
- navigator.__defineGetter__('userAgent', function () { return __originalUserAgent.replace(/\/OPR[^)]*/g, ''); });
- }
-
- addScriptFile('lib/extjs/ext-all.js');
- addScriptFile('lib/extjs/classic/locale/locale-' + locale.languages[locale.language].code + '.js');
-
- addStyleFile('lib/extjs/classic/theme-triton/resources/theme-triton-all.css');
- addScriptFile('lib/extjs/classic/theme-triton/theme-triton.js');
-
- addScriptFile('lib/extjs/packages/charts/classic/charts.js');
- addStyleFile('lib/extjs/packages/charts/classic/triton/resources/charts-all.css');
-
- addStyleFile('lib/ol/ol.css');
- addScriptFile('lib/ol/ol.js');
-
- addStyleFile('lib/ol-layerswitcher/ol-layerswitcher.css');
- addScriptFile('lib/ol-layerswitcher/ol-layerswitcher.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'];
-
- for (i = 0; i < window.Images.length; i++) {
- addSvgFile('images/' + window.Images[i] + '.svg', window.Images[i] + 'Svg');
- }
-})();
diff --git a/web/logo.svg b/web/logo.svg
deleted file mode 100644
index 8183831f..00000000
--- a/web/logo.svg
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg id="svg2985" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="64" viewBox="0 0 240 64" width="240" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
- <g id="img">
- <rect id="rect3778" height="64" width="240" y="0" x="0" fill="none"/>
- <g id="g4194">
- <g id="g4145" fill="currentColor">
- <circle id="path2993" stroke-width="1.3262" transform="rotate(-30)" cy="43.713" cx="9.4364" r="2.2765"/>
- <path id="path3004" stroke-width="1.0095" d="m37.012 24.177-2.8428 3.6128c0.66345 0.52205 1.3255 1.1576 1.7734 1.9333 0.4479 0.77578 0.66726 1.6669 0.78764 2.5025l4.5502-0.65558c-0.193-1.42-0.633-2.804-1.394-4.123s-1.74-2.391-2.874-3.27z"/>
- <path id="path3014" stroke-width="1.0095" d="m42.504 16.9-2.8428 3.6128c1.607 1.2355 3.0914 2.7935 4.1679 4.6581s1.6835 3.9291 1.95 5.9386l4.5502-0.65558c-0.33967-2.5954-1.1669-5.1513-2.5573-7.5594-1.3903-2.4081-3.1901-4.4025-5.268-5.9944z"/>
- <path id="path3036" stroke-width="3.6204" d="m28.667 44.439a9.1058 9.1058 0 0 1 -9.1058 0.000023 9.1058 9.1058 0 0 1 -4.5529 -7.8859 9.1058 9.1058 0 0 1 4.5529 -7.8859l4.5529 7.8859z"/>
- <path id="path3038-8" stroke-width="1.0095" d="m17.502 6.8895c-13.868 8.0065-18.619 25.74-10.612 39.608 8.006 13.868 25.739 18.619 39.608 10.613 13.868-8.007 18.619-25.74 10.613-39.609-8.007-13.868-25.74-18.62-39.609-10.612zm1.706 2.9541c12.237-7.0648 27.884-2.8722 34.948 9.3644 7.065 12.237 2.873 27.884-9.364 34.948-12.237 7.065-27.884 2.873-34.948-9.364-7.0652-12.237-2.8726-27.884 9.364-34.948z"/>
- </g>
- </g>
- <g id="logotext" aria-label="Traccar" fill="currentColor">
- <path id="path4172" d="m89.719 48.671h-3.915v-30.192h-10.663v-3.4775h25.241v3.4775h-10.663v30.192z"/>
- <path id="path4174" d="m116.36 22.969q1.6812 0 3.0169 0.27636l-0.52968 3.5466q-1.566-0.34544-2.7636-0.34544-3.063 0-5.2508 2.4872-2.1648 2.4872-2.1648 6.195v13.541h-3.8229v-25.241h3.1551l0.43756 4.675h0.18424q1.4048-2.4642 3.3854-3.7999t4.3526-1.3357z"/>
- <path id="path4176" d="m139.62 48.671-0.75998-3.5926h-0.18424q-1.8884 2.3721-3.7769 3.2242-1.8654 0.82907-4.675 0.82907-3.7538 0-5.8956-1.9345-2.1187-1.9345-2.1187-5.5041 0-7.6459 12.229-8.0143l4.2835-0.13818v-1.566q0-2.9708-1.2897-4.3756-1.2666-1.4278-4.0763-1.4278-3.1551 0-7.1392 1.9345l-1.1745-2.9248q1.8654-1.0133 4.0762-1.589 2.2339-0.57574 4.4678-0.57574 4.5138 0 6.6786 2.0036 2.1878 2.0036 2.1878 6.4253v17.226h-2.8326zm-8.6361-2.6945q3.5696 0 5.5962-1.9575 2.0496-1.9575 2.0496-5.4811v-2.2799l-3.8229 0.16121q-4.5599 0.16121-6.5865 1.4278-2.0036 1.2436-2.0036 3.892 0 2.0727 1.2436 3.1551 1.2666 1.0824 3.5236 1.0824z"/>
- <path id="path4178" d="m160.44 49.131q-5.4811 0-8.498-3.3623-2.9939-3.3854-2.9939-9.5573 0-6.3332 3.0399-9.7876 3.063-3.4545 8.7052-3.4545 1.8194 0 3.6387 0.3915t2.8557 0.92119l-1.1745 3.2472q-1.2666-0.50665-2.7636-0.82907-1.4969-0.34544-2.6484-0.34544-7.6919 0-7.6919 9.8106 0 4.652 1.8654 7.1392 1.8884 2.4872 5.5732 2.4872 3.1551 0 6.4713-1.3588v3.3854q-2.5333 1.3127-6.3792 1.3127z"/>
- <path id="path4180" d="m182.92 49.131q-5.4811 0-8.498-3.3623-2.9939-3.3854-2.9939-9.5573 0-6.3332 3.0399-9.7876 3.063-3.4545 8.7052-3.4545 1.8193 0 3.6387 0.3915t2.8557 0.92119l-1.1745 3.2472q-1.2666-0.50665-2.7636-0.82907-1.4969-0.34544-2.6484-0.34544-7.6919 0-7.6919 9.8106 0 4.652 1.8654 7.1392 1.8884 2.4872 5.5732 2.4872 3.1551 0 6.4714-1.3588v3.3854q-2.5333 1.3127-6.3792 1.3127z"/>
- <path id="path4182" d="m210.83 48.671-0.75998-3.5926h-0.18424q-1.8884 2.3721-3.7769 3.2242-1.8654 0.82907-4.675 0.82907-3.7538 0-5.8956-1.9345-2.1187-1.9345-2.1187-5.5041 0-7.6459 12.229-8.0143l4.2835-0.13818v-1.566q0-2.9708-1.2897-4.3756-1.2666-1.4278-4.0762-1.4278-3.1551 0-7.1392 1.9345l-1.1745-2.9248q1.8654-1.0133 4.0762-1.589 2.2339-0.57574 4.4678-0.57574 4.5138 0 6.6786 2.0036 2.1878 2.0036 2.1878 6.4253v17.226h-2.8326zm-8.6361-2.6945q3.5696 0 5.5962-1.9575 2.0496-1.9575 2.0496-5.4811v-2.2799l-3.8229 0.16121q-4.5599 0.16121-6.5865 1.4278-2.0036 1.2436-2.0036 3.892 0 2.0727 1.2436 3.1551 1.2666 1.0824 3.5235 1.0824z"/>
- <path id="path4184" d="m233.08 22.969q1.6812 0 3.0169 0.27636l-0.52968 3.5466q-1.566-0.34544-2.7636-0.34544-3.0629 0-5.2508 2.4872-2.1648 2.4872-2.1648 6.195v13.541h-3.8229v-25.241h3.1551l0.43757 4.675h0.18423q1.4048-2.4642 3.3854-3.7999t4.3526-1.3357z"/>
- </g>
- </g>
-</svg>
diff --git a/web/release.html b/web/release.html
deleted file mode 100644
index 44561ff3..00000000
--- a/web/release.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="UTF-8">
-<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
-<title>${title}</title>
-<link rel="icon" sizes="192x192" href="/icon.png">
-<link rel="apple-touch-icon" href="/apple-touch-icon.png">
-<link rel="stylesheet" href="app.css">
-</head>
-<body>
-<div id="spinner"></div>
-<div id="attribution">Powered by <a href="https://www.traccar.org/" target="_blank">Traccar GPS Tracking System</a></div>
-<script id="loadScript" src="load.js"></script>
-</body>
-</html>
diff --git a/web/simple/index.html b/web/simple/index.html
deleted file mode 100644
index 4df77259..00000000
--- a/web/simple/index.html
+++ /dev/null
@@ -1,238 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-<meta charset="UTF-8">
-<meta name="viewport" content="width=device-width, initial-scale=1">
-<title>Traccar</title>
-<link href="https://unpkg.com/@picocss/pico@2.0.6/css/pico.min.css" rel="stylesheet">
-<link href="https://unpkg.com/maplibre-gl@4.1.2/dist/maplibre-gl.css" rel="stylesheet">
-</head>
-<body style="margin: 0; padding: 0;">
-<div id="content" style="width: 100%; height: 100%; position:fixed;"></div>
-<script src="https://unpkg.com/react@17/umd/react.development.js"></script>
-<script src="https://unpkg.com/react-dom@17/umd/react-dom.development.js"></script>
-<script src="https://unpkg.com/maplibre-gl@4.1.2/dist/maplibre-gl.js"></script>
-<script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
-<script type="text/babel">
-
- const LoginScreen = ({ server, setServer, setUser }) => {
- const [email, setEmail] = React.useState('');
- const [password, setPassword] = React.useState('');
-
- const handleSubmit = (event) => {
- event.preventDefault();
- const fetchData = async () => {
- if (server.newServer) {
- const response = await fetch('/api/users', {
- method: 'POST',
- headers: { 'Content-Type': 'application/json' },
- body: JSON.stringify({ name: email, email, password }),
- });
- if (response.ok) {
- setServer({ ...server, newServer: false });
- }
- } else {
- const query = `email=${encodeURIComponent(email)}&password=${encodeURIComponent(password)}`;
- const response = await fetch('/api/session', {
- method: 'POST',
- body: new URLSearchParams(query),
- });
- if (response.ok) {
- setUser(await response.json());
- }
- }
- }
- fetchData();
- };
-
- const formStyle = {
- width: '320px',
- margin: '32px',
- display: 'flex',
- flexDirection: 'column',
- };
-
- return (
- <form onSubmit={handleSubmit} style={formStyle}>
- <input
- value={email}
- onChange={(e) => setEmail(e.target.value)}
- placeholder="Email"
- />
- <input
- password={password}
- onChange={(e) => setPassword(e.target.value)}
- placeholder="Password"
- type="password"
- />
- <button type="submit">
- {server.newServer ? 'Register' : 'Login'}
- </button>
- </form>
- );
- };
-
- const MainScreen = ({ setUser }) => {
- const mapContainer = React.useRef();
- const map = React.useRef();
-
- React.useEffect(() => {
- map.current = new maplibregl.Map({
- container: mapContainer.current,
- style: 'https://demotiles.maplibre.org/style.json',
- center: [0, 0],
- zoom: 1,
- });
- }, []);
-
- const [devices, setDevices] = React.useState([]);
-
- React.useEffect(() => {
- const fetchData = async () => {
- const devicesResponse = await fetch('/api/devices');
- if (devicesResponse.ok) {
- setDevices(await devicesResponse.json());
- }
- }
- fetchData();
- }, []);
-
- const [initialized, setInitialized] = React.useState(false);
- const [positions, setPositions] = React.useState({});
-
- React.useEffect(() => {
- if (initialized) {
- const url = window.location.protocol + '//' + window.location.host;
- const socket = new WebSocket('ws' + url.substring(4) + '/api/socket');
- socket.onmessage = (event) => {
- const data = JSON.parse(event.data);
- const updatedPositions = {};
- data.positions?.forEach((p) => updatedPositions[p.deviceId] = p);
- setPositions({ ...positions, ...updatedPositions })
- };
- }
- }, [initialized]);
-
- const handleAddDevice = (event) => {
- event.preventDefault();
- const fetchData = async () => {
- const id = prompt('Enter device id');
- const response = await fetch('/api/devices', {
- method: 'POST',
- headers: { 'Content-Type': 'application/json' },
- body: JSON.stringify({
- name: id,
- uniqueId: id,
- }),
- });
- if (response.ok) {
- setDevices([...devices, await response.json()]);
- }
- }
- fetchData();
- };
-
- const handleLogout = (event) => {
- event.preventDefault();
- const fetchData = async () => {
- await fetch('/api/session', { method: 'DELETE' });
- setUser(null);
- }
- fetchData();
- };
-
- React.useEffect(() => {
- map.current.on('load', () => {
- map.current.addSource('points', {
- type: 'geojson',
- data: {
- type: 'FeatureCollection',
- features: [],
- },
- });
- map.current.addLayer({
- id: 'points',
- type: 'circle',
- source: 'points',
- });
- setInitialized(true);
- });
- }, []);
-
- React.useEffect(() => {
- map.current.getSource('points')?.setData({
- type: 'FeatureCollection',
- features: Object.values(positions).map((position) => ({
- type: 'Feature',
- geometry: {
- type: 'Point',
- coordinates: [position.longitude, position.latitude],
- },
- })),
- });
- }, [positions]);
-
- const containerStyle = {
- width: '100%',
- height: '100%',
- display: 'flex',
- };
- const deviceStyle = {
- width: '320px',
- marginTop: '16px',
- };
- const mapStyle = {
- height: '100%',
- flexGrow: 1,
- };
-
- return (
- <div style={containerStyle}>
- <div style={deviceStyle}>
- <ul>
- {devices?.map((device) => (<li key={device.id}>{device.name}</li>))}
- <li><a href="#" onClick={handleAddDevice}>Add device</a></li>
- <li><a href="#" onClick={handleLogout}>Logout</a></li>
- </ul>
- </div>
- <div style={mapStyle} ref={mapContainer}></div>
- </div>
- );
- };
-
- const App = () => {
- const [server, setServer] = React.useState();
- const [user, setUser] = React.useState();
-
- React.useEffect(() => {
- const fetchData = async () => {
- const serverResponse = await fetch('/api/server');
- if (serverResponse.ok) {
- setServer(await serverResponse.json());
- }
- const sessionResponse = await fetch('/api/session');
- if (sessionResponse.ok) {
- setUser(await sessionResponse.json());
- }
- }
- fetchData();
- }, []);
-
- return user ? (
- <MainScreen
- setUser={setUser}
- />
- ) : server ? (
- <LoginScreen
- server={server}
- setServer={setServer}
- setUser={setUser}
- />
- ) : '';
- };
-
- ReactDOM.render(<App />, document.getElementById('content'));
-
-</script>
-</body>
-</html>