1 <!-- /* Copyright 2016-2017, Huawei Technologies Co., Ltd.
\r
3 * Licensed under the Apache License, Version 2.0 (the "License");
\r
4 * you may not use this file except in compliance with the License.
\r
5 * You may obtain a copy of the License at
\r
7 * http://www.apache.org/licenses/LICENSE-2.0
\r
9 * Unless required by applicable law or agreed to in writing, software
\r
10 * distributed under the License is distributed on an "AS IS" BASIS,
\r
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
12 * See the License for the specific language governing permissions and
\r
13 * limitations under the License.
\r
20 <meta charset="UTF-8">
\r
22 <link href="css/bootstrap.min.css" rel="stylesheet"/>
\r
23 <link href="css/VMMain.css" rel="stylesheet"/>
\r
24 <script type="text/javascript" src="js/jquery-1.11.2.min.js"></script>
\r
25 <script type="text/javascript" src="js/bootstrap.min.js"></script>
\r
26 <script type="text/javascript" src="js/rest.js"></script>
\r
29 $(document).ready(function () {
\r
31 $("#dashboard").hide();
\r
32 $("#nfvo_dashboard").hide()
\r
33 $("#overDiv").hide();
\r
34 $("#underDiv").hide();
\r
36 var serviceId = getQueryStringValue("serviceId");
\r
37 var serviceType = getQueryStringValue("serviceType");
\r
39 console.log("serviceId : " + serviceId);
\r
44 if("SSAR" === serviceType)
\r
46 object.nodeType = "sdn"
\r
47 jsonData[0] = object;
\r
49 else if("NSAR" == serviceType || "NFAR" == serviceType || "NFVO" == serviceType)
\r
51 object.nodeType = "nfv";
\r
52 jsonData[0] = object;
\r
55 jsonData = loadServiceDetails(serviceId);
\r
60 //TODO check for the type and update the tab
\r
61 console.log("jsonData length: " + jsonData.length);
\r
62 /* for (i = 0; i < jsonData.length; i++) {
\r
63 // console.log("jsonData Name: " + jsonData[i].nodeType);
\r
64 if (jsonData[i].nodeType.indexOf('sdn') != -1) {
\r
65 //$("#sdnoLink").text(jsonData[i].name.toUpperCase());
\r
66 console.log("Adding Accordian to SDNO");
\r
67 $("#accordion").append(addAccordionData("sdno", "SDNO"));
\r
69 else if (jsonData[i].nodeType.indexOf('gso') != -1) {
\r
70 console.log("Adding Accordian to GSO");
\r
71 $("#accordion").append(addAccordionData("gso", "GSO"));
\r
73 else if (jsonData[i].nodeType.indexOf('nfv') != -1) {
\r
74 console.log("Adding Accordian to NFVO");
\r
75 $("#accordion").append(addAccordionData("nfvo", "NFVO"));
\r
82 $("#overlayContObj").attr('data', 'overlayvpn.html?serviceId='+serviceId);
\r
83 $("#underlayContObj").attr('data', 'underlayvpn.html?serviceId='+serviceId);
\r
85 $("#nfvoContObj").attr('data', 'lcm_detail_nfvo_nodesinfo.html?serviceId='+serviceId);
\r
89 $("#dashboard").show();
\r
90 $("#overDiv").show();
\r
91 $("#underDiv").hide();
\r
94 function fnUnder() {
\r
95 $("#dashboard").show();
\r
96 $("#overDiv").hide();
\r
97 $("#underDiv").show();
\r
101 $("#dashboard").hide();
\r
104 function fnLoadTblData(el, panelType) {
\r
105 console.log("panelType of "+el.id+" is "+panelType);
\r
106 var current = document.querySelector('.selected');
\r
108 current.classList.remove('selected');
\r
110 el.classList.add('selected');
\r
111 switch (panelType) {
\r
113 $("#nfvo_dashboard").hide();
\r
114 if(el.id == "overLink") {
\r
115 $("#dashboard").show();
\r
116 $("#overDiv").show();
\r
117 $("#underDiv").hide();
\r
118 } else if(el.id == "underLink"){
\r
119 $("#dashboard").show();
\r
120 $("#overDiv").hide();
\r
121 $("#underDiv").show();
\r
123 $("#dashboard").hide();
\r
124 $("#overDiv").hide();
\r
125 $("#underDiv").hide();
\r
129 $("#dashboard").hide();
\r
130 $("#nfvo_dashboard").hide();
\r
131 $("#overDiv").hide();
\r
132 $("#underDiv").hide();
\r
135 $("#dashboard").hide();
\r
136 $("#nfvo_dashboard").show();
\r
137 $("#overDiv").hide();
\r
138 $("#underDiv").hide();
\r
144 function getQueryStringValue(key) {
\r
145 var params = new URLSearchParams(window.location.search.slice(1));
\r
146 return params.get(key);
\r
149 function addAccordionData(type, text) {
\r
151 content += '<div class="panel panel-default"><div class="panel-heading">';
\r
152 content += '<h4 class="panel-title">';
\r
153 content += '<a style="text-decoration:none;" data-toggle="collapse" data-parent="#accordion" href="#collapseOne_'+type+'" onClick="fnLoadTblData(this, \''+type+'\');">';
\r
154 content += '<span id="sdnoLink">'+text+'</span></a>';
\r
155 content += '</h4></div>';
\r
156 if(type == "sdno") {
\r
157 content += '<div id="collapseOne_' + type + '" class="panel-collapse collapse in">';
\r
159 content += '<div id="collapseOne_' + type + '" class="panel-collapse collapse">';
\r
161 content += '<ul class="list-group">';
\r
163 if(type == "sdno") {
\r
164 content += '<li onClick="fnLoadTblData(this, \''+type+'\');" id="overLink" class="list-group-item selected"><span class="glyphicon glyphicon-pencil text-primary"></span><span>Overlay VPN</span>';
\r
165 content += '</li>';
\r
166 content += '<li id="underLink" onClick="fnLoadTblData(this, \''+type+'\');" class="list-group-item"><span class="glyphicon glyphicon-pencil text-primary"></span><span>Underlay VPN</span>';
\r
167 content += '</li>';
\r
169 else if(type == "gso"){
\r
170 content += '<li onClick="fnLoadTblData(this, \''+type+'\');" id="linkgso" class="list-group-item"><span class="glyphicon glyphicon-pencil text-primary"></span><span>OPEN-O</span></li>';
\r
172 else if(type == "nfvo"){
\r
173 //content += '<li onClick="fnLoadTblData(this, \''+type+'\');" id="linknfvo" class="list-group-item"><span class="glyphicon glyphicon-pencil text-primary"></span><span>ZTE</span></li>';
\r
175 content += '</ul></div></div>';
\r
185 .panel-heading:hover {
\r
186 border: 1px solid #4ac9ff;
\r
199 #accordion .glyphicon {
\r
200 margin-right: 10px;
\r
203 .panel-collapse > .list-group .list-group-item:first-child {
\r
204 border-top-right-radius: 0;
\r
205 border-top-left-radius: 0;
\r
208 .panel-collapse > .list-group .list-group-item {
\r
209 border-width: 1px 0;
\r
212 .panel-collapse > .list-group {
\r
216 .panel-collapse .list-group-item {
\r
220 .panel-collapse .list-group .list-group {
\r
225 .panel-collapse .list-group-item li.list-group-item {
\r
227 border-top: 1px solid #ddd !important;
\r
229 padding-left: 30px;
\r
232 .panel-collapse .list-group-item li.list-group-item:last-child {
\r
236 .panel-collapse div.list-group div.list-group {
\r
240 .panel-collapse div.list-group .list-group a.list-group-item {
\r
241 border-top: 1px solid #ddd !important;
\r
243 padding-left: 30px;
\r
246 .panel-collapse .list-group-item li.list-group-item {
\r
247 border-top: 1px solid #DDD !important;
\r
251 /*background-color: #ddd;*/
\r
255 display: inline-block;
\r
263 <div class="col-sm-3" style="width:18%; padding-right: 0;">
\r
264 <div class="panel-group" id="accordion">
\r
265 <!--<div class="panel panel-default">
\r
266 <div class="panel-heading">
\r
267 <h4 class="panel-title">
\r
268 <a style="text-decoration:none;" data-toggle="collapse" data-parent="#accordion" href="#collapseOne">
\r
269 <span id="sdnoLink">SDNO1223</span></a>
\r
272 <div id="collapseOne" class="panel-collapse collapse in">
\r
273 <ul class="list-group">
\r
274 <li onClick="fnOver();" id="overLink" class="list-group-item"><span class="glyphicon glyphicon-pencil text-primary"></span><span>Overlay VPN</span>
\r
277 <li id="underLink" onClick="fnUnder();" class="list-group-item"><span class="glyphicon glyphicon-pencil text-primary"></span><span>Underlay VPN</span>
\r
284 <div class="panel panel-default">
\r
285 <div class="panel-heading">
\r
286 <h4 class="panel-title">
\r
287 <a style="text-decoration:none;" data-toggle="collapse" data-parent="#accordion" href="#collapseFour">
\r
291 <div id="collapseFour" class="panel-collapse collapse">
\r
292 <div class="list-group">
\r
293 <li onClick="clZte();" id="underLink" class="list-group-item"><span class="glyphicon glyphicon-pencil text-primary"></span><span>ZTE</span>
\r
303 <div class="col-sm-3" style="width:82%; padding: 0;">
\r
304 <div id="dashboard" class="panel panel-default">
\r
305 <div class="panel-heading">
\r
306 <h3 class="panel-title">SDNO-VPN Manager</h3>
\r
308 <div class="panel-body" style="height: 250px; overflow: auto; padding: 0; background-color: #fafafa">
\r
311 <!--<iframe src="overlayvpn.html" style="width:100%;height:450px;" name="targetframe"
\r
312 allowTransparency="true" scrolling="no" frameborder="0">
\r
314 <object id="overlayContObj" data="overlayvpn.html" width="100%" height="450px" type="text/html">
\r
318 <div id="underDiv">
\r
319 <!--<iframe src="underlayvpn.html" style="width:100%;height:500px;" name="targetframe"
\r
320 allowTransparency="true" scrolling="no" frameborder="0">
\r
322 <object id="underlayContObj" data="underlayvpn.html" width="100%" height="450px" type="text/html">
\r
330 <div id="nfvo_dashboard" class="panel panel-default">
\r
331 <div class="panel-heading">
\r
332 <h3 class="panel-title">NFVO</h3>
\r
334 <div class="panel-body" style="height: 250px; overflow: auto; padding: 0; background-color: #fafafa">
\r
335 <div id="nodesInfo">
\r
336 <object id="nfvoContObj" data="lcm_detail_nfvo_nodesinfo.html" width="100%" height="450px" type="text/html">
\r