Policy 1707 commit to LF
[policy/engine.git] / POLICY-SDK-APP / src / main / webapp / app / policyApp / policy-models / Editor / PolicyTemplates / DecisionPolicyTemplate.html
1 <div ng-controller="decisionPolicyController">
2         <form>
3                 <div class="well">
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 the Policy Name without any spaces" />
11                                 </div>
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                                 </div>
17                         </div>
18                         <div class="form-group row">
19                                 <div class="form-group col-sm-6">
20                                         <label>Ecomp Name:<sup><b>*</b></sup></label> <select
21                                                 class="form-control" ng-disabled="temp.policy.readOnly"
22                                                 ng-model="temp.policy.ecompName"
23                                                 ng-options="option for option in ecompNameDictionaryDatas track by option"
24                                                 required pattern="\S+" title="EcompName is required"></select>
25                                 </div>
26                                 <div class="form-group col-sm-6">
27                                         <label>Rule Provider:<sup><b>*</b></sup></label><select
28                                                 class="form-control" ng-disabled="temp.policy.readOnly"
29                                                 ng-model="temp.policy.ruleProvider"
30                                                 ng-init="providerListener(temp.policy.ruleProvider);"
31                                                 ng-click="providerListener(temp.policy.ruleProvider);">
32                                                 <option>Custom</option>
33                                                 <option>AAF</option>
34                                         </select>
35                                 </div>
36                         </div>
37                 </div>
38
39                 <div ng-if="temp.policy.ruleProvider == 'Custom'">
40                         <div class="well">
41                                 <div class="form-group row">
42                                         <div class="form-group col-sm-1">
43                                                 <label>Component Attributes:</label><br>
44                                                 <button type="button" class="btn btn-default"
45                                                         ng-disabled="temp.policy.readOnly" ng-click="addNewChoice()">
46                                                         <i class="fa fa-plus"></i>
47                                                 </button>
48                                         </div>
49                                 </div>
50                                 <div class="form-group row">
51                                         <div data-ng-repeat="choice in temp.policy.attributes">
52                                                 <div class="form-group row" style="margin-left: 2%">
53                                                         <div class="form-group col-sm-3">
54                                                                 <select class="form-control" ng-disabled="temp.policy.readOnly"
55                                                                         ng-model="choice.key"
56                                                                         ng-options="option for option in attributeDictionaryDatas track by option">
57                                                                         <option value="">{{choice.key}}</option>
58                                                                 </select>
59                                                         </div>
60                                                         <div class="form-group col-sm-3">
61                                                                 <input type="text" class="form-control"
62                                                                         ng-disabled="temp.policy.readOnly" ng-model="choice.value"
63                                                                         placeholder="Attribute Value" />
64                                                         </div>
65                                                         <div class="form-group col-sm-1">
66                                                                 <button type="button" class="btn btn-default" ng-show="$last"
67                                                                         ng-disabled="temp.policy.readOnly" ng-click="removeChoice()">
68                                                                         <i class="fa fa-minus"></i>
69                                                                 </button>
70                                                         </div>
71                                                 </div>
72                                         </div>
73                                 </div>
74                         </div>
75                 </div>
76
77                 <div ng-if="temp.policy.ruleProvider == 'Custom'">
78                         <div class="well">
79                                 <div class="form-group row">
80                                         <div class="form-group col-sm-1">
81                                                 <label>Settings Attributes:</label><br>
82                                                 <button type="button" class="btn btn-default"
83                                                         ng-disabled="temp.policy.readOnly"
84                                                         ng-click="addNewSettingsChoice()">
85                                                         <i class="fa fa-plus"></i>
86                                                 </button>
87                                         </div>
88                                 </div>
89                                 <div class="form-group row">
90                                         <div data-ng-repeat="settingschoice in temp.policy.settings">
91                                                 <div class="form-group row" style="margin-left: 2%">
92                                                         <div class="form-group col-sm-3">
93                                                                 <select class="form-control" ng-disabled="temp.policy.readOnly"
94                                                                         ng-model="settingschoice.key"
95                                                                         ng-options="option for option in settingsDictionaryDatas track by option">
96                                                                         <option value="">{{settingschoice.key}}</option>
97                                                                 </select>
98                                                         </div>
99                                                         <div class="form-group col-sm-3">
100                                                                 <input type="text" class="form-control"
101                                                                         ng-disabled="temp.policy.readOnly"
102                                                                         ng-model="settingschoice.value" placeholder="Settings Value" />
103                                                         </div>
104                                                         <div class="form-group col-sm-1">
105                                                                 <button type="button" class="btn btn-default" ng-show="$last"
106                                                                         ng-disabled="temp.policy.readOnly"
107                                                                         ng-click="removeSettingsChoice()">
108                                                                         <i class="fa fa-minus"></i>
109                                                                 </button>
110                                                         </div>
111                                                 </div>
112                                         </div>
113                                 </div>
114                         </div>
115                 </div>
116
117                 <div ng-if="temp.policy.ruleProvider == 'Custom'">
118                         <div class="well">
119                                 <label>Decision Rule Algorithms:<sup><b>*</b></sup></label><br>
120                                 <div class="form-group row">
121                                         <div class="form-group col-sm-1">
122                                                 <button type="button" class="btn btn-default"
123                                                         ng-disabled="temp.policy.readOnly"
124                                                         ng-click="addNewRuleAlgorithm()">
125                                                         <i class="fa fa-plus"></i>
126                                                 </button>
127                                         </div>
128                                 </div>
129                                 <div class="form-group row">
130                                         <div
131                                                 data-ng-repeat="ruleAlgorithmschoice in temp.policy.ruleAlgorithmschoices">
132                                                 <div class="form-group row" style="margin-left: 2%">
133                                                         <div class="form-group col-sm-1">
134                                                                 <label
135                                                                         ng-model="ruleAlgorithmschoice.dynamicRuleAlgorithmLabels"
136                                                                         name="dynamicRuleAlgorithmLabels">{{ruleAlgorithmschoice.id}}</label>
137                                                         </div>
138                                                         <div class="form-group col-sm-3">
139                                                                 <select class="form-control" id="mySelect"
140                                                                         ng-disabled="temp.policy.readOnly"
141                                                                         ng-model="ruleAlgorithmschoice.dynamicRuleAlgorithmField1"
142                                                                         ng-options="option for option in attributeDictionaryDatas track by option"
143                                                                         name="dynamicRuleAlgorithmField1">
144                                                                         <option value="">{{ruleAlgorithmschoice.dynamicRuleAlgorithmField1}}</option>
145                                                                 </select>
146                                                         </div>
147                                                         <div class="form-group col-sm-3">
148                                                                 <select type="text" class="form-control"
149                                                                         ng-disabled="temp.policy.readOnly"
150                                                                         ng-model="ruleAlgorithmschoice.dynamicRuleAlgorithmCombo"
151                                                                         ng-options="option for option in functionDefinitionDatas track by option"
152                                                                         name="dynamicRuleAlgorithmCombo"></select>
153                                                         </div>
154                                                         <div class="form-group col-sm-3">
155                                                                 <input type="text" class="form-control"
156                                                                         ng-disabled="temp.policy.readOnly"
157                                                                         ng-model="ruleAlgorithmschoice.dynamicRuleAlgorithmField2"
158                                                                         name="dynamicRuleAlgorithmField2" />
159                                                         </div>
160                                                         <div class="form-group col-sm-1">
161                                                                 <button type="button" class="btn btn-default"
162                                                                         ng-disabled="temp.policy.readOnly"
163                                                                         ng-click="removeRuleAlgorithm()">
164                                                                         <i class="fa fa-minus"></i>
165                                                                 </button>
166                                                         </div>
167                                                 </div>
168                                         </div>
169                                 </div>
170                         </div>
171                 </div>
172                 <br>
173                 <div id="validate" style="width: 70%"></div>
174                 <br>
175                 <div class="modal-footer">
176                         <button class="btn btn-primary" herf="javascript:void(0)"
177                                 ng-disabled="temp.policy.readOnly"
178                                 ng-click="validatePolicy(temp.policy);">Validate</button>
179                         <button class="btn btn-success" herf="javascript:void(0)"
180                                 ng-disabled="savebutton" ng-disabled="temp.policy.readOnly"
181                                 ng-click="saveDecisionPolicy(temp);">Save</button>
182                         <button class="btn btn-default" data-dismiss="modal"
183                                 ng-disabled="temp.inprocess" ng-model="finalPath"
184                                 ng-controller="FileManagerCtrl" ng-click="closefunction(finalPath);">Close</button>
185                 </div>
186         </form>
187 </div>