diff --git a/src/sunstone/public/app/tabs/oneflow-services-tab.js b/src/sunstone/public/app/tabs/oneflow-services-tab.js index 2072516925..846d63807c 100644 --- a/src/sunstone/public/app/tabs/oneflow-services-tab.js +++ b/src/sunstone/public/app/tabs/oneflow-services-tab.js @@ -12,6 +12,7 @@ define(function(require) { ]; var _panels = [ + require('./oneflow-services-tab/panels/info') ]; var _formPanels = [ diff --git a/src/sunstone/public/app/tabs/oneflow-services-tab/panels/info.js b/src/sunstone/public/app/tabs/oneflow-services-tab/panels/info.js new file mode 100644 index 0000000000..7d31986ca3 --- /dev/null +++ b/src/sunstone/public/app/tabs/oneflow-services-tab/panels/info.js @@ -0,0 +1,61 @@ +define(function(require) { + /* + DEPENDENCIES + */ + + var Locale = require('utils/locale'); + var PermissionsTable = require('utils/panel/permissions-table'); + var OpenNebulaService = require('opennebula/service'); + + /* + TEMPLATES + */ + + var TemplateHTML = require('hbs!./info/html'); + + /* + CONSTANTS + */ + + var TAB_ID = require('../tabId'); + var PANEL_ID = require('./info/panelId'); + var XML_ROOT = "DOCUMENT"; + var RESOURCE = "Service"; + + /* + CONSTRUCTOR + */ + + function Panel(info) { + this.title = Locale.tr("Info"); + this.icon = "fa-info-circle"; + + this.element = info[XML_ROOT]; + + return this; + } + + Panel.PANEL_ID = PANEL_ID; + Panel.prototype.html = _html; + Panel.prototype.setup = _setup; + + return Panel; + + /* + FUNCTION DEFINITIONS + */ + + function _html() { + var permissionsTableHTML = PermissionsTable.html(TAB_ID, RESOURCE, this.element); + + return TemplateHTML({ + 'element': this.element, + 'permissionsTableHTML': permissionsTableHTML, + 'stateStr': OpenNebulaService.state(this.element.TEMPLATE.BODY.state) + }); + } + + function _setup(context) { + PermissionsTable.setup(TAB_ID, RESOURCE, this.element, context); + } +}); diff --git a/src/sunstone/public/app/tabs/oneflow-services-tab/panels/info/html.hbs b/src/sunstone/public/app/tabs/oneflow-services-tab/panels/info/html.hbs new file mode 100644 index 0000000000..41f3bb76b5 --- /dev/null +++ b/src/sunstone/public/app/tabs/oneflow-services-tab/panels/info/html.hbs @@ -0,0 +1,46 @@ +
{{tr "Information"}} | +||
---|---|---|
{{tr "ID"}} | +{{element.ID}} | +|
{{tr "Name"}} | +{{element.NAME}} | +|
{{tr "Strategy"}} | +{{element.TEMPLATE.BODY.deployment}} | +|
{{tr "Shutdown action"}} | ++ {{valOrDefault element.TEMPLATE.BODY.shutdown_action "-"}} + | +|
{{tr "State"}} | +{{stateStr}} | +|
{{tr "Ready Status Gate"}} | ++ {{#if element.TEMPLATE.BODY.ready_status_gate}} + {{tr "yes"}} + {{else}} + {{tr "no"}} + {{/if}} + | +