1 <div ng-controller="clFaultController">
4 <div class="form-group row">
5 <div class="form-group col-sm-6">
6 <label>Policy Name:<sup><b>*</b></sup></label> <input type="text"
7 class="form-control" ng-disabled="temp.policy.readOnly"
8 ng-readonly="temp.policy.editPolicy"
9 ng-model="temp.policy.policyName" required pattern="\S+"
10 title="Enter Policy Name without any spaces and special characters and will accept _." />
12 <div class="form-group col-sm-6">
13 <label>Description:</label> <input type="text" class="form-control"
14 ng-disabled="temp.policy.readOnly"
15 ng-model="temp.policy.policyDescription"
16 title="Description field will accept any type of data."/>
19 <div class="form-group row">
20 <div class="form-group col-sm-3">
21 <label>Risk Type:<sup><b>*</b></sup></label> <select
22 class="form-control" ng-disabled="temp.policy.readOnly"
23 ng-model="temp.policy.riskType"
24 ng-options="option for option in riskTypeDictionaryDatas track by option"
25 required pattern="\S+" title="Select the dropdown value driven from RiskType (Safe Policy)Dictionary."></select>
27 <div class="form-group col-sm-3">
28 <label>Risk Level:<sup><b>*</b></sup></label> <select
29 class="form-control" ng-disabled="temp.policy.readOnly"
30 ng-model="temp.policy.riskLevel"
31 required pattern="\S+" title="Select the dropdown Risk level value.">
36 <option>5</option></select>
38 <div class="form-group col-sm-3">
39 <label>Guard:<sup><b>*</b></sup></label> <select
40 class="form-control" ng-disabled="temp.policy.readOnly"
41 ng-model="temp.policy.guard"
42 required pattern="\S+" title="Select the dropdown Guard value.">
44 <option>False</option></select>
46 <div class="form-group col-sm-3">
47 <label>Onap Name:<sup><b>*</b></sup></label> <select
48 class="form-control" ng-disabled="temp.policy.readOnly"
49 ng-model="temp.policy.onapName"
50 ng-options="option for option in onapNameDictionaryDatas track by option"
51 required pattern="\S+" title="Select the dropdown value driven from OnapName (common)Dictionary."></select>
54 <div class="form-group row">
55 <div class="form-group col-sm-3">
56 <label>Vnf Type:<sup><b>*</b></sup></label> <select
57 class="form-control" ng-disabled="temp.policy.readOnly"
58 ng-model="temp.policy.jsonBodyData.vnfType"
59 ng-options="option for option in vnfTypeDictionaryDatas track by option"
60 title="Select the dropdown value driven from VNF Type (ClosedLoop Policy)Dictionary.">
61 <option value="">{{temp.policy.jsonBodyData.vnfType}}</option>
64 <div class="form-group col-sm-3">
65 <label>Policy Status:<sup><b>*</b></sup></label> <select
66 class="form-control" ng-disabled="temp.policy.readOnly"
67 ng-init="init(temp.policy.jsonBodyData);"
68 ng-model="temp.policy.jsonBodyData.closedLoopPolicyStatus"
69 title="Select the value from dropdown.">
70 <option value="Active">Active</option>
71 <option>InActive</option>
74 <div class="form-group col-sm-3">
75 <label>D2/Virtualized Services(s):<sup><b>*</b></sup></label><br>
76 <input type="checkbox" ng-disabled="temp.policy.readOnly"
77 ng-model="temp.policy.jsonBodyData.trinity"> Hosted Voice
78 (Trinity)</input> <input type="checkbox" ng-disabled="temp.policy.readOnly"
79 ng-model="temp.policy.jsonBodyData.vUSP"> vUSP</input> <input
80 type="checkbox" ng-disabled="temp.policy.readOnly"
81 ng-model="temp.policy.jsonBodyData.mcr"> MCR</input> <input
82 type="checkbox" ng-disabled="temp.policy.readOnly"
83 ng-model="temp.policy.jsonBodyData.gamma"> Gamma</input> <input
84 type="checkbox" ng-disabled="temp.policy.readOnly"
85 ng-model="temp.policy.jsonBodyData.vDNS"> vDNS</input>
87 <div class="form-group col-sm-3">
88 <label>Time to Live Date:</label> <input type="text" id="ttlDate"
89 class="form-control" name="ttlDate" ng-disabled="temp.policy.readOnly"
90 ng-model="temp.policy.ttlDate" title="Select the date from calender onclick on the field."/>
96 <label>Trigger Signature:</label><br>
98 <div class="form-group row">
99 <div class="form-group col-sm-1">
100 <button type="button" class="btn btn-default"
101 ng-disabled="temp.policy.readOnly" ng-click="addTriggerButton()"
102 title="onClick Trigger Signature Trap row is added.">
103 <i class="fa fa-plus"></i>
105 <button type="button" class="btn btn-default"
106 ng-disabled="temp.policy.readOnly"
107 ng-click="removeTriggerButton()"
108 title="onClick Trigger Signature Trap row is removed.">
109 <i class="fa fa-minus"></i>
113 <div class="form-group row">
114 <div data-ng-repeat="choice in temp.policy.traptriggerSignatures">
115 <div class="form-group row" style="margin-left: 2%">
116 <div class="form-group col-sm-3">
117 <label ng-model="choice.label" name="label">{{choice.id}}</label>
118 <button type="button" class="btn btn-default"
119 ng-disabled="temp.policy.readOnly"
120 ng-click="addTrapTriggerButton(choice.id)"
121 title="onClick Trap Signature row is added.">
122 <i class="fa fa-plus"></i>
124 <button type="button" class="btn btn-default"
125 ng-disabled="temp.policy.readOnly"
126 ng-click="removeTrapTriggerButton(choice.id)"
127 title="onClick Trap Signature row is removed.">
128 <i class="fa fa-minus"></i>
132 <div class="form-group row">
134 data-ng-repeat="choice in temp.policy.triggerTrapSignatures[choice.id]">
135 <div class="form-group row" style="margin-left: 4%">
136 <div class="form-group col-sm-1">
137 <label ng-model="choice.label" name="label">{{choice.id}}</label>
139 <div class="form-group col-sm-1">
140 <select class="form-control"
141 ng-disabled="temp.policy.readOnly" ng-model="choice.notBox"
142 name="notBox"><option>NOT</option></select>
144 <div class="form-group col-sm-4">
145 <select class="form-control"
146 ng-disabled="temp.policy.readOnly"
147 ng-model="choice.trigger1"
148 ng-options="option for option in varbindDictionaryDatas track by option"
149 title="Select the dropdown value driven from Varbind (ClosedLoop)Dictionary.">
150 <option value="">{{choice.trigger1}}</option>
153 <div class="form-group col-sm-1">
154 <select class="form-control"
155 ng-disabled="temp.policy.readOnly"
156 ng-model="choice.operatorBox" name="operatorBox"><option>AND</option>
157 <option>OR</option></select>
159 <div class="form-group col-sm-4">
160 <select class="form-control"
161 ng-disabled="temp.policy.readOnly"
162 ng-model="choice.trigger2"
163 ng-options="option for option in varbindDictionaryDatas track by option"
164 title="Select the dropdown value driven from Varbind (ClosedLoop)Dictionary.">
165 <option value="">{{choice.trigger2}}</option>
177 <label>Connect Traps:</label><br>
178 <div class="form-group row">
179 <div class="form-group col-sm-1">
180 <button type="button" class="btn btn-default"
181 ng-disabled="temp.policy.readOnly"
182 ng-click="addTriggerConnectButton()" title="onClick Connect Trap Trigger Signature row is added.">
183 <i class="fa fa-plus"></i>
187 <div class="form-group row">
189 data-ng-repeat="choice in temp.policy.connecttriggerSignatures">
190 <div class="form-group row" style="margin-left: 2%">
191 <div class="form-group col-sm-1">
192 <label ng-model="choice.label" name="label">{{choice.id}}</label>
194 <div class="form-group col-sm-1">
195 <select class="form-control" ng-disabled="temp.policy.readOnly"
196 ng-model="choice.notBox" name="notBox"><option>NOT</option></select>
198 <div class="form-group col-sm-1">
199 <select ng-disabled="temp.policy.readOnly"
200 ng-model="choice.connectTrap1" class="form-control"
201 ng-options="option for option in connectTriggerTrapsList track by option"
202 title="Select the traps to form rule formation.">
203 <option value="">{{choice.connectTrap1}}</option>
206 <div class="form-group col-sm-1">
207 <input type="text" ng-disabled="temp.policy.readOnly"
208 ng-model="choice.trapCount1" name="trapCount1"
209 class="form-control" />
211 <div class="form-group col-sm-1">
212 <select class="form-control" ng-disabled="temp.policy.readOnly"
213 ng-model="choice.operatorBox" name="operatorBox"><option>AND</option>
214 <option>OR</option></select>
216 <div class="form-group col-sm-1">
217 <select class="form-control" ng-disabled="temp.policy.readOnly"
218 ng-model="choice.connectTrap2"
219 ng-options="option for option in connectTriggerTrapsList track by option"
220 title="Select the traps to form rule formation.">
221 <option value="">{{choice.connectTrap2}}</option>
224 <div class="form-group col-sm-1">
225 <input type="text" ng-disabled="temp.policy.readOnly"
226 ng-model="choice.trapCount2" name="trapCount1"
227 class="form-control" />
229 <div class="form-group col-sm-1">
230 <button type="button" class="btn btn-default" ng-show="$last"
231 ng-disabled="temp.policy.readOnly"
232 ng-click="removeTriggerConnectButton()" title="onClick Connect Trap Trigger Signature row is removed.">
233 <i class="fa fa-minus"></i>
240 <div class="form-group row">
241 <div class="form-group col-sm-2">
242 <label>Clear TimeOut:
243 </label><br> <input type="text" ng-disabled="triggerdisabled"
244 ng-model="temp.policy.clearTimeOut" class="form-control" title="Enter the Cleartimeout value and the value should be numeric."/>
246 <div class="form-group col-sm-2">
247 <label>Trap Max Age:</label><br> <input
248 type="text" ng-disabled="triggerdisabled"
249 ng-model="temp.policy.trapMaxAge" class="form-control"
250 ng-init="temp.policy.jsonBodyData.trapMaxAge='300'" value="300" title="Enter the Trap Max Age value and the value should be numeric."/>
255 <div class="form-group row">
256 <label>VSCL Action:<sup><b>*</b></sup></label><br>
257 <div class="form-group col-sm-4">
258 <label>vPRO Actions:<sup><b>*</b></sup></label><br> <select
259 class="form-control" ng-disabled="temp.policy.readOnly"
260 ng-model="temp.policy.jsonBodyData.actions"
261 ng-options="option for option in vsclActionDictionaryDatas track by option"
262 title="Select the dropdown value driven from VSCL Action (ClosedLoop)Dictionary.">
263 <option value="">{{temp.policy.jsonBodyData.actions}}</option>
266 <div class="form-group col-sm-2">
267 <label>Time Interval:<sup><b>*</b></sup>
268 </label><br> <input type="text" ng-disabled="temp.policy.readOnly"
269 ng-model="temp.policy.jsonBodyData.timeInterval"
270 class="form-control" required title="Enter the Time Interval value and the value should be numeric."/>
272 <div class="form-group col-sm-2">
273 <label>App-C TimeOut:<sup><b>*</b></sup></label><br> <input
274 type="text" ng-disabled="temp.policy.readOnly"
275 ng-model="temp.policy.jsonBodyData.timeOutvPRO"
276 class="form-control" required title="Enter the App-C Timeout value and the value should be numeric."/>
278 <div class="form-group col-sm-2">
279 <label>TimeOut for Ruby:<sup><b>*</b></sup></label><br> <input
280 type="text" ng-disabled="temp.policy.readOnly"
281 ng-model="temp.policy.jsonBodyData.timeOutRuby"
282 class="form-control" required title="Enter the Timeout for Ruby value and the value should be numeric."/>
284 <div class="form-group col-sm-2">
285 <label>Number of Retries:<sup><b>*</b></sup></label><br> <input
286 type="text" ng-disabled="temp.policy.readOnly"
287 ng-model="temp.policy.jsonBodyData.retrys" class="form-control"
288 required title="Enter the Number of retries value and the value should be numeric."/>
291 <div class="form-group row">
292 <div class="form-group col-sm-4">
293 <label>Aging Window:<sup><b>*</b></sup>
294 </label><br> <input type="text" ng-disabled="temp.policy.readOnly"
295 ng-model="temp.policy.jsonBodyData.agingWindow"
296 class="form-control" required title="Enter the Aging Window value and the value should be numeric."/>
298 <div class="form-group col-sm-4">
299 <label>Text to Include in UEB messages for AOTS ticket and
300 Geo Link:</label><br> <input type="text"
301 ng-disabled="temp.policy.readOnly"
302 ng-model="temp.policy.jsonBodyData.geoLink" class="form-control"
303 required title="Enter the UEB Message value."/>
305 <div class="form-group col-sm-4">
306 <label>Email Address:</label><br> <input type="text"
307 ng-disabled="temp.policy.readOnly"
308 ng-model="temp.policy.jsonBodyData.emailAddress"
309 class="form-control" required title="Enter the email address for multiple use comma seperated value."/>
314 <div class="form-group row">
315 <label>PEP:<sup><b></b></sup></label><br>
316 <div class="form-group col-sm-3">
317 <label>PEP Options:<sup><b></b></sup></label><br> <select
318 class="form-control" ng-disabled="temp.policy.readOnly"
319 ng-model="temp.policy.jsonBodyData.pepName"
320 ng-options="option for option in pepOptionsDictionaryDatas track by option"
321 ng-change="getPepActionValues(temp.policy.jsonBodyData.pepName)"
322 title="Select the dropdown value driven from PEP Options (ClosedLoop)Dictionary.">
323 <option value="">{{temp.policy.jsonBodyData.pepName}}</option>
324 </select></select></select>
326 <div class="form-group col-sm-3">
327 <label>Actions:<sup><b></b></sup></label><br> <select
328 class="form-control" ng-disabled="temp.policy.readOnly"
329 ng-model="temp.policy.jsonBodyData.pepAction"
330 ng-options="option for option in pepActionDictionaryDatas track by option"
331 title="Select the dropdown value driven based on PEP Options selection from PEP Options (ClosedLoop)Dictionary.">
332 <option value="">{{temp.policy.jsonBodyData.pepAction}}</option>
339 <label>Verification Signature:</label><br>
341 <div class="form-group row">
342 <div class="form-group col-sm-1">
343 <button type="button" class="btn btn-default"
344 ng-disabled="temp.policy.readOnly"
345 ng-click="addVerFaultButton()"
346 title="onClick Verification Signature Fault row is added.">
347 <i class="fa fa-plus"></i>
349 <button type="button" class="btn btn-default"
350 ng-disabled="temp.policy.readOnly"
351 ng-click="removeVerFaultButton()"
352 title="onClick Verification Signature Fault row is removed.">
353 <i class="fa fa-minus"></i>
357 <div class="form-group row">
358 <div data-ng-repeat="choice in temp.policy.faulttriggerSignatures">
359 <div class="form-group row" style="margin-left: 2%">
360 <div class="form-group col-sm-3">
361 <label ng-model="choice.label" name="label">{{choice.id}}</label>
362 <button type="button" class="btn btn-default"
363 ng-disabled="temp.policy.readOnly"
364 ng-click="addVerTriggerButton(choice.id)"
365 title="onClick Fault Signature row is added.">
366 <i class="fa fa-plus"></i>
368 <button type="button" class="btn btn-default"
369 ng-disabled="temp.policy.readOnly"
370 ng-click="removeVerTriggerButton(choice.id)"
371 title="onClick Fault Signature row is removed.">
372 <i class="fa fa-minus"></i>
376 <div class="form-group row">
378 data-ng-repeat="choice in temp.policy.triggerfaultSignatures[choice.id]">
379 <div class="form-group row" style="margin-left: 4%">
380 <div class="form-group col-sm-1">
381 <label ng-model="choice.label" name="label">{{choice.id}}</label>
383 <div class="form-group col-sm-1">
384 <select class="form-control"
385 ng-disabled="temp.policy.readOnly" ng-model="choice.notBox"
386 name="notBox"><option>NOT</option></select>
388 <div class="form-group col-sm-4">
389 <select class="form-control"
390 ng-disabled="temp.policy.readOnly"
391 ng-model="choice.trigger1"
392 ng-options="option for option in varbindDictionaryDatas track by option"
393 title="Select the dropdown value driven from Varbind (ClosedLoop)Dictionary.">
394 <option value="">{{choice.trigger1}}</option>
397 <div class="form-group col-sm-1">
398 <select class="form-control"
399 ng-disabled="temp.policy.readOnly"
400 ng-model="choice.operatorBox" name="operatorBox"><option>AND</option>
401 <option>OR</option></select>
403 <div class="form-group col-sm-4">
404 <select class="form-control"
405 ng-disabled="temp.policy.readOnly"
406 ng-model="choice.trigger2"
407 ng-options="option for option in varbindDictionaryDatas track by option"
408 title="Select the dropdown value driven from Varbind (ClosedLoop)Dictionary.">
409 <option value="">{{choice.trigger2}}</option>
420 <label>Connect All Faults:</label><br>
421 <div class="form-group row">
422 <div class="form-group col-sm-1">
423 <button type="button" class="btn btn-default"
424 ng-disabled="temp.policy.readOnly"
425 ng-click="addFaultConnectButton()" title="onClick Connect Fault Verification Signature row is added.">
426 <i class="fa fa-plus"></i>
430 <div class="form-group row">
432 data-ng-repeat="choice in temp.policy.connectVerificationSignatures">
433 <div class="form-group row" style="margin-left: 2%">
434 <div class="form-group col-sm-1">
435 <label ng-model="choice.label" name="label">{{choice.id}}</label>
437 <div class="form-group col-sm-1">
438 <select class="form-control" ng-disabled="temp.policy.readOnly"
439 ng-model="choice.notBox" name="notBox"><option>NOT</option></select>
441 <div class="form-group col-sm-1">
442 <select ng-disabled="temp.policy.readOnly"
443 ng-model="choice.connectTrap1" class="form-control"
444 ng-options="option for option in connectTriggerFaultsList track by option"
445 title="Select the faults to form rule formation.">
446 <option value="">{{choice.connectTrap1}}</option>
449 <div class="form-group col-sm-1">
450 <input type="text" ng-disabled="temp.policy.readOnly"
451 ng-model="choice.trapCount1" name="trapCount1"
452 class="form-control" />
454 <div class="form-group col-sm-1">
455 <select class="form-control" ng-disabled="temp.policy.readOnly"
456 ng-model="choice.operatorBox" name="operatorBox"><option>AND</option>
457 <option>OR</option></select>
459 <div class="form-group col-sm-1">
460 <select ng-disabled="temp.policy.readOnly"
461 ng-model="choice.connectTrap2" class="form-control"
462 ng-options="option for option in connectTriggerFaultsList track by option"
463 title="Select the faults to form rule formation.">
464 <option value="">{{choice.connectTrap2}}</option>
467 <div class="form-group col-sm-1">
468 <input type="text" ng-disabled="temp.policy.readOnly"
469 ng-model="choice.trapCount2" name="trapCount1"
470 class="form-control" />
472 <div class="form-group col-sm-1">
473 <button type="button" class="btn btn-default" ng-show="$last"
474 ng-disabled="temp.policy.readOnly"
475 ng-click="removeFaultConnectButton()" title="onClick Connect Fault Verification Signature row is removed.">
476 <i class="fa fa-minus"></i>
483 <div class="form-group row">
484 <div class="form-group col-sm-2">
485 <label>Clear TimeOut:</label><br> <input
486 type="text" ng-disabled="verificationdisabled"
487 ng-disabled="temp.policy.readOnly"
488 ng-model="temp.policy.verificationclearTimeOut"
489 class="form-control" required title="Enter the Cleartimeout value and the value should be numeric."/>
495 <label>Additional Conditions: If current VM status in A&AI
496 is in Maintenance then the Control Loop will not execute the Action
497 and shall<sup><b>*</b></sup>
500 <input type="radio" ng-disabled="temp.policy.readOnly"
501 ng-model="temp.policy.jsonBodyData.conditions" name="radSize"
502 id="sizeSmall" value="SEND" checked="checked" /><label
503 for="sizeSmall">DCAE should send event notification</label> <input
504 type="radio" ng-disabled="temp.policy.readOnly"
505 ng-model="temp.policy.jsonBodyData.conditions" name="radSize"
506 id="sizeMed" value="NOTSEND" /><label for="sizeMed">DCAE
507 should not send event notification</label>
512 <div id="validate" style="width: 70%"></div>
514 <div class="modal-footer">
515 <button class="btn btn-primary" herf="javascript:void(0)"
516 ng-disabled="temp.policy.readOnly"
517 ng-click="validatePolicy(temp.policy);" title="Validate the data entered in the Policy fields.">Validate</button>
518 <button class="btn btn-success" herf="javascript:void(0)"
519 ng-disabled="savebutton" ng-disabled="temp.policy.readOnly"
520 ng-click="saveFaultPolicy(temp);" title="Save the Policy with validated data.">Save</button>
521 <button type="button" class="btn btn-default" ng-click="refresh();" title="Close the template.">Close</button>