]> git.proxmox.com Git - pve-manager.git/blob - www/manager6/qemu/TemplateMenu.js
make clone window guest agnostic
[pve-manager.git] / www / manager6 / qemu / TemplateMenu.js
1 Ext.define('PVE.qemu.TemplateMenu', {
2 extend: 'Ext.menu.Menu',
3
4 initComponent: function() {
5 var me = this;
6
7 var nodename = me.pveSelNode.data.node;
8 if (!nodename) {
9 throw "no node name specified";
10 }
11
12 var vmid = me.pveSelNode.data.vmid;
13 if (!vmid) {
14 throw "no VM ID specified";
15 }
16
17 var vmname = me.pveSelNode.data.name;
18
19 var template = me.pveSelNode.data.template;
20
21 var vm_command = function(cmd, params) {
22 Proxmox.Utils.API2Request({
23 params: params,
24 url: '/nodes/' + nodename + '/qemu/' + vmid + "/status/" + cmd,
25 method: 'POST',
26 failure: function(response, opts) {
27 Ext.Msg.alert(gettext('Error'), response.htmlStatus);
28 }
29 });
30 };
31
32 me.title = "VM " + vmid;
33
34 me.items = [
35 {
36 text: gettext('Migrate'),
37 iconCls: 'fa fa-fw fa-send-o',
38 handler: function() {
39 var win = Ext.create('PVE.window.Migrate', {
40 vmtype: 'qemu',
41 nodename: nodename,
42 vmid: vmid
43 });
44 win.show();
45 }
46 },
47 {
48 text: gettext('Clone'),
49 iconCls: 'fa fa-fw fa-clone',
50 handler: function() {
51 var win = Ext.create('PVE.window.Clone', {
52 nodename: nodename,
53 vmid: vmid,
54 isTemplate: template
55 });
56 win.show();
57 }
58 }
59 ];
60
61 me.callParent();
62 }
63 });