From 925f30a41b0dc5c4eddf6061852d9e73e9623d99 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Tue, 7 Oct 2014 16:06:15 -0700 Subject: [PATCH] CLOUDSTACK-3195: UI > IP Address > detailView > Configuration tab > Port Forwarding > for regular-user, if underlying VM has been destroyed (i.e. listVirtualMachines API returns nothing), compose vm object from limited vm data in port forwarding rule object. So, a vm object (required in widget code) can be passed to widget code. --- ui/scripts/network.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/ui/scripts/network.js b/ui/scripts/network.js index 8bbde6a5166..9d79d3fa8b3 100755 --- a/ui/scripts/network.js +++ b/ui/scripts/network.js @@ -4354,14 +4354,25 @@ }, success: function(data) { loadCurrent++; + var vms = data.listvirtualmachinesresponse.virtualmachine; + + //if this VM is destroyed, data.listvirtualmachinesresponse.virtualmachine will be undefined for regular-user (CLOUDSTACK-3195) + if (vms == undefined) { + vms = [{ + "id": item.virtualmachineid, + "name": item.virtualmachinename, + "displayname": item.virtualmachinedisplayname + }]; + } + $.extend(item, { - _itemData: $.map(data.listvirtualmachinesresponse.virtualmachine, function(vm) { + _itemData: $.map(vms, function(vm) { return $.extend(vm, { _displayName: '

VM: ' + vm.name + '

' + '

IP: ' + item.vmguestip + '

' // Also display attached IP }); }), _context: { - instances: data.listvirtualmachinesresponse.virtualmachine + instances: vms } });