]> git.proxmox.com Git - pve-manager.git/blame - www/manager6/button/ConsoleButton.js
show serial ports on the gui
[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
5 consoleType: 'shell', // one of 'shell', 'kvm', 'lxc', 'upgrade'
6
7 consoleName: undefined,
8
ea541321
EK
9 iconCls: 'fa fa-terminal',
10
5dcaa989
DM
11 enableSpice: true,
12
13 nodename: undefined,
14
15 vmid: 0,
16
d345d7ad
DC
17 text: gettext('Console'),
18
5dcaa989
DM
19 setEnableSpice: function(enable){
20 var me = this;
21
22 me.enableSpice = enable;
d345d7ad 23 me.down('#spicemenu').setDisabled(!enable);
5dcaa989
DM
24 },
25
d345d7ad
DC
26 handler: function() {
27 var me = this;
28 PVE.Utils.openDefaultConsoleWindow(me.enableSpice, me.consoleType, me.vmid,
29 me.nodename, me.consoleName);
30 },
5dcaa989 31
d345d7ad
DC
32 menu: [
33 {
34 xtype:'menuitem',
35 text: 'noVNC',
36 iconCls: 'pve-itype-icon-novnc',
37 type: 'html5',
38 handler: function(button) {
39 var me = this.up('button');
40 PVE.Utils.openConsoleWindow(button.type, me.consoleType, me.vmid, me.nodename, me.consoleName);
c02971cf 41 }
d345d7ad
DC
42 },
43 {
44 xterm: 'menuitem',
45 itemId: 'spicemenu',
5dcaa989 46 text: 'SPICE',
d345d7ad 47 type: 'vv',
5dcaa989 48 iconCls: 'pve-itype-icon-virt-viewer',
d345d7ad
DC
49 handler: function(button) {
50 var me = this.up('button');
51 PVE.Utils.openConsoleWindow(button.type, me.consoleType, me.vmid, me.nodename, me.consoleName);
c02971cf 52 }
d345d7ad
DC
53 },
54 {
55 text: 'xterm.js',
56 itemId: 'xtermjs',
d0f7ae46 57 iconCls: 'pve-itype-icon-xtermjs',
d345d7ad
DC
58 type: 'xtermjs',
59 handler: function(button) {
60 var me = this.up('button');
61 PVE.Utils.openConsoleWindow(button.type, me.consoleType, me.vmid, me.nodename, me.consoleName);
c02971cf 62 }
d345d7ad
DC
63 }
64 ],
5dcaa989 65
d345d7ad
DC
66 initComponent: function() {
67 var me = this;
5dcaa989 68
d345d7ad
DC
69 if (!me.nodename) {
70 throw "no node name specified";
26c5f8d7 71 }
5dcaa989 72
5dcaa989
DM
73 me.callParent();
74 }
75});