]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/node/CmdMenu.js
1 Ext
.define('PVE.node.CmdMenu', {
2 extend
: 'Ext.menu.Menu',
9 text
: gettext('Create VM'),
11 iconCls
: 'fa fa-desktop',
13 var me
= this.up('menu');
14 var wiz
= Ext
.create('PVE.qemu.CreateWizard', {
15 nodename
: me
.nodename
,
21 text
: gettext('Create CT'),
23 iconCls
: 'fa fa-cube',
25 var me
= this.up('menu');
26 var wiz
= Ext
.create('PVE.lxc.CreateWizard', {
27 nodename
: me
.nodename
,
32 { xtype
: 'menuseparator' },
34 text
: gettext('Bulk Start'),
36 iconCls
: 'fa fa-fw fa-play',
38 var me
= this.up('menu');
39 var win
= Ext
.create('PVE.window.BulkAction', {
40 nodename
: me
.nodename
,
41 title
: gettext('Bulk Start'),
42 btnText
: gettext('Start'),
49 text
: gettext('Bulk Stop'),
51 iconCls
: 'fa fa-fw fa-stop',
53 var me
= this.up('menu');
54 var win
= Ext
.create('PVE.window.BulkAction', {
55 nodename
: me
.nodename
,
56 title
: gettext('Bulk Stop'),
57 btnText
: gettext('Stop'),
64 text
: gettext('Bulk Migrate'),
65 itemId
: 'bulkmigrate',
66 iconCls
: 'fa fa-fw fa-send-o',
68 var me
= this.up('menu');
69 var win
= Ext
.create('PVE.window.BulkAction', {
70 nodename
: me
.nodename
,
71 title
: gettext('Bulk Migrate'),
72 btnText
: gettext('Migrate'),
78 { xtype
: 'menuseparator' },
80 text
: gettext('Shell'),
82 iconCls
: 'fa fa-fw fa-terminal',
84 var me
= this.up('menu');
85 PVE
.Utils
.openDefaultConsoleWindow(true, 'shell', undefined, me
.nodename
, undefined);
88 { xtype
: 'menuseparator' },
90 text
: gettext('Wake-on-LAN'),
92 iconCls
: 'fa fa-fw fa-power-off',
94 var me
= this.up('menu');
95 Proxmox
.Utils
.API2Request({
97 url
: '/nodes/' + me
.nodename
+ '/wakeonlan',
99 failure: function(response
, opts
) {
100 Ext
.Msg
.alert(gettext('Error'), response
.htmlStatus
);
102 success: function(response
, opts
) {
106 msg
: Ext
.String
.format(gettext("Wake on LAN packet send for '{0}': '{1}'"), me
.nodename
, response
.result
.data
),
114 initComponent: function() {
118 throw 'no nodename specified';
121 me
.title
= gettext('Node') + " '" + me
.nodename
+ "'";
124 var caps
= Ext
.state
.Manager
.get('GuiCap');
125 // disable not allowed options
126 if (!caps
.vms
['VM.Allocate']) {
127 me
.getComponent('createct').setDisabled(true);
128 me
.getComponent('createvm').setDisabled(true);
131 if (!caps
.nodes
['Sys.PowerMgmt']) {
132 me
.getComponent('bulkstart').setDisabled(true);
133 me
.getComponent('bulkstop').setDisabled(true);
134 me
.getComponent('bulkmigrate').setDisabled(true);
135 me
.getComponent('wakeonlan').setDisabled(true);
138 if (!caps
.nodes
['Sys.Console']) {
139 me
.getComponent('shell').setDisabled(true);
142 if (me
.pveSelNode
.data
.running
) {
143 me
.getComponent('wakeonlan').setDisabled(true);