diff --git a/src/sunstone/public/app/opennebula/vm.js b/src/sunstone/public/app/opennebula/vm.js index 1e50de1c15..4e516f704d 100644 --- a/src/sunstone/public/app/opennebula/vm.js +++ b/src/sunstone/public/app/opennebula/vm.js @@ -204,6 +204,19 @@ define(function(require) { "shortLcmStateStr": function(stateId) { return SHORT_LCM_STATES[stateId]; }, + "hostnameStr": function(element) { + var state = STATES[element.STATE]; + var hostname = "--"; + if (state == "ACTIVE" || state == "SUSPENDED" || state == "POWEROFF") { + if (element.HISTORY_RECORDS.HISTORY.constructor == Array) { + hostname = element.HISTORY_RECORDS.HISTORY[element.HISTORY_RECORDS.HISTORY.length - 1].HOSTNAME; + } else { + hostname = element.HISTORY_RECORDS.HISTORY.HOSTNAME; + }; + }; + + return hostname; + }, "create": function(params) { OpenNebulaAction.create(params, RESOURCE); }, diff --git a/src/sunstone/public/app/tabs/vms-tab/datatable.js b/src/sunstone/public/app/tabs/vms-tab/datatable.js index 798389bae8..010aa04646 100644 --- a/src/sunstone/public/app/tabs/vms-tab/datatable.js +++ b/src/sunstone/public/app/tabs/vms-tab/datatable.js @@ -8,7 +8,7 @@ define(function(require) { var Locale = require('utils/locale'); var Humanize = require('utils/humanize'); var TemplateUtils = require('utils/template-utils'); - var OpenNebulaVm = require('opennebula/vm'); + var OpenNebulaVM = require('opennebula/vm'); var VncSpiceUtils = require('./utils/vnc-spice-utils'); var StateActions = require('./utils/state-actions'); @@ -84,16 +84,8 @@ define(function(require) { function _elementArray(element_json) { var element = element_json[XML_ROOT]; - var state = OpenNebulaVm.stateStr(element.STATE); - var hostname = "--"; - - if (state == "ACTIVE" || state == "SUSPENDED" || state == "POWEROFF") { - if (element.HISTORY_RECORDS.HISTORY.constructor == Array) { - hostname = element.HISTORY_RECORDS.HISTORY[element.HISTORY_RECORDS.HISTORY.length - 1].HOSTNAME; - } else { - hostname = element.HISTORY_RECORDS.HISTORY.HOSTNAME; - }; - }; + var state = OpenNebulaVM.stateStr(element.STATE); + var hostname = OpenNebulaVM.hostnameStr(element); /* TODO switch (state) { @@ -118,7 +110,7 @@ define(function(require) { }*/ if (state == "ACTIVE") { - state = OpenNebulaVm.shortLcmStateStr(element.LCM_STATE); + state = OpenNebulaVM.shortLcmStateStr(element.LCM_STATE); }; return [ diff --git a/src/sunstone/public/app/tabs/vms-tab/panels/info.js b/src/sunstone/public/app/tabs/vms-tab/panels/info.js index 9dffcf9e57..3856051572 100644 --- a/src/sunstone/public/app/tabs/vms-tab/panels/info.js +++ b/src/sunstone/public/app/tabs/vms-tab/panels/info.js @@ -8,7 +8,7 @@ define(function(require) { var RenameTr = require('utils/panel/rename-tr'); var PermissionsTable = require('utils/panel/permissions-table'); var TemplateTable = require('utils/panel/template-table'); - var OpenNebulaVm = require('opennebula/vm'); + var OpenNebulaVM = require('opennebula/vm'); var StateActions = require('../utils/state-actions'); var VncSpiceUtils = require('../utils/vnc-spice-utils'); @@ -55,16 +55,9 @@ define(function(require) { var permissionsTableHTML = PermissionsTable.html(TAB_ID, RESOURCE, this.element); var prettyStartTime = Humanize.prettyTime(this.element.STIME); - var stateStr = OpenNebulaVm.stateStr(this.element.STATE); - var lcmStateStr = OpenNebulaVm.lcmStateStr(this.element.LCM_STATE); - var hostname = "--"; - if (stateStr == "ACTIVE" || stateStr == "SUSPENDED" || stateStr == "POWEROFF") { - if (this.element.HISTORY_RECORDS.HISTORY.constructor == Array) { - hostname = this.element.HISTORY_RECORDS.HISTORY[this.element.HISTORY_RECORDS.HISTORY.length - 1].HOSTNAME; - } else { - hostname = this.element.HISTORY_RECORDS.HISTORY.HOSTNAME; - }; - }; + var stateStr = OpenNebulaVM.stateStr(this.element.STATE); + var lcmStateStr = OpenNebulaVM.lcmStateStr(this.element.LCM_STATE); + var hostname = OpenNebulaVM.hostnameStr(element); var deployId = (typeof(this.element.DEPLOY_ID) == "object" ? "-" : this.element.DEPLOY_ID); var resched = (parseInt(this.element.RESCHED) ? Locale.tr("yes") : Locale.tr("no"))