/* * 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. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ var vm = avalon.define({ $id: "tmNodesController", instanceId: "", $language: { "sProcessing": " " + $.i18n.prop("nfv-nso-iui-table-sProcess") + "", "sLengthMenu": $.i18n.prop("nfv-nso-iui-table-sLengthMenu"), "sZeroRecords": $.i18n.prop("nfv-nso-iui-table-sZeroRecords"), "sInfo": " " + $.i18n.prop("nfv-nso-iui-table-sInfo"), "sInfoEmpty": $.i18n.prop("nfv-nso-iui-table-sInfoEmpty"), "sGroupActions": $.i18n.prop("nfv-nso-iui-table-sGroupActions"), "sAjaxRequestGeneralError": $.i18n.prop("nfv-nso-iui-table-sAjaxRequestGeneralError"), "sEmptyTable": $.i18n.prop("nfv-nso-iui-table-sEmptyTable"), "oPaginate": { "sPrevious": $.i18n.prop("nfv-nso-iui-table-sPrevious"), "sNext": $.i18n.prop("nfv-nso-iui-table-sNext"), "sPage": $.i18n.prop("nfv-nso-iui-table-sPage"), "sPageOf": $.i18n.prop("nfv-nso-iui-table-sPageOf") } }, $restUrl: { queryNodeInstanceUrl: "/openoapi/nslcm/v1.0/ns/" }, $init: function () { vm.$initInstanceData(); }, $initInstanceData: function () { $.ajax({ type: "GET", url: vm.$restUrl.queryNodeInstanceUrl, success: function (resp) { if (resp) { vm.servicesInstanceData = [ resp.nsName, resp.description, resp.nsdId, resp.nsState ]; var tableData = [ [resp.vnfInfoId, 'vnf'], [resp.vlInfo.vldId, 'vl'], [resp.vnffgInfo.vnffgInstanceId, 'vnffg'] ]; vm.$initNfvNodesTab(); vm.nodesList.nodesData = tableData; vm.nodesList.$initNodesTable(); } }, error: function () { commonUtil.showMessage($.i18n.prop("nfv-topology-iui-message-error"), "danger"); } }); }, servicesInstanceData: [], $nodesTabId: "ict_nodes_template_table", $nodesInstanceTabFields: {// table columns table: [ {"mData": "serviceInstanceId", name: "ID", "bVisible": false}, {"mData": "", name: "", "sClass": 'details-control'}, {"mData": "serviceName", name: "Service Name"}, {"mData": "serviceDescription", name: "Service Description"}, {"mData": "nsdId", name: "NSD ID"}, {"mData": "status", name: "Status"} ] }, $initNfvNodesTab: function () { var setting = {}; setting.language = vm.$language; setting.paginate = true; setting.info = true; setting.columns = vm.$nodesInstanceTabFields.table; setting.tableId = vm.$nodesTabId; vm.$initDataTable(setting, vm.$nodesTabId + '_div', vm.servicesInstanceData); $('#' + vm.$nodesTabId + '>tbody').on("click", 'td.details-control', function () { var tr = $(this).closest('tr'); var table = $('#' + vm.$nodesTabId).dataTable(); if (table.fnIsOpen(tr[0])) { table.fnClose(tr[0]); tr.removeClass('shown'); } else { table.fnOpen(tr[0], vm.nodesList.$format_Detail(), 'details'); tr.addClass('shown'); } }); }, $initDataTable: function (setting, divId, tableData) { //transform colomn var column = setting.columns; //empty table $('#' + divId).children().remove(); var tableId = setting.tableId; var tableEleStr = '