diff options
Diffstat (limited to 'web/app/model')
-rw-r--r-- | web/app/model/Event.js | 17 | ||||
-rw-r--r-- | web/app/model/KnownNotificator.js | 32 | ||||
-rw-r--r-- | web/app/model/Maintenance.js | 41 | ||||
-rw-r--r-- | web/app/model/Notification.js | 10 | ||||
-rw-r--r-- | web/app/model/User.js | 2 |
5 files changed, 89 insertions, 13 deletions
diff --git a/web/app/model/Event.js b/web/app/model/Event.js index 966cd607..f0c9c3aa 100644 --- a/web/app/model/Event.js +++ b/web/app/model/Event.js @@ -1,6 +1,6 @@ /* - * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org) - * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org) + * 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 @@ -40,9 +40,12 @@ Ext.define('Traccar.model.Event', { name: 'geofenceId', type: 'int' }, { + name: 'maintenanceId', + type: 'int' + }, { name: 'text', convert: function (v, rec) { - var text, alarmKey, geofence; + var text, alarmKey, geofence, maintenance; if (rec.get('type') === 'commandResult') { text = Strings.eventCommandResult + ': ' + rec.get('attributes')['result']; } else if (rec.get('type') === 'alarm') { @@ -63,9 +66,15 @@ Ext.define('Traccar.model.Event', { 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'] + depends: ['type', 'attributes', 'geofenceId', 'maintenanceId'] }, { name: 'attributes' }] diff --git a/web/app/model/KnownNotificator.js b/web/app/model/KnownNotificator.js new file mode 100644 index 00000000..7855a12b --- /dev/null +++ b/web/app/model/KnownNotificator.js @@ -0,0 +1,32 @@ +/* + * 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 new file mode 100644 index 00000000..a0654275 --- /dev/null +++ b/web/app/model/Maintenance.js @@ -0,0 +1,41 @@ +/* + * 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 index 6ccaecaf..fc9d84d7 100644 --- a/web/app/model/Notification.js +++ b/web/app/model/Notification.js @@ -31,14 +31,8 @@ Ext.define('Traccar.model.Notification', { }, { name: 'attributes' }, { - name: 'web', - type: 'bool' - }, { - name: 'mail', - type: 'bool' - }, { - name: 'sms', - type: 'bool' + name: 'notificators', + type: 'string' }, { name: 'calendarId', type: 'int' diff --git a/web/app/model/User.js b/web/app/model/User.js index 5232c9f4..76f2a366 100644 --- a/web/app/model/User.js +++ b/web/app/model/User.js @@ -41,7 +41,7 @@ Ext.define('Traccar.model.User', { name: 'readonly', type: 'boolean' }, { - name: 'admin', + name: 'administrator', type: 'boolean' }, { name: 'map', |