aboutsummaryrefslogtreecommitdiff
path: root/web
diff options
context:
space:
mode:
Diffstat (limited to 'web')
-rw-r--r--web/app/Application.js4
-rw-r--r--web/app/controller/Root.js2
-rw-r--r--web/app/model/Attribute.js3
-rw-r--r--web/app/store/AllAttributeAliases.js (renamed from web/app/store/AllAttributesAliases.js)4
-rw-r--r--web/app/store/AttributeAliases.js (renamed from web/app/store/AttributesAliases.js)4
-rw-r--r--web/app/view/AttributesAliases.js5
-rw-r--r--web/app/view/AttributesAliasesController.js6
-rw-r--r--web/app/view/State.js8
-rw-r--r--web/app/view/StateController.js34
9 files changed, 34 insertions, 36 deletions
diff --git a/web/app/Application.js b/web/app/Application.js
index 73b9e83..8262e2e 100644
--- a/web/app/Application.js
+++ b/web/app/Application.js
@@ -61,8 +61,8 @@ Ext.define('Traccar.Application', {
'Notifications',
'AllNotifications',
'GeofenceTypes',
- 'AttributesAliases',
- 'AllAttributesAliases',
+ 'AttributeAliases',
+ 'AllAttributeAliases',
'ReportRoute',
'ReportEvents',
'ReportTrips',
diff --git a/web/app/controller/Root.js b/web/app/controller/Root.js
index 5e3c39d..0784aea 100644
--- a/web/app/controller/Root.js
+++ b/web/app/controller/Root.js
@@ -78,13 +78,13 @@ Ext.define('Traccar.controller.Root', {
var attribution;
Ext.getStore('Groups').load();
Ext.getStore('Geofences').load();
+ Ext.getStore('AllAttributeAliases').load();
Ext.getStore('Devices').load({
scope: this,
callback: function () {
this.asyncUpdate(true);
}
});
- Ext.getStore('AllAttributesAliases').load();
attribution = Ext.get('attribution');
if (attribution) {
attribution.remove();
diff --git a/web/app/model/Attribute.js b/web/app/model/Attribute.js
index 7bf5beb..b82fecf 100644
--- a/web/app/model/Attribute.js
+++ b/web/app/model/Attribute.js
@@ -30,8 +30,5 @@ Ext.define('Traccar.model.Attribute', {
}, {
name: 'attribute',
type: 'string'
- }, {
- name: 'alias',
- type: 'string'
}]
});
diff --git a/web/app/store/AllAttributesAliases.js b/web/app/store/AllAttributeAliases.js
index 7eb6c0c..c351d0d 100644
--- a/web/app/store/AllAttributesAliases.js
+++ b/web/app/store/AllAttributeAliases.js
@@ -16,13 +16,13 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-Ext.define('Traccar.store.AllAttributesAliases', {
+Ext.define('Traccar.store.AllAttributeAliases', {
extend: 'Ext.data.Store',
model: 'Traccar.model.AttributeAlias',
proxy: {
type: 'rest',
- url: 'api/devices/aliases',
+ url: 'api/attributes/aliases',
writer: {
writeAllFields: true
}
diff --git a/web/app/store/AttributesAliases.js b/web/app/store/AttributeAliases.js
index 1f8d11d..ebec8c8 100644
--- a/web/app/store/AttributesAliases.js
+++ b/web/app/store/AttributeAliases.js
@@ -16,13 +16,13 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-Ext.define('Traccar.store.AttributesAliases', {
+Ext.define('Traccar.store.AttributeAliases', {
extend: 'Ext.data.Store',
model: 'Traccar.model.AttributeAlias',
proxy: {
type: 'rest',
- url: 'api/devices/aliases',
+ url: 'api/attributes/aliases',
writer: {
writeAllFields: true
}
diff --git a/web/app/view/AttributesAliases.js b/web/app/view/AttributesAliases.js
index b1390e4..717991d 100644
--- a/web/app/view/AttributesAliases.js
+++ b/web/app/view/AttributesAliases.js
@@ -26,7 +26,7 @@ Ext.define('Traccar.view.AttributesAliases', {
],
controller: 'attributesAliases',
- store: 'AttributesAliases',
+ store: 'AttributeAliases',
selType: 'rowmodel',
@@ -46,8 +46,7 @@ Ext.define('Traccar.view.AttributesAliases', {
},
listeners: {
- selectionchange: 'onSelectionChange',
- destroy: 'onClose'
+ selectionchange: 'onSelectionChange'
},
columns: [{
diff --git a/web/app/view/AttributesAliasesController.js b/web/app/view/AttributesAliasesController.js
index e848c48..cda3e33 100644
--- a/web/app/view/AttributesAliasesController.js
+++ b/web/app/view/AttributesAliasesController.js
@@ -90,11 +90,5 @@ Ext.define('Traccar.view.AttributesAliasesController', {
} else {
this.getView().getStore().loadData([], false);
}
- },
-
- onClose: function () {
- Ext.getStore('AllAttributesAliases').load();
- this.fireEvent('updatealiases');
}
-
});
diff --git a/web/app/view/State.js b/web/app/view/State.js
index ddb9c0e..7e9e235 100644
--- a/web/app/view/State.js
+++ b/web/app/view/State.js
@@ -49,17 +49,13 @@ Ext.define('Traccar.view.State', {
columns: [{
text: Strings.stateName,
dataIndex: 'name',
- flex: 1,
- renderer: function (value, metaData, record) {
- var alias = record.get('alias');
- return alias !== '' ? alias : value;
- }
+ flex: 1
}, {
text: Strings.stateValue,
dataIndex: 'value',
flex: 1,
renderer: function (value, metaData, record) {
- if (record.get('name') === 'Alarm') {
+ if (record.get('attribute') === 'alarm') {
metaData.tdCls = 'view-color-red';
}
return value;
diff --git a/web/app/view/StateController.js b/web/app/view/StateController.js
index b7df1e2..7462fcc 100644
--- a/web/app/view/StateController.js
+++ b/web/app/view/StateController.js
@@ -44,9 +44,13 @@ Ext.define('Traccar.view.StateController', {
'#Positions': {
clear: 'clearReport'
},
- '#AllAttributesAliases': {
+ '#AllAttributeAliases': {
add: 'updateAliases',
update: 'updateAliases'
+ },
+ '#AttributeAliases': {
+ add: 'updateAliasesRemote',
+ update: 'updateAliasesRemote'
}
}
}
@@ -89,7 +93,7 @@ Ext.define('Traccar.view.StateController', {
},
updatePosition: function () {
- var attributes, store, key, aliasesStore, attributeAlias, alias;
+ var attributes, store, key, aliasesStore, attributeAlias, name;
store = Ext.getStore('Attributes');
store.removeAll();
@@ -103,7 +107,7 @@ Ext.define('Traccar.view.StateController', {
}
}
- aliasesStore = Ext.getStore('AllAttributesAliases');
+ aliasesStore = Ext.getStore('AllAttributeAliases');
aliasesStore.filter('deviceId', this.position.get('deviceId'));
attributes = this.position.get('attributes');
@@ -112,17 +116,16 @@ Ext.define('Traccar.view.StateController', {
if (attributes.hasOwnProperty(key)) {
attributeAlias = aliasesStore.findRecord('attribute', key, 0, false, true, true);
if (attributeAlias !== null) {
- alias = attributeAlias.get('alias');
+ name = attributeAlias.get('alias');
} else {
- alias = '';
+ name = key.replace(/^./, function (match) {
+ return match.toUpperCase();
+ });
}
store.add(Ext.create('Traccar.model.Attribute', {
priority: 1024,
- name: key.replace(/^./, function (match) {
- return match.toUpperCase();
- }),
+ name: name,
attribute: key,
- alias: alias,
value: Traccar.AttributeFormatter.getFormatter(key)(attributes[key])
}));
}
@@ -155,14 +158,14 @@ Ext.define('Traccar.view.StateController', {
},
onSelectionChange: function (selected, records) {
- var enabled = selected.getCount() > 0 && records[0].get('attribute') !== '';
+ var enabled = selected.getCount() > 0 && records[0].get('priority') === 1024;
this.lookupReference('aliasEditButton').setDisabled(!enabled);
},
onAliasEditClick: function () {
var attribute, aliasesStore, attributeAlias, dialog;
attribute = this.getView().getSelectionModel().getSelection()[0];
- aliasesStore = Ext.getStore('AllAttributesAliases');
+ aliasesStore = Ext.getStore('AllAttributeAliases');
attributeAlias = aliasesStore.findRecord('attribute', attribute.get('attribute'), 0, false, true, true);
if (attributeAlias === null) {
attributeAlias = Ext.create('Traccar.model.AttributeAlias', {
@@ -180,5 +183,14 @@ Ext.define('Traccar.view.StateController', {
if (this.position !== null) {
this.updatePosition();
}
+ },
+
+ updateAliasesRemote: function () {
+ Ext.getStore('AllAttributeAliases').load({
+ scope: this,
+ callback: function () {
+ this.updateAliases();
+ }
+ });
}
});