diff --git a/src/sunstone/public/app/tabs/oneflow-services-tab/panels/roles.js b/src/sunstone/public/app/tabs/oneflow-services-tab/panels/roles.js index 95fed166b8..2534be806b 100644 --- a/src/sunstone/public/app/tabs/oneflow-services-tab/panels/roles.js +++ b/src/sunstone/public/app/tabs/oneflow-services-tab/panels/roles.js @@ -200,6 +200,7 @@ define(function(require) { function _roleHTML(context, role_index) { var that = this; var role = this.element.TEMPLATE.BODY.roles[role_index]; + var ready_status_gate = that.element.TEMPLATE.BODY.ready_status_gate; var promises = []; var roleVms = []; @@ -215,6 +216,14 @@ define(function(require) { function successCallback (data) { if (data.VM && data.VM.ID === id) { + var ready = "" + if (ready_status_gate) { + ready = (data.VM.USER_TEMPLATE && data.VM.USER_TEMPLATE.READY == "YES") + ? '' + : '' + } ips = OpenNebulaVM.ipsStr(data.VM); if (OpenNebulaVM.isVNCSupported(data.VM)) { @@ -231,7 +240,7 @@ define(function(require) { actions += rdp ? OpenNebulaVM.buttonRDP(rdp.IP, data.VM) : ""; } - roleVms[index] = rowInfoRoleVm(id, name, uname, gname, ips, actions); + roleVms[index] = rowInfoRoleVm(ready, id, name, uname, gname, ips, actions); } promises.push(promiseVmInfo(id, successCallback)) @@ -262,8 +271,9 @@ define(function(require) { }); } - function rowInfoRoleVm(id, name = "", uname = "", gname = "", ips = "", actions = "") { + function rowInfoRoleVm(ready, id, name = "", uname = "", gname = "", ips = "", actions = "") { return [ + ready, '', ''+ id +'', diff --git a/src/sunstone/public/app/tabs/oneflow-services-tab/panels/roles/roleInfo.hbs b/src/sunstone/public/app/tabs/oneflow-services-tab/panels/roles/roleInfo.hbs index 997eefd350..9ff886e254 100644 --- a/src/sunstone/public/app/tabs/oneflow-services-tab/panels/roles/roleInfo.hbs +++ b/src/sunstone/public/app/tabs/oneflow-services-tab/panels/roles/roleInfo.hbs @@ -50,6 +50,7 @@ +