]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/window/BulkAction.js
043e23215ea47a73510896b04b122f7e62202a4b
1 Ext
.define('PVE.window.BulkAction', {
2 extend
: 'Ext.window.Window',
12 // the action to be set
13 // currently there are
19 submit: function(params
) {
21 Proxmox
.Utils
.API2Request({
23 url
: '/nodes/' + me
.nodename
+ '/' + me
.action
,
26 failure: function(response
, opts
) {
27 Ext
.Msg
.alert('Error', response
.htmlStatus
);
29 success: function(response
, options
) {
30 var upid
= response
.result
.data
;
32 var win
= Ext
.create('Proxmox.window.TaskViewer', {
37 win
.on('destroy', function() {
44 initComponent : function() {
48 throw "no node name specified";
52 throw "no action specified";
56 throw "no button text specified";
60 throw "no title specified";
65 if (me
.action
=== 'migrateall') {
68 xtype
: 'pveNodeSelector',
70 disallowedNodes
: [me
.nodename
],
71 fieldLabel
: gettext('Target node'),
76 xtype
: 'proxmoxintegerfield',
81 fieldLabel
: gettext('Parallel jobs'),
86 xtype
: 'displayfield',
88 value
: 'Warning: Running CTs will be migrated in Restart Mode.',
89 hidden
: true // only visible if running container chosen
92 } else if (me
.action
=== 'startall') {
108 nodename
: me
.nodename
,
111 selectionchange: function(vmselector
, records
) {
112 if (me
.action
== 'migrateall') {
113 let showWarning
= records
.some(function(item
) {
114 return (item
.data
.type
== 'lxc' &&
115 item
.data
.status
== 'running');
117 me
.down('#lxcwarning').setVisible(showWarning
);
123 me
.formPanel
= Ext
.create('Ext.form.Panel', {
137 var form
= me
.formPanel
.getForm();
139 var submitBtn
= Ext
.create('Ext.Button', {
141 handler: function() {
143 me
.submit(form
.getValues());
148 items
: [ me
.formPanel
],
149 buttons
: [ submitBtn
]
154 form
.on('validitychange', function() {
155 var valid
= form
.isValid();
156 submitBtn
.setDisabled(!valid
);