]> git.proxmox.com Git - pve-manager.git/blob - www/manager/window/MigrateAll.js
disable animation of charts on load
[pve-manager.git] / www / manager / window / MigrateAll.js
1 Ext.define('PVE.window.MigrateAll', {
2 extend: 'Ext.window.Window',
3
4 resizable: false,
5
6 migrate: function(target, maxworkers) {
7 var me = this;
8 PVE.Utils.API2Request({
9 params: { target: target, maxworkers: maxworkers},
10 url: '/nodes/' + me.nodename + '/' + "/migrateall",
11 waitMsgTarget: me,
12 method: 'POST',
13 failure: function(response, opts) {
14 Ext.Msg.alert('Error', response.htmlStatus);
15 },
16 success: function(response, options) {
17 var upid = response.result.data;
18
19 var win = Ext.create('PVE.window.TaskViewer', {
20 upid: upid
21 });
22 win.show();
23 me.close();
24 }
25 });
26 },
27
28 initComponent : function() {
29 var me = this;
30
31 if (!me.nodename) {
32 throw "no node name specified";
33 }
34
35 me.formPanel = Ext.create('Ext.form.Panel', {
36 bodyPadding: 10,
37 border: false,
38 fieldDefaults: {
39 labelWidth: 100,
40 anchor: '100%'
41 },
42 items: [
43 {
44 xtype: 'PVE.form.NodeSelector',
45 name: 'target',
46 fieldLabel: 'Target node',
47 allowBlank: false,
48 onlineValidator: true
49 },
50 {
51 xtype: 'numberfield',
52 name: 'maxworkers',
53 minValue: 1,
54 maxValue: 100,
55 value: 1,
56 fieldLabel: 'Parallel jobs',
57 allowBlank: false
58 },
59 ]
60 });
61
62 var form = me.formPanel.getForm();
63
64 var submitBtn = Ext.create('Ext.Button', {
65 text: 'Migrate',
66 handler: function() {
67 var values = form.getValues();
68 me.migrate(values.target, values.maxworkers);
69 }
70 });
71
72 Ext.apply(me, {
73 title: "Migrate All VMs",
74 width: 350,
75 modal: true,
76 layout: 'auto',
77 border: false,
78 items: [ me.formPanel ],
79 buttons: [ submitBtn ]
80 });
81
82 me.callParent();
83 }
84 });