]> git.proxmox.com Git - pve-manager.git/blame - www/manager6/button/ConsoleButton.js
ui: eslint: fix various spacing related issues
[pve-manager.git] / www / manager6 / button / ConsoleButton.js
CommitLineData
5dcaa989
DM
1Ext.define('PVE.button.ConsoleButton', {
2 extend: 'Ext.button.Split',
3 alias: 'widget.pveConsoleButton',
4
8eccc68f
TM
5 consoleType: 'shell', // one of 'shell', 'kvm', 'lxc', 'upgrade', 'cmd'
6
7 cmd: undefined,
5dcaa989
DM
8
9 consoleName: undefined,
10
ea541321
EK
11 iconCls: 'fa fa-terminal',
12
5dcaa989 13 enableSpice: true,
a71b4398 14 enableXtermjs: true,
5dcaa989
DM
15
16 nodename: undefined,
17
18 vmid: 0,
19
d345d7ad
DC
20 text: gettext('Console'),
21
8058410f 22 setEnableSpice: function(enable) {
5dcaa989
DM
23 var me = this;
24
25 me.enableSpice = enable;
d345d7ad 26 me.down('#spicemenu').setDisabled(!enable);
5dcaa989
DM
27 },
28
8058410f 29 setEnableXtermJS: function(enable) {
a71b4398
DC
30 var me = this;
31
32 me.enableXtermjs = enable;
33 me.down('#xtermjs').setDisabled(!enable);
34 },
35
d345d7ad
DC
36 handler: function() {
37 var me = this;
3438c27e
DC
38 var consoles = {
39 spice: me.enableSpice,
f6710aac 40 xtermjs: me.enableXtermjs,
3438c27e
DC
41 };
42 PVE.Utils.openDefaultConsoleWindow(consoles, me.consoleType, me.vmid,
8eccc68f 43 me.nodename, me.consoleName, me.cmd);
d345d7ad 44 },
5dcaa989 45
d345d7ad
DC
46 menu: [
47 {
8058410f 48 xtype: 'menuitem',
d345d7ad
DC
49 text: 'noVNC',
50 iconCls: 'pve-itype-icon-novnc',
51 type: 'html5',
52 handler: function(button) {
53 var me = this.up('button');
8eccc68f 54 PVE.Utils.openConsoleWindow(button.type, me.consoleType, me.vmid, me.nodename, me.consoleName, me.cmd);
f6710aac 55 },
d345d7ad
DC
56 },
57 {
58 xterm: 'menuitem',
59 itemId: 'spicemenu',
5dcaa989 60 text: 'SPICE',
d345d7ad 61 type: 'vv',
5dcaa989 62 iconCls: 'pve-itype-icon-virt-viewer',
d345d7ad
DC
63 handler: function(button) {
64 var me = this.up('button');
8eccc68f 65 PVE.Utils.openConsoleWindow(button.type, me.consoleType, me.vmid, me.nodename, me.consoleName, me.cmd);
f6710aac 66 },
d345d7ad
DC
67 },
68 {
69 text: 'xterm.js',
70 itemId: 'xtermjs',
d0f7ae46 71 iconCls: 'pve-itype-icon-xtermjs',
d345d7ad
DC
72 type: 'xtermjs',
73 handler: function(button) {
74 var me = this.up('button');
8eccc68f 75 PVE.Utils.openConsoleWindow(button.type, me.consoleType, me.vmid, me.nodename, me.consoleName, me.cmd);
f6710aac
TL
76 },
77 },
d345d7ad 78 ],
5dcaa989 79
d345d7ad
DC
80 initComponent: function() {
81 var me = this;
5dcaa989 82
d345d7ad
DC
83 if (!me.nodename) {
84 throw "no node name specified";
26c5f8d7 85 }
5dcaa989 86
5dcaa989 87 me.callParent();
f6710aac 88 },
5dcaa989 89});