Initial commit for OpenECOMP SDN-C OA&M
[sdnc/oam.git] / admportal / views / resalloc / resource_rule.ejs
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4   <meta charset="UTF-8" />
5   <meta http-equiv="X-UA-Compatible" content="IE=edge">
6   <% include ../partials/head %>
7   <% include ../partials/header %>
8   <script type="text/javascript" src="/javascripts/admportal.js" async></script>
9   <title>SDN-C AdminPortal</title>
10 <script class="init">
11     $(document).ready(function() {
12     $('#resource_rule').DataTable( {
13         "order": [[ 0, "asc" ]]
14     } );
15 } );
16 </script>
17
18 </head>
19 <body>
20
21 <div class="well wel-sm">
22 <h3>Resource Rule</h3>
23 </div>
24
25 <% if ( typeof result != 'undefined' ) {
26                 if (result.code.length > 0) { 
27                         if ( result.code == 'success' ) { %>
28                                 <div class='alert alert-success' role='alert'>
29                                 <%
30                                 for ( x in result.msg ){ %>
31                                         <div><%= result.msg[x] %></div>
32                                 <% } %>
33                                 </div>
34                         <% } else { %> 
35                                 <div class='alert alert-danger' role='danger'>
36                                 <%
37                                 for ( x in result.msg ){ %>
38                                         <div><%= result.msg[x] %></div>
39                                 <% } %>
40                                 </div>
41                         <% } %>
42                 <% } %>
43 <% } %>
44
45 <% if( typeof privilege != 'undefined'){
46     var priv = privilege.privilege;
47 } else {
48     var priv = 'A';
49 } %>
50
51
52 <div class="container-fluid">
53
54          <% if(priv == 'A'){ %>
55         <div class="actions" style="padding:15px 0px;">
56             <button class="btn btn-primary" data-toggle="modal" data-target="#add_resource_rule">
57             Add Resource Rule
58             </button>
59             </div>
60     <% } %>
61
62         <table id="resource_rule" class="table table-hover table-condensed">
63       <thead>
64         <tr>
65                   <th>*ID</th>
66           <th>*Name</th>
67                   <th>*End Point Position</th>
68           <th>*Service Expression</th>
69           <th>*Equipment Level</th>
70           <th>*Equipment Expression</th>
71           <th>*Allocation Expression</th>
72           <th>*Soft Limit Expression</th>
73           <th>*Hard Limit Expression</th>
74           <th>*Service Model</th>
75                    <% if(priv == 'A'){ %>
76           <th>Action</th>
77           <% } %>
78         </tr>
79       </thead>
80       <tbody>
81       <% rows.forEach( function(row) { %> 
82         <tr>
83             <td><%= row.resource_rule_id %></td>
84             <td><%= row.resource_name %></td>
85             <td><%= row.end_point_position %></td>
86             <td><%= row.service_expression %></td>
87             <td><%= row.equipment_level %></td>
88             <td><%= row.equipment_expression %></td>
89             <td><%= row.allocation_expression %></td>
90             <td><%= row.soft_limit_expression %></td>
91             <td><%= row.hard_limit_expression %></td>
92             <td><%= row.service_model %></td>
93                         <% if(priv == 'A') { %>
94             <td>
95                                 <button type="button" class="btn btn-default btn-xs"
96                     onclick="updateResourceRule('<%=row.resource_rule_id %>','<%= row.resource_name %>','<%= row.end_point_position %>','<%= row.service_expression %>','<%= row.equipment_level %>','<%= row.equipment_expression %>','<%= row.allocation_expression %>','<%= row.soft_limit_expression %>', '<%= row.hard_limit_expression %>','<%= row.service_model %>');">Update</button>
97                                 <button type="button" class="btn btn-default btn-xs"
98                    onclick="deleteResourceRule('<%= row.resource_rule_id %>');">Delete</button>
99             </td>
100             <% } %>
101
102         </tr>
103     <% }); %>
104       </tbody>
105     </table>
106
107 </div>
108
109 <% include ../partials/resource_rule %>
110 <footer>
111     <% include ../partials/footer %>
112 </footer>
113
114 <script type="text/javascript">
115 function submitResourceRule(form)
116 {
117     var errorMsg='';
118     var resource_name = '';
119         var end_point_position = '';
120         var service_expression = '';
121         var equipment_level = '';
122         var equipment_expression = '';
123         var allocation_expression = '';
124         var soft_limit_expression = '';
125         var hard_limit_expression = '';
126         var service_model = '';
127
128     if ( form.name == 'addForm' )
129     {
130                 resource_name = form.nf_resource_name;
131                 end_point_position = form.nf_end_point_position;
132                 service_expression = form.nf_service_expression;
133                 equipment_level = form.nf_equipment_level;
134                 allocation_expression = form.nf_allocation_expression;
135                 soft_limit_expression = form.nf_soft_limit_expression;
136                 hard_limit_expression = form.nf_hard_limit_expression;
137                 service_model = form.nf_service_model;
138     }
139     else
140     {
141                 resource_name = form.uf_resource_name;
142                 end_point_position = form.uf_end_point_position;
143                 service_expression = form.uf_service_expression;
144                 equipment_level = form.uf_equipment_level;
145                 allocation_expression = form.uf_allocation_expression;
146                 soft_limit_expression = form.uf_soft_limit_expression;
147                 hard_limit_expression = form.uf_hard_limit_expression;
148                 service_model = form.uf_service_model;
149     }
150
151
152     if ( (resource_name.value == null) || (resource_name.value == "") || isblank(resource_name.value) )
153     {
154         errorMsg += 'Resource Name is required.<br>';
155     }
156     if ( (end_point_position.value == null) || (end_point_position.value == "") || isblank(end_point_position.value) )
157     {
158         errorMsg += 'End Point Position is required.<br>';
159     }
160     if ( (service_expression.value == null) || (service_expression.value == "") || isblank(service_expression.value) ){
161         errorMsg += 'Service Expression is required.<br>';
162     }
163     if ( (equipment_level.value == null) || (equipment_level.value == "") || isblank(equipment_level.value) ){
164         errorMsg += 'Equipment Level is required.<br>';
165     }
166     if ( (allocation_expression.value == null) || (allocation_expression.value == "") || isblank(allocation_expression.value) ){
167         errorMsg += 'Allocation Expression is required.<br>';
168     }
169     if ( (soft_limit_expression.value == null) || (soft_limit_expression.value == "") || isblank(soft_limit_expression.value) ){
170         errorMsg += 'Soft Limit Expression is required.<br>';
171     }
172     if ( (hard_limit_expression.value == null) || (hard_limit_expression.value == "") || isblank(hard_limit_expression.value) ){
173         errorMsg += 'Hard Limit Expression is required.<br>';
174     }
175     if ( (service_model.value == null) || (service_model.value == "") || isblank(service_model.value) ){
176         errorMsg += 'Service Model is required.<br>';
177     }
178     if( errorMsg.length > 0 ) {
179         bootbox.alert(errorMsg);
180         return;
181     }
182     form.submit();
183 }
184
185 function updateResourceRule(resource_rule_id,resource_name,end_point_position,service_expression,equipment_level,equipment_expression,allocation_expression,soft_limit_expression,hard_limit_expression,service_model) {
186
187     document.getElementById('uf_resource_rule_id').value=resource_rule_id;
188     document.getElementById('uf_resource_name').value=resource_name;
189     document.getElementById('uf_end_point_position').value=end_point_position;
190     document.getElementById('uf_service_expression').value=service_expression;
191     document.getElementById('uf_equipment_level').value=equipment_level;
192     document.getElementById('uf_equipment_expression').value=equipment_expression;
193     document.getElementById('uf_allocation_expression').value=allocation_expression;
194     document.getElementById('uf_soft_limit_expression').value=soft_limit_expression;
195     document.getElementById('uf_hard_limit_expression').value=hard_limit_expression;
196     document.getElementById('uf_service_model').value=service_model;
197     document.getElementById('uf_key_resource_rule_id').value=resource_rule_id;
198
199     $('#update_resource_rule').modal('show');
200 }
201
202 function deleteResourceRule(resource_rule_id) {
203
204     bootbox.confirm({
205         message: "Are you sure you want to delete RESOURCE_RULE [" + resource_rule_id + "]",
206         callback: function(result) {
207             if ( result )
208             {
209                                 location.assign("/resalloc/deleteResourceRule?resource_rule_id=" + resource_rule_id);
210             }
211             return;
212         },
213         buttons: {
214             cancel: {
215                 label: "Cancel"
216             },
217             confirm: {
218                 label: "Yes"
219             }
220         }
221     });
222 }
223
224 </script>
225
226 </body>
227 </html>
228