diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2015-10-04 19:22:55 +1300 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2015-10-04 19:22:55 +1300 |
commit | 84bc395ee2c22b596c30fae4054b72906e52d6b0 (patch) | |
tree | d8f31def0381c1345572ce63f5651d69cc1ba7d4 /web/app/view/SettingsMenuController.js | |
parent | 80c3aaf2af10c8d94b18f01a0a3d825437a5596d (diff) | |
download | trackermap-server-84bc395ee2c22b596c30fae4054b72906e52d6b0.tar.gz trackermap-server-84bc395ee2c22b596c30fae4054b72906e52d6b0.tar.bz2 trackermap-server-84bc395ee2c22b596c30fae4054b72906e52d6b0.zip |
Move settings into separate class
Diffstat (limited to 'web/app/view/SettingsMenuController.js')
-rw-r--r-- | web/app/view/SettingsMenuController.js | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/web/app/view/SettingsMenuController.js b/web/app/view/SettingsMenuController.js new file mode 100644 index 000000000..b63cf42f8 --- /dev/null +++ b/web/app/view/SettingsMenuController.js @@ -0,0 +1,60 @@ +/* + * Copyright 2015 Anton Tananaev (anton.tananaev@gmail.com) + * + * 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.SettingsMenuController', { + extend: 'Ext.app.ViewController', + alias: 'controller.settings', + + requires: [ + 'Traccar.view.LoginController' + ], + + init: function () { + if (Traccar.app.getUser().get('admin')) { + this.lookupReference('settingsServerButton').setHidden(false); + this.lookupReference('settingsUsersButton').setHidden(false); + } + }, + + onUserClick: function () { + var dialog = Ext.create('Traccar.view.UserDialog'); + dialog.down('form').loadRecord(Traccar.app.getUser()); + dialog.show(); + }, + + onServerClick: function () { + var dialog = Ext.create('Traccar.view.ServerDialog'); + dialog.down('form').loadRecord(Traccar.app.getServer()); + dialog.show(); + }, + + onUsersClick: function () { + Ext.create('Ext.window.Window', { + title: Strings.settingsUsers, + width: Traccar.Style.windowWidth, + height: Traccar.Style.windowHeight, + layout: 'fit', + modal: true, + items: { + xtype: 'userView' + } + }).show(); + }, + + onLogoutClick: function () { + Ext.create('Traccar.view.LoginController').logout(); + } +}); |