aboutsummaryrefslogtreecommitdiff
path: root/web/app/view/dialog/Maintenance.js
diff options
context:
space:
mode:
authorAbyss777 <abyss@fox5.ru>2018-04-11 14:31:42 +0500
committerAbyss777 <abyss@fox5.ru>2018-04-19 12:15:59 +0500
commit19a9155d988dcee7698a65a45b0558aa0ff279d4 (patch)
treecea9ae5c73a625d01bc06df5742228b5cbbd1def /web/app/view/dialog/Maintenance.js
parent4e7d2b8fdb41390205d69997d61db536545f5564 (diff)
downloadtrackermap-web-19a9155d988dcee7698a65a45b0558aa0ff279d4.tar.gz
trackermap-web-19a9155d988dcee7698a65a45b0558aa0ff279d4.tar.bz2
trackermap-web-19a9155d988dcee7698a65a45b0558aa0ff279d4.zip
Implement Maintenances
Diffstat (limited to 'web/app/view/dialog/Maintenance.js')
-rw-r--r--web/app/view/dialog/Maintenance.js74
1 files changed, 74 insertions, 0 deletions
diff --git a/web/app/view/dialog/Maintenance.js b/web/app/view/dialog/Maintenance.js
new file mode 100644
index 00000000..e4be7b5b
--- /dev/null
+++ b/web/app/view/dialog/Maintenance.js
@@ -0,0 +1,74 @@
+/*
+ * 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'
+ ],
+
+ controller: 'maintenance',
+
+ title: Strings.sharedMaintenance,
+
+ items: {
+ xtype: 'form',
+ listeners: {
+ validitychange: 'onValidityChange'
+ },
+ items: [{
+ xtype: 'fieldset',
+ title: Strings.sharedRequired,
+ items: [{
+ xtype: 'textfield',
+ 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 : 'Can\'t be zero';
+ }
+ }]
+ }]
+ }
+});