summaryrefslogtreecommitdiffstats
path: root/openo-portal/portal-catalog/src/main/webapp/catalog/js/template/tmDetailController.js
diff options
context:
space:
mode:
Diffstat (limited to 'openo-portal/portal-catalog/src/main/webapp/catalog/js/template/tmDetailController.js')
-rw-r--r--openo-portal/portal-catalog/src/main/webapp/catalog/js/template/tmDetailController.js298
1 files changed, 160 insertions, 138 deletions
diff --git a/openo-portal/portal-catalog/src/main/webapp/catalog/js/template/tmDetailController.js b/openo-portal/portal-catalog/src/main/webapp/catalog/js/template/tmDetailController.js
index ee490385..2401d314 100644
--- a/openo-portal/portal-catalog/src/main/webapp/catalog/js/template/tmDetailController.js
+++ b/openo-portal/portal-catalog/src/main/webapp/catalog/js/template/tmDetailController.js
@@ -1,5 +1,5 @@
-/**
- * Copyright 2016 [ZTE] and others.
+/*
+ * Copyright 2016 ZTE Corporation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -13,16 +13,16 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
var vm = avalon.define({
- $id: "tmDetailController",
- templateId: "",
- templateData: [
+ $id : "tmDetailController",
+ templateId : "",//store the Id of service template which shows in Topology tab page
+ globalNodesData: {},//store the nodes data which shows in Topology tab page
+ templateData : [
{href: "#topology", name: "Topology", value: true},
{href: "#nodes", name: "Nodes", value: false}
],
$language: {
- "sProcessing": "<img src='../component/thirdparty/data-tables/images/loading-spinner-grey.gif'/><span>&nbsp;&nbsp;"
+ "sProcessing": "<img src='../common/thirdparty/data-tables/images/loading-spinner-grey.gif'/><span>&nbsp;&nbsp;"
+ $.i18n.prop("nfv-nso-iui-table-sProcess") + "</span>",
"sLengthMenu": $.i18n.prop("nfv-nso-iui-table-sLengthMenu"),
"sZeroRecords": $.i18n.prop("nfv-nso-iui-table-sZeroRecords"),
@@ -71,43 +71,19 @@ var vm = avalon.define({
url: vm.$restUrl.queryNodeTemplateUrl,
success: function (resp) {
if (resp) {
- vm.nodesTab.nodesDetail.nodesTemplateDetailData = [];
+ vm.nodesDetail.nodesTemplateDetailData = [];
+ var nodesTempData = [];
for (var i = 0; i < resp.length; i++) {
//generate node table display data
var nodeTemplate = topoUtil.generateNodeTemplate(resp[i]);
- vm.nodesTab.nodesList.nodesData.push(nodeTemplate);
+ nodesTempData.push(nodeTemplate);
}
- vm.nodesTab.nodesDetail.nodesTemplateDetailData = resp;
+ vm.globalNodesData[vm.templateId] = nodesTempData;
//generate topology graph display data
- vm.topologyTab.topoTemplateData = topoUtil.generateTopoTemplate(vm.nodesTab.nodesList.nodesData.$model);
+ vm.nodesDetail.nodesTemplateDetailData = resp;
//initialize topology data
+ vm.topologyTab.topoTemplateData = topoUtil.generateTopoTemplate(vm.globalNodesData[vm.templateId]);
topoUtil.initTopoData(vm.topologyTab.topoTemplateData.$model);
- //vm.nodesTab.nodesList.$initNodesTable();
- }
- },
- error: function () {
- commonUtil.showMessage($.i18n.prop("nfv-topology-iui-message-error"), "danger");
- }
- });
- },
- $initNodesData: function () {
- $.ajax({
- type: "GET",
- url: vm.$restUrl.queryNodeTemplateUrl,
- success: function (resp) {
- if (resp) {
- vm.nodesTab.nodesDetail.nodesTemplateDetailData = [];
- for (var i = 0; i < resp.length; i++) {
- //generate node table display data
- var nodeTemplate = topoUtil.generateNodeTemplate(resp[i]);
- vm.nodesTab.nodesList.nodesData.push(nodeTemplate);
- }
- vm.nodesTab.nodesDetail.nodesTemplateDetailData = resp;
- //generate topology graph display data
- //vm.topologyTab.topoTemplateData = topoUtil.generateTopoTemplate(vm.nodesTab.nodesList.nodesData.$model);
- //initialize topology data
- //topoUtil.initTopoData(vm.topologyTab.topoTemplateData.$model);
- vm.nodesTab.nodesList.$initNodesTable();
}
},
error: function () {
@@ -137,7 +113,7 @@ var vm = avalon.define({
topoUtil.initTopoData(vm.topologyTab.topoTemplateData.$model);
},
$showTopo: function (id, name) {
- vm.nodesTab.nodesDetail.$showDetails("block", id, name);
+ vm.topologyTab.$showTopoDetails("block", id, name);
},
$showVnfTopo: function (templateId) {
vm.topologyTab.returnBtnVisible = true;
@@ -148,7 +124,17 @@ var vm = avalon.define({
vm.topologyTab.returnBtnVisible = false;
vm.$restUrl.queryNodeTemplateUrl = "/openoapi/catalog/v1/servicetemplates/" + vm.templateId + "/nodetemplates";
vm.$init();
- }
+ },
+ $showTopoDetails: function (isShow, nodetypeid, nodetypename) {
+ vm.nodesDetail.isShow = isShow;
+ if (isShow == "block") {
+ vm.nodesDetail.detailTitle = nodetypename + " " + $.i18n.prop("nfv-templateDetail-nodesTab-iui-title-nodeDetail"),
+ $('#' + vm.nodesDetail.detailData[0].id).click();
+ vm.nodesDetail.detailData[0].isActive = true;
+ vm.nodesDetail.$initTopoNodesDetailTable(nodetypeid);
+ }
+ },
+
},
nodesTab: {
servicesTemplateData: [],
@@ -162,9 +148,6 @@ var vm = avalon.define({
{"mData": "version", name: $.i18n.prop("nfv-template-iui-field-version")},
{"mData": "csarid", name: "packageID", "bVisible": false},
{"mData": "type", name: $.i18n.prop("nfv-template-iui-field-type")},
- //{"mData": "inputs", name: $.i18n.prop("nfv-template-iui-field-inputs"),"fnRender" : tmDetailUtil.inputsRender},
- //{"mData": "outputs", name: $.i18n.prop("nfv-template-iui-field-outputs"),"fnRender" : tmDetailUtil.outputsRender},
- //{"mData": "operations", name: $.i18n.prop("nfv-template-iui-field-operations")}
]
},
$initNfvNodesTab: function () {
@@ -186,15 +169,38 @@ var vm = avalon.define({
tr.removeClass('shown');
}
else {
- table.fnOpen(tr[0], vm.nodesTab.nodesList.$format_Detail(), 'details');
+ table.fnOpen(tr[0], vm.nodesTab.nodesList.$format_Detail(table,tr[0]), 'details');
tr.addClass('shown');
}
});
},
-
+ $initNodesData: function (tempId) {
+ $.ajax({
+ type: "GET",
+ //url: vm.$restUrl.queryNodeTemplateUrl,
+ url: "/openoapi/catalog/v1/servicetemplates/" + tempId + "/nodetemplates",
+ success: function (resp) {
+ if (resp) {
+ var nodesTempData = [];
+ for (var i = 0; i < resp.length; i++) {
+ //generate node table display data
+ var nodeTemplate = topoUtil.generateNodeTemplate(resp[i]);
+ nodesTempData.push(nodeTemplate);
+ }
+ vm.nodesTab.nodesList.nodesData[tempId] = nodesTempData;
+ //generate topology graph display data
+ vm.nodesTab.nodesList.$initNodesTable(tempId);
+ }
+ },
+ error: function () {
+ commonUtil.showMessage($.i18n.prop("nfv-topology-iui-message-error"), "danger");
+ }
+ });
+ },
//nodes list table
nodesList: {
- nodesData: [],
+ nodesData: {},
+ tempId:"",
$nodesTabDataId: "ict_nodes_table",
$nodesTabFields: {// table columns
table: [
@@ -228,115 +234,132 @@ var vm = avalon.define({
}
]
},
- $initNodesTable: function () {
+ $initNodesTable: function (tempId) {
var setting = {};
setting.language = vm.$language;
setting.paginate = true;
setting.info = true;
//setting.sort = true;
setting.columns = vm.nodesTab.nodesList.$nodesTabFields.table;
- setting.restUrl = vm.$restUrl.queryNodeTemplateUrl;
- setting.tableId = vm.nodesTab.nodesList.$nodesTabDataId;
+ setting.restUrl = "/openoapi/catalog/v1/servicetemplates/" + tempId + "/nodetemplates";
+ setting.tableId = vm.nodesTab.nodesList.$nodesTabDataId + "_" + tempId;
//serverPageTable.initTableWithData(setting,vm.nodesTab.nodesList.$nodesTabDataId + '_div',vm.nodesTab.nodesList.nodesData.$model);
- serverPageTable.initTableWithoutLib(setting, {}, vm.nodesTab.nodesList.$nodesTabDataId + '_div');
+ serverPageTable.initTableWithoutLib(setting, {}, setting.tableId + '_div');
},
- $format_Detail: function () {
- var sOut = '<div class="row-fluid" data-name="table_zone"><div class="col-xs-12" id="ict_nodes_table_div"></div></div>'
- vm.$initNodesData();
+ $format_Detail: function (oTable, nTr) {
+ var aData = oTable.fnGetData(nTr);
+ var tempId = aData.serviceTemplateId;
+ vm.nodesTab.nodesList.tempId = tempId;
+ var tableId = "ict_nodes_table" + "_" + tempId + "_div";
+ var sOut = '<div class="row-fluid" data-name="table_zone"><div class="col-xs-12" id="'+tableId+'"></div></div>'
+ vm.nodesTab.$initNodesData(tempId);
return sOut;
},
},
- //Nodes Details
- nodesDetail: {
- nodesTemplateDetailData: [],
- detailTitle: "",
- isShow: "none",
- detailIndex: 0,
- detailData: [
- {id: "general", name: $.i18n.prop("nfv-templateDetail-nodesTab-iui-tab-general"), isActive: true},
+ },
+ //Nodes Details
+ nodesDetail: {
+ nodesTemplateDetailData: [], //used in topo tab page to show node detail
+ detailTitle: "",
+ isShow: "none",
+ detailIndex: 0,
+ detailData: [
+ {id: "general", name: $.i18n.prop("nfv-templateDetail-nodesTab-iui-tab-general"), isActive: true},
+ {
+ id: "properties",
+ name: $.i18n.prop("nfv-templateDetail-nodesTab-iui-tab-properties"),
+ isActive: false
+ },
+ {
+ id: "relationShips",
+ name: $.i18n.prop("nfv-templateDetail-nodesTab-iui-tab-relationShips"),
+ isActive: false
+ }
+ ],
+ $showDetails: function (isShow, nodetypeid, nodetypename,tempId) {
+ vm.nodesDetail.isShow = isShow;
+ if (isShow == "block") {
+ vm.nodesDetail.detailTitle = nodetypename + " " + $.i18n.prop("nfv-templateDetail-nodesTab-iui-title-nodeDetail"),
+ $('#' + vm.nodesDetail.detailData[0].id).click();
+ vm.nodesDetail.detailData[0].isActive = true;
+ vm.nodesDetail.$initNodeDetailTable(nodetypeid,tempId);
+ }
+ },
+ detailCondChange: function (index) {
+ vm.nodesDetail.detailIndex = index;
+ for (var i = 0; i < vm.nodesDetail.detailData.length; i++) {
+ vm.nodesDetail.detailData[i].isActive = false;
+ }
+ vm.nodesDetail.detailData[index].isActive = true;
+ },
+ $tableFields : {// table columns
+ general: [
{
- id: "properties",
- name: $.i18n.prop("nfv-templateDetail-nodesTab-iui-tab-properties"),
- isActive: false
+ "mData": "key",
+ "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-key"),
+ "bSortable": false
},
{
- id: "relationShips",
- name: $.i18n.prop("nfv-templateDetail-nodesTab-iui-tab-relationShips"),
- isActive: false
+ "mData": "value",
+ "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-value"),
+ "bSortable": false
}
],
- $showDetails: function (isShow, nodetypeid, nodetypename) {
- vm.nodesTab.nodesDetail.isShow = isShow;
- if (isShow == "block") {
- vm.nodesTab.nodesDetail.detailTitle = nodetypename + " " + $.i18n.prop("nfv-templateDetail-nodesTab-iui-title-nodeDetail"),
- $('#' + vm.nodesTab.nodesDetail.detailData[0].id).click();
- vm.nodesTab.nodesDetail.detailData[0].isActive = true;
- vm.nodesTab.nodesDetail.$initNodeDetailTable(nodetypeid);
+ properties: [
+ {
+ "mData": "key",
+ "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-key"),
+ "bSortable": false
+ },
+ {
+ "mData": "value",
+ "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-value"),
+ "bSortable": false
}
- },
- detailCondChange: function (index) {
- vm.nodesTab.nodesDetail.detailIndex = index;
- for (var i = 0; i < vm.nodesTab.nodesDetail.detailData.length; i++) {
- vm.nodesTab.nodesDetail.detailData[i].isActive = false;
+ ],
+ relationShips: [
+ {
+ "mData": "sourceNodeName",
+ "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-sourceNodeName"),
+ "bSortable": false
+ },
+ {
+ "mData": "targetNodeName",
+ "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-targetNodeName"),
+ "bSortable": false
+ },
+ {
+ "mData": "type",
+ "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-type"),
+ "bSortable": false
}
- vm.nodesTab.nodesDetail.detailData[index].isActive = true;
- },
- $tableFields: {// table columns
- general: [
- {
- "mData": "key",
- "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-key"),
- "bSortable": false
- },
- {
- "mData": "value",
- "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-value"),
- "bSortable": false
- }
- ],
- properties: [
- {
- "mData": "key",
- "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-key"),
- "bSortable": false
- },
- {
- "mData": "value",
- "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-value"),
- "bSortable": false
- }
- ],
- relationShips: [
- {
- "mData": "sourceNodeName",
- "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-sourceNodeName"),
- "bSortable": false
- },
- {
- "mData": "targetNodeName",
- "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-targetNodeName"),
- "bSortable": false
- },
- {
- "mData": "type",
- "name": $.i18n.prop("nfv-templateDetail-nodesTab-iui-field-type"),
- "bSortable": false
- }
- ]
- },
- $initNodeDetailTable: function (nodetemplateid) {
- var data = topoUtil.getCurrentDetailData(vm.nodesTab.nodesDetail.nodesTemplateDetailData.$model, nodetemplateid);
- //initialize three tables of nodedetail
- $.each(vm.nodesTab.nodesDetail.$tableFields, function (key, value) {
- var setting = {};
- setting.language = vm.$language;
- setting.paginate = false;
- setting.info = false;
- setting.columns = value;
- setting.tableId = "ict_table_" + key;
- serverPageTable.initTableWithData(setting, setting.tableId + '_div', data[key]);
- });
- }
+ ]
+ },
+ $initNodeDetailTable: function (nodetemplateid,tempId) {
+ var data = topoUtil.getCurrentDetailData(vm.nodesTab.nodesList.nodesData[tempId], nodetemplateid);
+ //initialize three tables of nodedetail
+ $.each(vm.nodesDetail.$tableFields, function (key, value) {
+ var setting = {};
+ setting.language = vm.$language;
+ setting.paginate = false;
+ setting.info = false;
+ setting.columns = value;
+ setting.tableId = "ict_table_" + key;
+ serverPageTable.initTableWithData(setting, setting.tableId + '_div', data[key]);
+ });
+ },
+ $initTopoNodesDetailTable: function (nodetemplateid) {
+ var data = topoUtil.getCurrentDetailData(vm.nodesDetail.nodesTemplateDetailData.$model, nodetemplateid);
+ //initialize three tables of nodedetail
+ $.each(vm.nodesDetail.$tableFields, function (key, value) {
+ var setting = {};
+ setting.language = vm.$language;
+ setting.paginate = false;
+ setting.info = false;
+ setting.columns = value;
+ setting.tableId = "ict_table_" + key;
+ serverPageTable.initTableWithData(setting, setting.tableId + '_div', data[key]);
+ });
}
},
executionTab: {
@@ -383,7 +406,7 @@ var vm = avalon.define({
$init: function () {
vm.executionTab.$initEventsTable();
}
- },
+ }
});
@@ -401,7 +424,6 @@ var initParam = function () { //initialize template detail params
if (flavor) {
vm.$restUrl.queryNodeTemplateUrl += "?flavor=" + flavor;
}
-
vm.$init();
}
};