diff --git a/src/sunstone/public/js/one-ui_views.js b/src/sunstone/public/js/one-ui_views.js index c63c004c9c..7497a7484e 100644 --- a/src/sunstone/public/js/one-ui_views.js +++ b/src/sunstone/public/js/one-ui_views.js @@ -59,14 +59,14 @@ $(document).ready(function() { confirmButtonListener(); //listen to buttons that require confirmation confirmWithSelectListener(); //listen to buttons requiring a selector actionButtonListener(); //listens to all simple actions (not creates) - + hostInfoListener(); vMachineInfoListener(); vNetworkInfoListener(); imageInfoListener(); - - + + setupImageAttributesDialogs(); //setups the add/update/remove attr dialogs //Jquery-ui eye-candy @@ -75,7 +75,7 @@ $(document).ready(function() { emptyDashboard(); preloadTables(); setupAutoRefresh(); - + tableCheckboxesListener(dataTable_hosts); tableCheckboxesListener(dataTable_vMachines); tableCheckboxesListener(dataTable_vNetworks); @@ -501,7 +501,7 @@ function confirmWithSelectListener(){ }); $('div#confirm_with_select_dialog button').button(); - + $( '.confirm_with_select_button').live("click",function(){ val=$(this).val(); tip=""; @@ -2218,7 +2218,7 @@ function updateSingleElement(element,data_table,tag){ position = data_table.fnGetPosition(tr); data_table.fnUpdate(element,position,0); $('input',data_table).trigger("change"); - + } function tableCheckboxesListener(dataTable){ @@ -2329,7 +2329,7 @@ function hostElementArray(host_json){ //Adds a listener to show the extended info when clicking on a row function hostInfoListener(){ $('#tbodyhosts tr').live("click",function(e){ - + //do nothing if we are clicking a checkbox! if ($(e.target).is('input')) {return true;} @@ -2350,13 +2350,17 @@ function hostInfoListener(){ //~ } function vMachineElementArray(vm_json){ - vm = vm_json.VM; + var vm = vm_json.VM; + var state = OpenNebula.Helper.resource_state("vm",vm.STATE); + if (state == "ACTIVE") { + state = OpenNebula.Helper.resource_state("vm_lcm",vm.LCM_STATE); + } return [ '', vm.ID, vm.USERNAME ? vm.USERNAME : getUserName(vm.UID), vm.NAME, - OpenNebula.Helper.resource_state("vm",vm.STATE), + state, vm.CPU, humanize_size(vm.MEMORY), vm.HISTORY ? vm.HISTORY.HOSTNAME : "--", @@ -2397,7 +2401,7 @@ function vNetworkElementArray(vn_json){ } //Adds a listener to show the extended info when clicking on a row function vNetworkInfoListener(){ - + $('#tbodyvnetworks tr').live("click", function(e){ if ($(e.target).is('input')) {return true;} aData = dataTable_vNetworks.fnGetData(this); @@ -2433,7 +2437,7 @@ function imageElementArray(image_json){ } function imageInfoListener(target){ - + $('#tbodyimages tr').live("click",function(e){ if ($(e.target).is('input')) {return true;} aData = dataTable_images.fnGetData(this); @@ -2766,7 +2770,7 @@ function deleteVNetworkElement(req){ function addVNetworkElement(request,vn_json){ element = vNetworkElementArray(vn_json); addElement(element,dataTable_vNetworks); - + } function updateVNetworksView(request, network_list){ @@ -3013,7 +3017,7 @@ function updateVMInfo(request,vm){ \ \ LCM State\ - '+OpenNebula.Helper.resource_state("vm",vm_info.LCMSTATE)+'\ + '+OpenNebula.Helper.resource_state("vm_lcm",vm_info.LCM_STATE)+'\ \ \ Start time\ diff --git a/src/sunstone/public/js/opennebula.js b/src/sunstone/public/js/opennebula.js index 59c3e2a622..9579bd4683 100644 --- a/src/sunstone/public/js/opennebula.js +++ b/src/sunstone/public/js/opennebula.js @@ -65,6 +65,25 @@ var OpenNebula = { "DONE", "FAILED"][value]; break; + case "VM_LCM","vm_lcm": + return ["LCM_INIT", + "PROLOG", + "BOOT", + "RUNNING", + "MIGRATE", + "SAVE_STOP", + "SAVE_SUSPEND", + "SAVE_MIGRATE", + "PROLOG_MIGRATE", + "PROLOG_RESUME", + "EPILOG_STOP", + "EPILOG", + "SHUTDOWN", + "CANCEL", + "FAILURE", + "CLEANUP", + "UNKNOWN"][value]; + break; case "IMAGE","image": return ["INIT", "READY",