]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/window/Migrate.js
1 Ext
.define('PVE.window.Migrate', {
2 extend
: 'Ext.window.Window',
6 migrate: function(target
, online
) {
12 if (me
.vmtype
=== 'qemu') {
13 params
.online
= online
;
15 params
.restart
= online
;
18 PVE
.Utils
.API2Request({
20 url
: '/nodes/' + me
.nodename
+ '/' + me
.vmtype
+ '/' + me
.vmid
+ "/migrate",
23 failure: function(response
, opts
) {
24 Ext
.Msg
.alert(gettext('Error'), response
.htmlStatus
);
26 success: function(response
, options
) {
27 var upid
= response
.result
.data
;
29 var win
= Ext
.create('PVE.window.TaskViewer', {
38 initComponent : function() {
42 throw "no node name specified";
46 throw "no VM ID specified";
50 throw "no VM type specified";
54 var vmrec
= PVE
.data
.ResourceStore
.findRecord('vmid', me
.vmid
,
55 0, false, false, true);
56 if (vmrec
&& vmrec
.data
&& vmrec
.data
.running
) {
60 me
.formPanel
= Ext
.create('Ext.form.Panel', {
69 xtype
: 'pveNodeSelector',
71 fieldLabel
: gettext('Target node'),
73 disallowedNodes
: [me
.nodename
],
82 fieldLabel
: me
.vtype
=== 'qemu' ? gettext('Online') : gettext('Restart Mode')
87 var form
= me
.formPanel
.getForm();
89 var submitBtn
= Ext
.create('Ext.Button', {
90 text
: gettext('Migrate'),
92 var values
= form
.getValues();
93 me
.migrate(values
.target
, values
.online
);
99 // the onlinehelp parser needs
100 // that every id is explicitely written
101 // can we do this better?
102 if (me
.vmtype
=== 'qemu') {
104 onlineHelp
: 'qm_migration',
105 listenToGlobalEvent
: false,
110 onlineHelp
: 'pct_migration',
111 listenToGlobalEvent
: false,
116 var helpBtn
= Ext
.create('PVE.button.Help', helpConfig
);
119 title
: gettext('Migrate') + ((me
.vmtype
=== 'qemu')?' VM ':' CT ') + me
.vmid
,
124 items
: [ me
.formPanel
],
125 buttons
: [ helpBtn
, '->', submitBtn
]