2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
20 angular.module("abs").controller('clFaultController', function($scope, $window, PolicyAppService, modalService, $modal, Notification){
23 $scope.savebutton = true;
24 $scope.finalPath = null;
26 if($scope.temp.policy.triggerTrapSignatures == undefined){
27 $scope.temp.policy.triggerTrapSignatures = [];
28 $scope.temp.policy.triggerfaultSignatures = [];
30 var trapCollection = [];
31 var faultCollection = [];
32 if($scope.varbindDictionaryDatas == undefined){
33 $scope.varbindDictionaryDatas = [];
36 $scope.init = function(data){
37 if(data != undefined && $scope.temp.policy.triggerTrapSignatures.length == 0){
38 $scope.jsonData = data;
39 if($scope.jsonData.triggerSignaturesUsedForUI != null){
40 if($scope.jsonData.triggerSignaturesUsedForUI.signatures != null){
41 $scope.temp.policy.triggerTrapSignatures = {Trap1 : [], Trap2 : [], Trap3 : [], Trap4 : [], Trap5 : [], Trap6 : []};
42 var splitTraps = $scope.jsonData.triggerSignaturesUsedForUI.signatures.split("#!?!");
43 if(splitTraps.length > 1){
44 $scope.triggerdisabled = false;
45 var indexId = "Trap1";
46 trapCollection.push(indexId);
47 $scope.temp.policy.triggerTrapSignatures[indexId.replace(/['"]+/g, '')] = [];
48 $scope.temp.policy.traptriggerSignatures.push({'id':'Trap'+1});
49 var splitTrap1 = splitTraps[0];
50 var splitEachTrap = splitTrap1.split("#!");
51 for(i = 0 ; i < splitEachTrap.length; i++){
52 var splitEachRow = splitEachTrap[i].split("@!");
54 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
55 var notBox = splitEachRow[0];
56 var trigger1 = splitEachRow[1];
57 var operatorBox = splitEachRow[2];
58 var trigger2 = splitEachRow[3];
61 var trigger1 = splitEachRow[0];
62 var operatorBox = splitEachRow[1];
63 var trigger2 = splitEachRow[2];
65 $scope.varbindDictionaryDatas.push('A'+count);
66 $scope.temp.policy.triggerTrapSignatures["Trap1"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
69 if(splitTraps.length > 2){
70 var indexId = "Trap2";
71 trapCollection.push(indexId);
72 $scope.temp.policy.triggerTrapSignatures[indexId.replace(/['"]+/g, '')] = [];
73 $scope.temp.policy.traptriggerSignatures.push({'id':'Trap'+2});
74 var splitTrap1 = splitTraps[1];
75 var splitEachTrap = splitTrap1.split("#!");
76 for(i = 0 ; i < splitEachTrap.length; i++){
77 var splitEachRow = splitEachTrap[i].split("@!");
79 if(splitEachRow[0] == 'NOT' || splitEachRow[0] == ''){
80 var notBox = splitEachRow[0];
81 var trigger1 = splitEachRow[1];
82 var operatorBox = splitEachRow[2];
83 var trigger2 = splitEachRow[3];
86 var trigger1 = splitEachRow[0];
87 var operatorBox = splitEachRow[1];
88 var trigger2 = splitEachRow[2];
90 $scope.varbindDictionaryDatas.push('A'+count);
91 $scope.temp.policy.triggerTrapSignatures["Trap2"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
94 if(splitTraps.length > 3){
95 var indexId = "Trap3";
96 trapCollection.push(indexId);
97 $scope.temp.policy.triggerTrapSignatures[indexId.replace(/['"]+/g, '')] = [];
98 $scope.temp.policy.traptriggerSignatures.push({'id':'Trap'+3});
99 var splitTrap1 = splitTraps[2];
100 var splitEachTrap = splitTrap1.split("#!");
101 for(i = 0 ; i < splitEachTrap.length; i++){
102 var splitEachRow = splitEachTrap[i].split("@!");
104 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
105 var notBox = splitEachRow[0];
106 var trigger1 = splitEachRow[1];
107 var operatorBox = splitEachRow[2];
108 var trigger2 = splitEachRow[3];
111 var trigger1 = splitEachRow[0];
112 var operatorBox = splitEachRow[1];
113 var trigger2 = splitEachRow[2];
115 $scope.varbindDictionaryDatas.push('A'+count);
116 $scope.temp.policy.triggerTrapSignatures["Trap3"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
119 if(splitTraps.length > 4){
120 var indexId = "Trap4";
121 trapCollection.push(indexId);
122 $scope.temp.policy.triggerTrapSignatures[indexId.replace(/['"]+/g, '')] = [];
123 $scope.temp.policy.traptriggerSignatures.push({'id':'Trap'+4});
124 var splitTrap1 = splitTraps[3];
125 var splitEachTrap = splitTrap1.split("#!");
126 for(i = 0 ; i < splitEachTrap.length; i++){
127 var splitEachRow = splitEachTrap[i].split("@!");
129 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
130 var notBox = splitEachRow[0];
131 var trigger1 = splitEachRow[1];
132 var operatorBox = splitEachRow[2];
133 var trigger2 = splitEachRow[3];
136 var trigger1 = splitEachRow[0];
137 var operatorBox = splitEachRow[1];
138 var trigger2 = splitEachRow[2];
140 $scope.varbindDictionaryDatas.push('A'+count);
141 $scope.temp.policy.triggerTrapSignatures["Trap4"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
144 if(splitTraps.length > 5){
145 var indexId = "Trap5";
146 trapCollection.push(indexId);
147 $scope.temp.policy.triggerTrapSignatures[indexId.replace(/['"]+/g, '')] = [];
148 $scope.temp.policy.traptriggerSignatures.push({'id':'Trap'+5});
149 var splitTrap1 = splitTraps[4];
150 var splitEachTrap = splitTrap1.split("#!");
151 for(i = 0 ; i < splitEachTrap.length; i++){
152 var splitEachRow = splitEachTrap[i].split("@!");
154 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
155 var notBox = splitEachRow[0];
156 var trigger1 = splitEachRow[1];
157 var operatorBox = splitEachRow[2];
158 var trigger2 = splitEachRow[3];
161 var trigger1 = splitEachRow[0];
162 var operatorBox = splitEachRow[1];
163 var trigger2 = splitEachRow[2];
165 $scope.varbindDictionaryDatas.push('A'+count);
166 $scope.temp.policy.triggerTrapSignatures["Trap5"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
169 if(splitTraps.length > 6){
170 var indexId = "Trap6";
171 trapCollection.push(indexId);
172 $scope.temp.policy.triggerTrapSignatures[indexId.replace(/['"]+/g, '')] = [];
173 $scope.temp.policy.traptriggerSignatures.push({'id':'Trap'+6});
174 var splitTrap1 = splitTraps[5];
175 var splitEachTrap = splitTrap1.split("#!");
176 for(i = 0 ; i < splitEachTrap.length; i++){
177 var splitEachRow = splitEachTrap[i].split("@!");
179 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
180 var notBox = splitEachRow[0];
181 var trigger1 = splitEachRow[1];
182 var operatorBox = splitEachRow[2];
183 var trigger2 = splitEachRow[3];
186 var trigger1 = splitEachRow[0];
187 var operatorBox = splitEachRow[1];
188 var trigger2 = splitEachRow[2];
190 $scope.varbindDictionaryDatas.push('A'+count);
191 $scope.temp.policy.triggerTrapSignatures["Trap6"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
194 if($scope.jsonData.triggerSignaturesUsedForUI.connectSignatures != null){
195 var splitConnectTraps = $scope.jsonData.triggerSignaturesUsedForUI.connectSignatures.split("#!?!");
196 for(i=0; i < splitConnectTraps.length; i++){
197 if(splitConnectTraps[i] != ""){
198 var newConnectTrapItemNo = i+1;
199 var connects = splitConnectTraps[i].split("@!");
200 if(connects[0] == 'NOT' || connects[0] ==''){
201 var notBox = connects[0];
202 var connectTrap1 = connects[1];
203 var trapCount1 = connects[2];
204 var operatorBox = connects[3];
205 var connectTrap2 = connects[4];
206 var trapCount2 = connects[5];
209 var connectTrap1 = connects[0];
210 var trapCount1 = connects[1];
211 var operatorBox = connects[2];
212 var connectTrap2 = connects[3];
213 var trapCount2 = connects[4];
215 $scope.temp.policy.connecttriggerSignatures.push({'id':'C'+newConnectTrapItemNo,'notBox' : notBox , 'connectTrap1': connectTrap1,'trapCount1' : trapCount1,
216 'operatorBox': operatorBox, 'connectTrap2': connectTrap2,'trapCount2' : trapCount2});
222 if($scope.jsonData.verificationSignaturesUsedForUI != null){
223 if($scope.jsonData.verificationSignaturesUsedForUI.signatures != null){
224 $scope.temp.policy.triggerfaultSignatures = {Fault1 : [], Fault2 : [], Fault3 : [], Fault4 : [], Fault5 : [], Fault6 : [],};
225 var splitTraps = $scope.jsonData.verificationSignaturesUsedForUI.signatures.split("#!?!");
226 if(splitTraps.length > 1){
227 $scope.verificationdisabled = false;
228 var indexId = "Fault1";
229 faultCollection.push(indexId);
230 $scope.temp.policy.triggerfaultSignatures[indexId.replace(/['"]+/g, '')] = [];
231 $scope.temp.policy.faulttriggerSignatures.push({'id':'Fault'+1});
232 var splitTrap1 = splitTraps[0];
233 var splitEachTrap = splitTrap1.split("#!");
234 for(i = 0 ; i < splitEachTrap.length; i++){
235 var splitEachRow = splitEachTrap[i].split("@!");
237 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
238 var notBox = splitEachRow[0];
239 var trigger1 = splitEachRow[1];
240 var operatorBox = splitEachRow[2];
241 var trigger2 = splitEachRow[3];
244 var trigger1 = splitEachRow[0];
245 var operatorBox = splitEachRow[1];
246 var trigger2 = splitEachRow[2];
248 $scope.varbindDictionaryDatas.push('A'+count);
249 $scope.temp.policy.triggerfaultSignatures["Fault1"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
252 if(splitTraps.length > 2){
253 var indexId = "Fault2";
254 faultCollection.push(indexId);
255 $scope.temp.policy.triggerfaultSignatures[indexId.replace(/['"]+/g, '')] = [];
256 $scope.temp.policy.faulttriggerSignatures.push({'id':'Fault'+2});
257 var splitTrap1 = splitTraps[1];
258 var splitEachTrap = splitTrap1.split("#!");
259 for(i = 0 ; i < splitEachTrap.length; i++){
260 var splitEachRow = splitEachTrap[i].split("@!");
262 if(splitEachRow[0] == 'NOT' || splitEachRow[0] == ''){
263 var notBox = splitEachRow[0];
264 var trigger1 = splitEachRow[1];
265 var operatorBox = splitEachRow[2];
266 var trigger2 = splitEachRow[3];
269 var trigger1 = splitEachRow[0];
270 var operatorBox = splitEachRow[1];
271 var trigger2 = splitEachRow[2];
273 $scope.varbindDictionaryDatas.push('A'+count);
274 $scope.temp.policy.triggerfaultSignatures["Fault2"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
277 if(splitTraps.length > 3){
278 var indexId = "Fault3";
279 faultCollection.push(indexId);
280 $scope.temp.policy.triggerfaultSignatures[indexId.replace(/['"]+/g, '')] = [];
281 $scope.temp.policy.faulttriggerSignatures.push({'id':'Fault'+3});
282 var splitTrap1 = splitTraps[2];
283 var splitEachTrap = splitTrap1.split("#!");
284 for(i = 0 ; i < splitEachTrap.length; i++){
285 var splitEachRow = splitEachTrap[i].split("@!");
287 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
288 var notBox = splitEachRow[0];
289 var trigger1 = splitEachRow[1];
290 var operatorBox = splitEachRow[2];
291 var trigger2 = splitEachRow[3];
294 var trigger1 = splitEachRow[0];
295 var operatorBox = splitEachRow[1];
296 var trigger2 = splitEachRow[2];
298 $scope.varbindDictionaryDatas.push('A'+count);
299 $scope.temp.policy.triggerfaultSignatures["Fault3"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
302 if(splitTraps.length > 4){
303 var indexId = "Fault4";
304 faultCollection.push(indexId);
305 $scope.temp.policy.triggerfaultSignatures[indexId.replace(/['"]+/g, '')] = [];
306 $scope.temp.policy.faulttriggerSignatures.push({'id':'Fault'+4});
307 var splitTrap1 = splitTraps[3];
308 var splitEachTrap = splitTrap1.split("#!");
309 for(i = 0 ; i < splitEachTrap.length; i++){
310 var splitEachRow = splitEachTrap[i].split("@!");
312 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
313 var notBox = splitEachRow[0];
314 var trigger1 = splitEachRow[1];
315 var operatorBox = splitEachRow[2];
316 var trigger2 = splitEachRow[3];
319 var trigger1 = splitEachRow[0];
320 var operatorBox = splitEachRow[1];
321 var trigger2 = splitEachRow[2];
323 $scope.varbindDictionaryDatas.push('A'+count);
324 $scope.temp.policy.triggerfaultSignatures["Fault4"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
327 if(splitTraps.length > 5){
328 var indexId = "Fault5";
329 faultCollection.push(indexId);
330 $scope.temp.policy.triggerfaultSignatures[indexId.replace(/['"]+/g, '')] = [];
331 $scope.temp.policy.faulttriggerSignatures.push({'id':'Fault'+5});
332 var splitTrap1 = splitTraps[4];
333 var splitEachTrap = splitTrap1.split("#!");
334 for(i = 0 ; i < splitEachTrap.length; i++){
335 var splitEachRow = splitEachTrap[i].split("@!");
337 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
338 var notBox = splitEachRow[0];
339 var trigger1 = splitEachRow[1];
340 var operatorBox = splitEachRow[2];
341 var trigger2 = splitEachRow[3];
344 var trigger1 = splitEachRow[0];
345 var operatorBox = splitEachRow[1];
346 var trigger2 = splitEachRow[2];
348 $scope.varbindDictionaryDatas.push('A'+count);
349 $scope.temp.policy.triggerfaultSignatures["Fault5"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
352 if(splitTraps.length > 6){
353 var indexId = "Fault6";
354 faultCollection.push(indexId);
355 $scope.temp.policy.triggerfaultSignatures[indexId.replace(/['"]+/g, '')] = [];
356 $scope.temp.policy.faulttriggerSignatures.push({'id':'Fault'+6});
357 var splitTrap1 = splitTraps[5];
358 var splitEachTrap = splitTrap1.split("#!");
359 for(i = 0 ; i < splitEachTrap.length; i++){
360 var splitEachRow = splitEachTrap[i].split("@!");
362 if(splitEachRow[0] == 'NOT' || splitEachRow[0] ==''){
363 var notBox = splitEachRow[0];
364 var trigger1 = splitEachRow[1];
365 var operatorBox = splitEachRow[2];
366 var trigger2 = splitEachRow[3];
369 var trigger1 = splitEachRow[0];
370 var operatorBox = splitEachRow[1];
371 var trigger2 = splitEachRow[2];
373 $scope.varbindDictionaryDatas.push('A'+count);
374 $scope.temp.policy.triggerfaultSignatures["Fault6"].push({'id':'A'+count, 'notBox' : notBox , 'trigger1': trigger1 , 'operatorBox' : operatorBox, 'trigger2': trigger2});
378 if($scope.jsonData.verificationSignaturesUsedForUI.connectSignatures != null){
379 var splitConnectTraps = $scope.jsonData.verificationSignaturesUsedForUI.connectSignatures.split("#!?!");
380 for(i=0; i < splitConnectTraps.length; i++){
381 if(splitConnectTraps[i] != ""){
382 var newConnectTrapItemNo = i+1;
383 var connects = splitConnectTraps[i].split("@!");
384 if(connects[0] == 'NOT' || connects[0] ==''){
385 var notBox = connects[0];
386 var connectTrap1 = connects[1];
387 var trapCount1 = connects[2];
388 var operatorBox = connects[3];
389 var connectTrap2 = connects[4];
390 var trapCount2 = connects[5];
393 var connectTrap1 = connects[0];
394 var trapCount1 = connects[1];
395 var operatorBox = connects[2];
396 var connectTrap2 = connects[3];
397 var trapCount2 = connects[4];
399 $scope.temp.policy.connectVerificationSignatures.push({'id':'C'+newConnectTrapItemNo,'notBox' : notBox , 'connectTrap1': connectTrap1,'trapCount1' : trapCount1,
400 'operatorBox': operatorBox, 'connectTrap2': connectTrap2,'trapCount2' : trapCount2});
410 if($scope.temp.policy.readOnly){
411 $scope.triggerdisabled = true;
412 $scope.verificationdisabled = true;
414 $scope.triggerdisabled = false;
415 $scope.verificationdisabled = false;
419 PolicyAppService.getData('getDictionary/get_EcompNameDataByName').then(function (data) {
421 $scope.data = JSON.parse(j.data);
422 console.log($scope.data);
423 $scope.ecompNameDictionaryDatas = JSON.parse($scope.data.ecompNameDictionaryDatas);
424 console.log($scope.ecompNameDictionaryDatas);
425 }, function (error) {
426 console.log("failed");
429 PolicyAppService.getData('getDictionary/get_PEPOptionsDataByName').then(function (data) {
431 $scope.data = JSON.parse(j.data);
432 console.log($scope.data);
433 $scope.pepOptionsDictionaryDatas = JSON.parse($scope.data.pepOptionsDictionaryDatas);
434 console.log($scope.pepOptionsDictionaryDatas);
435 }, function (error) {
436 console.log("failed");
439 PolicyAppService.getData('getDictionary/get_PEPOptionsData').then(function (data) {
441 $scope.data = JSON.parse(j.data);
442 console.log($scope.data);
443 $scope.pepOptionsDictionaryDataEntity = JSON.parse($scope.data.pepOptionsDictionaryDatas);
444 console.log($scope.pepOptionsDictionaryDataEntity);
445 }, function (error) {
446 console.log("failed");
449 PolicyAppService.getData('getDictionary/get_VarbindDictionaryDataByName').then(function (data) {
451 $scope.data = JSON.parse(j.data);
452 console.log($scope.data);
453 $scope.varbindDictionaryDatas = JSON.parse($scope.data.varbindDictionaryDatas);
454 console.log($scope.varbindDictionaryDatas);
455 }, function (error) {
456 console.log("failed");
459 PolicyAppService.getData('getDictionary/get_VNFTypeDataByName').then(function (data) {
461 $scope.data = JSON.parse(j.data);
462 console.log($scope.data);
463 $scope.vnfTypeDictionaryDatas = JSON.parse($scope.data.vnfTypeDictionaryDatas);
464 console.log($scope.vnfTypeDictionaryDatas);
465 }, function (error) {
466 console.log("failed");
469 PolicyAppService.getData('getDictionary/get_VSCLActionDataByName').then(function (data) {
471 $scope.data = JSON.parse(j.data);
472 console.log($scope.data);
473 $scope.vsclActionDictionaryDatas = JSON.parse($scope.data.vsclActionDictionaryDatas);
474 console.log($scope.vsclActionDictionaryDatas);
475 }, function (error) {
476 console.log("failed");
479 PolicyAppService.getData('getDictionary/get_RiskTypeDataByName').then(function (data) {
481 $scope.data = JSON.parse(j.data);
482 console.log($scope.data);
483 $scope.riskTypeDictionaryDatas = JSON.parse($scope.data.riskTypeDictionaryDatas);
484 console.log($scope.riskTypeDictionaryDatas);
485 }, function (error) {
486 console.log("failed");
489 $scope.pepActionDictionaryDatas = [];
491 $scope.getPepActionValues = function(pepOptionValue){
492 for (var i = 0; i < $scope.pepOptionsDictionaryDataEntity.length; ++i) {
493 var obj = $scope.pepOptionsDictionaryDataEntity[i];
494 if (obj.pepName == pepOptionValue){
495 var splitAlarm = obj.actions.split(':#@');
496 for (var j = 0; j < splitAlarm.length; ++j) {
497 $scope.pepActionDictionaryDatas.push(splitAlarm[j].split('=#@')[0]);
503 $scope.saveFaultPolicy = function(policy){
505 $scope.savebutton = false;
508 if($scope.temp.policy.triggerTrapSignatures.length == 1 || $scope.temp.policy.triggerTrapSignatures["Trap1"] != null){
509 var data = {trap1 : $scope.temp.policy.triggerTrapSignatures.Trap1 }
511 if($scope.temp.policy.triggerTrapSignatures.length == 2 || $scope.temp.policy.triggerTrapSignatures["Trap2"] != null){
512 var data = {trap1 : $scope.temp.policy.triggerTrapSignatures.Trap1, trap2 : $scope.temp.policy.triggerTrapSignatures.Trap2}
514 if($scope.temp.policy.triggerTrapSignatures.length == 3 || $scope.temp.policy.triggerTrapSignatures["Trap3"] != null){
515 var data = {trap1 : $scope.temp.policy.triggerTrapSignatures.Trap1, trap2 : $scope.temp.policy.triggerTrapSignatures.Trap2,
516 trap2 : $scope.temp.policy.triggerTrapSignatures.Trap3}
518 if($scope.temp.policy.triggerTrapSignatures.length == 4 || $scope.temp.policy.triggerTrapSignatures["Trap4"] != null){
519 var data = {trap1 : $scope.temp.policy.triggerTrapSignatures.Trap1, trap2 : $scope.temp.policy.triggerTrapSignatures.Trap2,
520 trap3 : $scope.temp.policy.triggerTrapSignatures.Trap3, trap4 : $scope.temp.policy.triggerTrapSignatures.Trap4}
522 if($scope.temp.policy.triggerTrapSignatures.length == 5 || $scope.temp.policy.triggerTrapSignatures["Trap5"] != null){
523 var data = {trap1 : $scope.temp.policy.triggerTrapSignatures.Trap1, trap2 : $scope.temp.policy.triggerTrapSignatures.Trap2,
524 trap3 : $scope.temp.policy.triggerTrapSignatures.Trap3, trap4 : $scope.temp.policy.triggerTrapSignatures.Trap4,
525 trap5 : $scope.temp.policy.triggerTrapSignatures.Trap5}
527 if($scope.temp.policy.triggerTrapSignatures.length == 6 || $scope.temp.policy.triggerTrapSignatures["Trap6"] != null){
528 var data = {trap1 : $scope.temp.policy.triggerTrapSignatures.Trap1, trap2 : $scope.temp.policy.triggerTrapSignatures.Trap2,
529 trap3 : $scope.temp.policy.triggerTrapSignatures.Trap3, trap4 : $scope.temp.policy.triggerTrapSignatures.Trap4,
530 trap5 : $scope.temp.policy.triggerTrapSignatures.Trap5, trap6 : $scope.temp.policy.triggerTrapSignatures.Trap6}
533 if($scope.temp.policy.triggerfaultSignatures.length == 1 || $scope.temp.policy.triggerfaultSignatures["Fault1"] != null){
534 var faultData = {trap1 : $scope.temp.policy.triggerfaultSignatures.Fault1 }
536 if($scope.temp.policy.triggerfaultSignatures.length == 2 || $scope.temp.policy.triggerfaultSignatures["Fault2"] != null){
537 var faultData = {trap1 : $scope.temp.policy.triggerfaultSignatures.Fault1, trap2 : $scope.temp.policy.triggerfaultSignatures.Fault2}
539 if($scope.temp.policy.triggerfaultSignatures.length == 3 || $scope.temp.policy.triggerfaultSignatures["Fault3"] != null){
540 var faultData = {trap1 : $scope.temp.policy.triggerfaultSignatures.Fault1, trap2 : $scope.temp.policy.triggerfaultSignatures.Fault2,
541 trap2 : $scope.temp.policy.triggerfaultSignatures.Fault3}
543 if($scope.temp.policy.triggerTrapSignatures.length == 4 || $scope.temp.policy.triggerfaultSignatures["Fault4"] != null){
544 var faultData = {trap1 : $scope.temp.policy.triggerfaultSignatures.Fault1, trap2 : $scope.temp.policy.triggerfaultSignatures.Fault2,
545 trap3 : $scope.temp.policy.triggerfaultSignatures.Fault3, trap4 : $scope.temp.policy.triggerfaultSignatures.Fault4}
547 if($scope.temp.policy.triggerfaultSignatures.length == 5 || $scope.temp.policy.triggerfaultSignatures["Fault5"] != null){
548 var faultData = {trap1 : $scope.temp.policy.triggerfaultSignatures.Fault1, trap2 : $scope.temp.policy.triggerfaultSignatures.Fault2,
549 trap3 : $scope.temp.policy.triggerfaultSignatures.Fault3, trap4 : $scope.temp.policy.triggerfaultSignatures.Fault4,
550 trap5 : $scope.temp.policy.triggerfaultSignatures.Fault5}
552 if($scope.temp.policy.triggerfaultSignatures.length == 6 || $scope.temp.policy.triggerfaultSignatures["Fault6"] != null){
553 var faultData = {trap1 : $scope.temp.policy.triggerfaultSignatures.Fault1, trap2 : $scope.temp.policy.triggerfaultSignatures.Fault2,
554 trap3 : $scope.temp.policy.triggerfaultSignatures.Fault3, trap4 : $scope.temp.policy.triggerfaultSignatures.Fault4,
555 trap5 : $scope.temp.policy.triggerfaultSignatures.Fault5, trap6 : $scope.temp.policy.triggerfaultSignatures.Fault6}
557 var uuu = "policycreation/save_policy";
558 var postData={policyData: policy,
560 faultData : faultData
566 contentType: 'application/json',
567 data: JSON.stringify(postData),
568 success : function(data){
569 $scope.$apply(function(){
570 $scope.data=data.policyData;
571 if($scope.data == 'success'){
572 $scope.temp.policy.readOnly = 'true';
573 $scope.pushStatus=data.policyData.split("&")[1];
574 if($scope.pushStatus=="successPush"){
575 Notification.success("Policy pushed successfully");
577 $scope.triggerdisabled = true;
578 $scope.verificationdisabled = true;
579 Notification.success("Policy Saved Successfully.");
580 }else if ($scope.data == 'PolicyExists'){
581 $scope.savebutton = true;
582 Notification.error("Policy Already Exists with Same Name in Scope.");
585 console.log($scope.data);
587 error : function(data){
588 Notification.error("Error Occured while saving Policy.");
593 $scope.validatePolicy = function(policy){
595 document.getElementById("validate").innerHTML = "";
596 var uuu = "policyController/validate_policy.htm";
597 var postData={policyData: policy};
602 contentType: 'application/json',
603 data: JSON.stringify(postData),
604 success : function(data){
605 $scope.$apply(function(){
606 $scope.validateData = data.data.replace(/\"/g, "");
607 $scope.data=data.data.substring(1,8);
608 var size = data.data.length;
609 if($scope.data == 'success'){
610 Notification.success("Validation Success.");
611 $scope.savebutton = false;
613 var displayWarning = data.data.substring(19,size);
614 document.getElementById("validate").innerHTML = "Safe Policy Warning Message : "+displayWarning;
615 document.getElementById("validate").style.color = "white";
616 document.getElementById("validate").style.backgroundColor = "skyblue";
619 Notification.error("Validation Failed.");
620 document.getElementById("validate").innerHTML = $scope.validateData;
621 document.getElementById("validate").style.color = "white";
622 document.getElementById("validate").style.backgroundColor = "red";
623 $scope.savebutton = true;
627 console.log($scope.data);
629 error : function(data){
630 Notification.error("Validation Failed.");
631 $scope.savebutton = true;
635 if($scope.connectTriggerTrapsList == undefined){
636 $scope.connectTriggerTrapsList = [];
638 if($scope.temp.policy.traptriggerSignatures == undefined){
639 $scope.temp.policy.traptriggerSignatures = [];
643 $scope.TriggerSignatureDatas = [{"triggerSignatures" : $scope.temp.policy.traptriggerSignatures}];
644 $scope.addTriggerButton = function() {
645 $scope.triggerdisabled = false;
646 var newItemNo = $scope.temp.policy.traptriggerSignatures.length+1;
647 $scope.ItemNo = newItemNo;
648 $scope.temp.policy.traptriggerSignatures.push({'id':'Trap'+newItemNo});
649 $scope.connectTriggerTrapsList.push('Trap'+newItemNo);
651 $scope.removeTriggerButton = function() {
652 var lastItem = $scope.temp.policy.traptriggerSignatures.length-1;
653 $scope.temp.policy.traptriggerSignatures.splice(lastItem);
654 $scope.connectTriggerTrapsList.splice('Trap'+lastItem);
658 $scope.trapItemNo = 0;
659 $scope.TrapTriggerSignatureDatas = [{"triggermainSignatures" : $scope.temp.policy.triggerTrapSignatures}];
660 $scope.addTrapTriggerButton = function(indexId) {
661 if(trapCollection.indexOf(indexId) !== -1){
664 $scope.temp.policy.triggerTrapSignatures[indexId] = [];
665 trapCollection.push(indexId);
667 var newTrapItemNo = $scope.temp.policy.triggerTrapSignatures[indexId].length+1;
668 $scope.trapItemNo = newTrapItemNo;
669 $scope.temp.policy.triggerTrapSignatures.push($scope.temp.policy.triggerTrapSignatures[indexId].push({'id':'A'+newTrapItemNo}));
670 if(newTrapItemNo > 1){
671 var count = newTrapItemNo-1;
672 $scope.varbindDictionaryDatas.push('A'+count);
675 $scope.removeTrapTriggerButton = function(indexId) {
676 var lastTrapItem = $scope.temp.policy.triggerTrapSignatures[indexId].length-1;
677 var checkLastTrapItem = lastTrapItem;
678 if(checkLastTrapItem == 0){
679 trapCollection.splice(indexId);
681 $scope.temp.policy.triggerTrapSignatures[indexId].splice(lastTrapItem);
684 if($scope.temp.policy.connecttriggerSignatures == undefined){
685 $scope.temp.policy.connecttriggerSignatures = [];
688 $scope.connecttrapItemNo = 0;
689 $scope.TrapConnectTriggerSignatureDatas = [{"connecttriggerSignatures" : $scope.temp.policy.connecttriggerSignatures}];
690 $scope.addTriggerConnectButton = function() {
691 var newConnectTrapItemNo = $scope.temp.policy.connecttriggerSignatures.length+1;
692 $scope.connecttrapItemNo = newConnectTrapItemNo;
693 $scope.temp.policy.connecttriggerSignatures.push({'id':'C'+newConnectTrapItemNo});
694 if(newConnectTrapItemNo >1){
695 var count = newConnectTrapItemNo-1;
696 $scope.connectTriggerTrapsList.push('C'+count);
699 $scope.removeTriggerConnectButton = function() {
700 var lastConnectTrapItem = $scope.temp.policy.connecttriggerSignatures.length-1;
701 $scope.temp.policy.connecttriggerSignatures.splice(lastConnectTrapItem);
702 if(lastConnectTrapItem < 1){
703 var count = lastConnectTrapItem-1;
704 $scope.connectTriggerTrapsList.splice('C'+count);
707 if($scope.connectTriggerFaultsList == undefined){
708 $scope.connectTriggerFaultsList = [];
710 if($scope.temp.policy.faulttriggerSignatures == undefined){
711 $scope.temp.policy.faulttriggerSignatures = [];
714 $scope.FaultItemNo = 0;
715 $scope.FaultSignatureDatas = [{"verificationmainSignatures" : $scope.temp.policy.faulttriggerSignatures}];
716 $scope.addVerFaultButton = function() {
717 var newFaultItemNo = $scope.temp.policy.faulttriggerSignatures.length+1;
718 $scope.FaultItemNo = newFaultItemNo;
719 $scope.temp.policy.faulttriggerSignatures.push({'id':'Fault'+newFaultItemNo});
720 $scope.connectTriggerFaultsList.push('Fault'+newFaultItemNo);
722 $scope.removeVerFaultButton = function() {
723 var lastFaultItem = $scope.temp.policy.faulttriggerSignatures.length-1;
724 $scope.temp.policy.faulttriggerSignatures.splice(lastFaultItem);
725 $scope.connectTriggerFaultsList.splice('Fault'+lastFaultItem);
727 if($scope.temp.policy.triggerfaultSignatures == undefined){
728 $scope.temp.policy.triggerfaultSignatures = [];
731 $scope.faultItemNo1 = 0;
732 $scope.FaultTriggerSignatureDatas = [{"verificationSignatures" : $scope.temp.policy.triggerfaultSignatures}];
733 $scope.addVerTriggerButton = function(indexId) {
734 $scope.verificationdisabled = false;
735 if(faultCollection.indexOf(indexId) !== -1){
738 $scope.temp.policy.triggerfaultSignatures[indexId] = [];
739 faultCollection.push(indexId);
741 var newFaultItemNo1 = $scope.temp.policy.triggerfaultSignatures[indexId].length+1;
742 $scope.faultItemNo1 = newFaultItemNo1;
743 $scope.temp.policy.triggerfaultSignatures.push($scope.temp.policy.triggerfaultSignatures[indexId].push({'id':'A'+newFaultItemNo1}));
744 if(newFaultItemNo1 > 1){
745 var count = newFaultItemNo1-1;
746 $scope.varbindDictionaryDatas.push('A'+count);
749 $scope.removeVerTriggerButton = function(indexId) {
750 var lastFaultItem1 = $scope.temp.policy.triggerfaultSignatures[indexId].length-1;
751 var checkLastFaultItem = lastFaultItem1;
752 if(checkLastFaultItem == 0){
753 faultCollection.splice(indexId);
755 $scope.temp.policy.triggerfaultSignatures[indexId].splice(lastFaultItem1);
758 if($scope.temp.policy.connectVerificationSignatures == undefined){
759 $scope.temp.policy.connectVerificationSignatures = [];
762 $scope.connectFaultItemNo = 0;
763 $scope.FaultConnectTriggerSignatureDatas = [{"connectVerificationSignatures" : $scope.temp.policy.connectVerificationSignatures}];
764 $scope.addFaultConnectButton = function() {
765 var newConnectFaultItemNo = $scope.temp.policy.connectVerificationSignatures.length+1;
766 $scope.connectFaultItemNo = newConnectFaultItemNo;
767 $scope.temp.policy.connectVerificationSignatures.push({'id':'C'+newConnectFaultItemNo});
768 if(newConnectFaultItemNo >1){
769 var count = newConnectFaultItemNo-1;
770 $scope.connectTriggerFaultsList.push('C'+count);
773 $scope.removeFaultConnectButton = function() {
774 var lastConnectFaultItem = $scope.temp.policy.connectVerificationSignatures.length-1;
775 $scope.temp.policy.connectVerificationSignatures.splice(lastConnectFaultItem);
776 if(lastConnectFaultItem < 1){
777 var count = lastConnectFaultItem-1;
778 $scope.connectTriggerFaultsList.splice('C'+count);