]> git.proxmox.com Git - pve-manager.git/commitdiff
add embedded qemu novnc console
authorAlexandre Derumier <aderumier@odiso.com>
Fri, 26 Jun 2015 09:25:09 +0000 (11:25 +0200)
committerDietmar Maurer <dietmar@proxmox.com>
Fri, 26 Jun 2015 09:35:18 +0000 (11:35 +0200)
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
www/manager/Makefile
www/manager/qemu/Config.js
www/manager/qemu/Console.js [new file with mode: 0644]

index 05eee8945ca655f29c211b3c7abb7584599431e2..7f2acde3f69cbdc14ce4a8f7f932fdb2ba32bd29 100644 (file)
@@ -115,6 +115,7 @@ JSSRC=                                                      \
        window/Migrate.js                               \
        window/MigrateAll.js                            \
        qemu/Monitor.js                                 \
+       qemu/Console.js                                 \
        qemu/Summary.js                                 \
        qemu/OSTypeEdit.js                              \
        qemu/ProcessorEdit.js                           \
index 1d1c8a2054fe18d1cc255c047519835689cbb13e..f3882bfddcd3ad502dcbd7d8c43c0ce445b3bee5 100644 (file)
@@ -177,6 +177,14 @@ Ext.define('PVE.qemu.Config', {
            });
        }
 
+       if (caps.vms['VM.Console']) {
+           me.items.push({
+               title: gettext('Console'),
+               itemId: 'console',
+               xtype: 'pveQemuConsole'
+           });
+       }
+
        if (caps.vms['VM.Console']) {
            me.items.push([
                {
diff --git a/www/manager/qemu/Console.js b/www/manager/qemu/Console.js
new file mode 100644 (file)
index 0000000..376e3fa
--- /dev/null
@@ -0,0 +1,38 @@
+Ext.define('PVE.qemu.Console', {
+    extend: 'Ext.panel.Panel',
+
+    alias: 'widget.pveQemuConsole',
+
+    initComponent : function() {
+       var me = this;
+
+       var nodename = me.pveSelNode.data.node;
+       if (!nodename) {
+           throw "no node name specified";
+       }
+
+       var vmid = me.pveSelNode.data.vmid;
+       if (!vmid) {
+           throw "no VM ID specified";
+       }
+
+       var myid = "vncconsole";
+
+       var box = Ext.create('widget.uxiframe', {
+                   id: myid
+               });
+
+       Ext.apply(me, {
+           layout: { type: 'fit' },
+           border: false,
+           items: box,
+           listeners: {
+               show: function() {
+                   box.load('/?console=kvm&novnc=1&vmid='+ vmid + '&node=' + nodename + '&resize=scale');
+               }
+           }
+       });             
+
+       me.callParent();
+    }
+});