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
15 $('.siteDeleteImg').click(function () {
\r
16 var data = $(this).parent().parent().parent().find('td:last').find('div:last').html();
\r
18 var jsonObj = JSON.parse(data);
\r
19 for (var i = 0; i < jsonObj.length; i++) {
\r
20 var obj = jsonObj[i];
\r
21 var rowData = [obj.tpName, obj.peName, obj.vlanId, obj.siteCidr, obj.ip];
\r
22 $('#underlayTpDataTable').DataTable();
\r
23 $('#underlayTpDataTable').dataTable().fnAddData(rowData);
\r
29 function deleteSite(objectId) {
\r
30 var requestUrl = "/openoapi/sdnobrs/v1/sites/" + objectId;
\r
35 contentType: "application/json",
\r
36 success: function (jsonobj) {
\r
37 $('#site').bootstrapTable('remove', {
\r
41 alert("Delete Site successfull !!!");
\r
43 error: function (xhr, ajaxOptions, thrownError) {
\r
44 alert("Error on deleting site: " + xhr.responseText);
\r
48 function deleteLink(objectId) {
\r
49 var requestUrl = "/openoapi/sdnobrs/v1/topological-links/" + objectId;
\r
54 contentType: "application/json",
\r
55 success: function (jsonobj) {
\r
56 $('#link').bootstrapTable('remove', {
\r
60 alert("Delete Link successfull !!!");
\r
62 error: function (xhr, ajaxOptions, thrownError) {
\r
63 alert("Error on deleting link : " + xhr.responseText);
\r
68 function deleteNe(objectId) {
\r
69 var requestUrl = "/openoapi/sdnobrs/v1/managed-elements/" + objectId;
\r
74 contentType: "application/json",
\r
75 success: function (jsonobj) {
\r
76 $('#ne').bootstrapTable('remove', {
\r
80 alert("Delete NE successfull !!!");
\r
82 error: function (xhr, ajaxOptions, thrownError) {
\r
83 alert("Error on deleting ne : " + xhr.responseText);
\r
88 function deletePort(objectId) {
\r
89 var requestUrl = "/openoapi/sdnobrs/v1/logical-termination-points/" + objectId;
\r
94 contentType: "application/json",
\r
95 success: function (jsonobj) {
\r
96 $('#port').bootstrapTable('remove', {
\r
100 alert("Delete Port successfull !!!");
\r
102 error: function (xhr, ajaxOptions, thrownError) {
\r
103 alert("Error on deleting port : " + xhr.responseText);
\r
107 function loadSiteData() {
\r
108 var requestUrl = "/openoapi/sdnobrs/v1/sites";
\r
113 contentType: "application/json",
\r
114 success: function (jsonobj) {
\r
115 $('#site').bootstrapTable({
\r
116 data: jsonobj.sites
\r
119 error: function (xhr, ajaxOptions, thrownError) {
\r
120 alert("Error on getting site data : " + xhr.responseText);
\r
124 function loadLinkData() {
\r
125 var requestUrl = "/openoapi/sdnobrs/v1/topological-links";
\r
130 contentType: "application/json",
\r
131 success: function (jsonobj) {
\r
132 $('#link').bootstrapTable({
\r
133 data: jsonobj.topologicalLinks
\r
136 error: function (xhr, ajaxOptions, thrownError) {
\r
137 alert("Error on getting link data : " + xhr.responseText);
\r
141 function loadNeData() {
\r
143 var requestUrl = "/openoapi/sdnobrs/v1/managed-elements";
\r
148 contentType: "application/json",
\r
149 success: function (jsonobj) {
\r
151 var nedata = jsonobj.managedElements;
\r
153 neMap = loadControllerData();
\r
154 /*$.each(nedata,function(k,v){
\r
158 $('#ne').bootstrapTable({
\r
161 $('#ne').bootstrapTable('refresh');
\r
164 error: function (xhr, ajaxOptions, thrownError) {
\r
165 alert("Error on getting ne data : " + xhr.responseText);
\r
169 function loadPortData() {
\r
170 var requestUrl = "/openoapi/sdnobrs/v1/logical-termination-points";
\r
175 contentType: "application/json",
\r
176 success: function (jsonobj) {
\r
177 $('#port').bootstrapTable({
\r
178 data: jsonobj.logicalTerminationPoints
\r
181 error: function (xhr, ajaxOptions, thrownError) {
\r
182 alert("Error on getting port data : " + xhr.responseText);
\r
186 function loadControllerData() {
\r
188 var requestUrl = "/openoapi/extsys/v1/sdncontrollers";
\r
193 contentType: "application/json",
\r
194 success: function (jsonobj) {
\r
196 neMap = fillSelect(jsonobj);
\r
199 error: function (xhr, ajaxOptions, thrownError) {
\r
200 alert("Error on getting controller data : " + xhr.responseText);
\r
205 function fillSelect(str){
\r
207 if(typeof str === 'object'){
\r
211 json = eval('(' + str + ')');
\r
213 var seleObj = $('#controller')
\r
214 seleObj.find("option").remove();
\r
216 for(var i=0;i < json.length;i++){
\r
217 seleObj.append('<option value="'+json[i].sdnControllerId+'">'+json[i].name+'</option>');
\r
218 neMap[json[i].sdnControllerId] = json[i].name;
\r
223 $('.creat-btn').click(function () {
\r
224 $('#vmAppDialog').addClass('in').css({'display': 'block'});
\r
227 $('.close,.button-previous').click(function () {
\r
228 $('#vmAppDialog').removeClass('in').css('display', 'none');
\r
230 $('.detail-top ul li').click(function () {
\r
231 $(this).addClass('current').siblings().removeClass('current');
\r
233 $('.para').click(function () {
\r
234 if ($('#serviceTemplateName').val() == '') {
\r
235 alert('Please choose the service templet!');
\r
236 $('#flavorTab').css('display', 'none');
\r
238 $('#flavorTab').css('display', 'block');
\r
240 $('#basicTab').css('display', 'block');
\r
242 $('.basic').click(function () {
\r
243 $('#flavorTab').css('display', 'none');
\r
246 $('.table tbody tr').click(function () {
\r
247 $(this).addClass('openoTable_row_selected').siblings().removeClass('openoTable_row_selected');
\r
249 $('.table tr:odd').addClass('active');
\r
250 $('#false').click(function () {
\r
251 loadControllerData();
\r
252 $('#vmAppDialog').addClass('in').css({'display': 'block'});
\r
254 $('.close,.button-previous').click(function () {
\r
255 $('#vmAppDialog').removeClass('in').css('display', 'none');
\r
257 $('#filterTpLogicalType').click(function () {
\r
258 $('#filterTpLogicalType_select_popupcontainer').toggleClass('openo-hide');
\r
259 $('#filterTpLogicalType').toggleClass('openo-focus');
\r
260 var oLeft = $('#open_base_tpL_td6').offset().left;
\r
261 var oTop = $('#open_base_tpL_td6').offset().top;
\r
262 var oHeight = $('#open_base_tpL_td6').height();
\r
263 $('#filterTpLogicalType_select_popupcontainer').css({'left': oLeft, 'top': oTop + oHeight + 10});
\r
265 $('div.openo-select-popup-container>div.openo-select-item>label').click(function () {
\r
266 var Lvalue = $(this).html();
\r
267 $('#filterTpLogicalType_select_input').attr('value', Lvalue);
\r
268 $('#filterTpLogicalType_select_popupcontainer').addClass('openo-hide');
\r
269 $('#filterTpLogicalType').removeClass('openo-focus');
\r
271 $.fn.serializeObject = function () {
\r
273 var a = this.serializeArray();
\r
274 $.each(a, function () {
\r
275 if (o[this.name] !== undefined) {
\r
276 if (!o[this.name].push) {
\r
277 o[this.name] = [o[this.name]];
\r
279 o[this.name].push(this.value || '');
\r
281 o[this.name] = this.value || '';
\r
286 $('#createSite').click(function () {
\r
287 var formData = JSON.stringify($("#vmAppForm").serializeObject());
\r
288 var jsonobj = JSON.parse(formData);
\r
289 var newJson = {"site": jsonobj};
\r
290 formData = JSON.stringify(newJson);
\r
291 var requestUrl = "/openoapi/sdnobrs/v1/sites";
\r
296 contentType: "application/json",
\r
299 success: function (jsonResp) {
\r
300 alert("Site saved successfully!!!");
\r
301 jsonobj["id"] = jsonResp.site.id;
\r
302 $('#site').bootstrapTable("append", jsonobj);
\r
303 $('#vmAppDialog').removeClass('in').css('display', 'none');
\r
305 error: function (xhr, ajaxOptions, thrownError) {
\r
306 alert("Error on page : " + xhr.responseText);
\r
311 $('#createNe').click(function () {
\r
312 var formData = JSON.stringify($("#neForm").serializeObject());
\r
313 var jsonobj = JSON.parse(formData);
\r
314 var controllerIDs = [] ;
\r
315 controllerIDs[0]= jsonobj.controller;
\r
316 jsonobj.controllerID = controllerIDs;
\r
317 var newJson = {"managedElement": jsonobj};
\r
318 formData = JSON.stringify(newJson);
\r
319 var requestUrl = "/openoapi/sdnobrs/v1/managed-elements";
\r
324 contentType: "application/json",
\r
327 success: function (jsonResp) {
\r
328 alert("NE saved successfully!!!");
\r
329 jsonobj["id"] = jsonResp.managedElement.id;
\r
330 $('#ne').bootstrapTable("append", jsonobj);
\r
331 $('#vmAppDialog').removeClass('in').css('display', 'none');
\r
334 error: function (xhr, ajaxOptions, thrownError) {
\r
335 alert("Error on page : " + xhr.responseText);
\r
340 $('#createPort').click(function () {
\r
341 var formData = JSON.stringify($("#portForm").serializeObject());
\r
342 var jsonobj = JSON.parse(formData);
\r
343 var newJson = {"logicalTerminationPoint": jsonobj};
\r
344 formData = JSON.stringify(newJson);
\r
345 var requestUrl = "/openoapi/sdnobrs/v1/logical-termination-points";
\r
350 contentType: "application/json",
\r
353 success: function (jsonResp) {
\r
354 alert("Port saved successfully!!!");
\r
356 jsonobj["id"] = jsonResp.logicalTerminationPoint.id;
\r
357 $('#port').bootstrapTable("append", jsonobj);
\r
358 $('#vmAppDialog').removeClass('in').css('display', 'none');
\r
361 error: function (xhr, ajaxOptions, thrownError) {
\r
362 alert("Error on page : " + xhr.responseText);
\r
367 $('#createLink').click(function () {
\r
368 var formData = JSON.stringify($("#linkForm").serializeObject());
\r
369 var jsonobj = JSON.parse(formData);
\r
370 var newJson = {"topologicalLink": jsonobj};
\r
371 formData = JSON.stringify(newJson);
\r
372 var requestUrl = "/openoapi/sdnobrs/v1/topological-links";
\r
377 contentType: "application/json",
\r
380 success: function (jsonResp) {
\r
381 alert("Link saved successfully!!!");
\r
382 jsonobj["id"] = jsonResp.topologicalLink.id;
\r
383 $('#link').bootstrapTable("append", jsonobj);
\r
384 $('#vmAppDialog').removeClass('in').css('display', 'none');
\r
387 error: function (xhr, ajaxOptions, thrownError) {
\r
388 alert("Error on page : " + xhr.responseText);
\r