<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <% include ../partials/head %> <% include ../partials/header %> <script type="text/javascript" src="/javascripts/admportal.js" async></script> <title>SDN-C AdminPortal</title> <script class="init"> $(document).ready(function() { $('#vnf_data').DataTable( { "order": [[ 0, "asc" ]] } ); } ); </script> </head> <body> <div class="well well-sm"> <h3>Pre-load VNF Data</h3> </div> <% if ( typeof result != 'undefined' ) { if (result.code.length > 0) { if ( result.code == 'success' ) { %> <div class='alert alert-success' role='alert'> <% for ( x in result.msg ){ %> <div><%= result.msg[x] %></div> <% } %> </div> <% } else { %> <div class='alert alert-danger' role='danger'> <% for ( x in result.msg ){ %> <div><%= result.msg[x] %></div> <% } %> </div> <% } %> <% } %> <% } %> <% if( typeof privilege != 'undefined'){ var priv = privilege.privilege; } else { var priv = 'A'; } %> <div class="container-fluid"> <table id="vnf_data" class="table table-hover table-condensed"> <thead> <tr> <th>ID</th> <th>SVC_REQUEST_ID</th> <th>VNF_NAME</th> <th>VNF_TYPE</th> <th>SVC_ACTION</th> <th>UPLOAD STATUS</th> <th>FILENAME</th> <th>IMPORT/UPLOAD TIMESTAMP</th> <% if(priv == 'A'){ %> <th>Action</th> <% } %> </tr> </thead> <tbody> <% var i=0; retData.forEach( function(rowObj) { %> <tr> <td><%= rowObj.row.id %></td> <td><a href="javascript:getVnfData('<%= rowObj.vnf_name %>','<%= rowObj.vnf_type %>');"><%= rowObj.row.svc_request_id %></a></td> <td><%= rowObj.vnf_name %></td> <td><%= rowObj.vnf_type %></td> <td><%= rowObj.row.svc_action %></td> <td><%= rowObj.row.status %></td> <td> <a data-toggle="collapse" href="#collapseExample<%= i %>" aria-expanded="false" aria-controls="collapseExample"><%= rowObj.row.filename %> </a> <div class="collapse" id="collapseExample<%= i %>"> <div class="well"> <pre><%= JSON.stringify(rowObj.filecontent,null,4) %></pre> </div> </div> </td> <td><%= rowObj.row.ts %></td> <% if(priv == 'A' ) { %> <td> <button type="button" class="btn btn-default btn-xs" onclick="deleteVnfData('<%= rowObj.row.id %>','<%= rowObj.row.svc_request_id %>','<%= rowObj.row.filename %>','<%= rowObj.row.status %>','<%= rowObj.vnf_name %>','<%= rowObj.vnf_type %>');">Delete</button> <% if (typeof rowObj.vnf_name != 'undefined' || typeof rowObj.vnf_type != 'undefined'){ %> <button type="button" class="btn btn-default btn-xs" onclick="loadVnfData('<%= rowObj.row.id %>','<%= rowObj.row.svc_request_id %>','<%= rowObj.row.svc_action %>','<%= rowObj.row.status %>','<%= rowObj.row.filename %>','<%= rowObj.row.ts %>');">Load Data</button> <% } %> </td> <% } %> </tr> <% i++; }); %> </tbody> </table> <% if(priv == 'A'){ %> <div class="row"> <div class="col-md-8 col-md-push-4"> <form method="POST" action="/mobility/uploadVnfData" enctype="multipart/form-data"> <div class="form-group"> <label for="dest">Upload pre processed JSON file.</label> <input name="filename" type="file" id="dest"> <p class="help-block">Choose a JSON file to upload.</p> <button type="button" class="btn btn-default" data-toggle="tooltip" data-placement="bottom" title="Upload a JSON file that has already been pre processed." onclick="uploadFile(this.form);">Upload JSON File</button> </div> </form> </div> <div class="col-md-4 col-md-pull-8"> <form method="POST" action="/preload/uploadVnfCsv" enctype="multipart/form-data"> <div class="form-group"> <label for="dest">Upload Worksheet CSV files from the <%= preloadImportDirectory %> directory.</label> <input name="filename" type="file" id="dest" multiple> <p class="help-block">Choose Worksheet CSV files to upload.</p> <button type="button" class="btn btn-default" data-toggle="tooltip" data-placement="bottom" title="Must upload all the VNF CSV files from <%= preloadImportDirectory %>" onclick="importWorksheet(this.form);">Upload VNF Worksheet CSV files </button> </div> </form> </div> </div> <% } %> </div> <% include ../partials/add_service_homing %> <% include ../partials/update_service_homing %> <footer> <% include ../partials/footer %> </footer> <script type="text/javascript"> function importWorksheet(form) { if ( form.filename.value.length == 0) { bootbox.alert('Must select a file.'); return false; } else { bootbox.confirm({ message: "Are you sure you want to import VNF WORKSHEET .csv files from <%= preloadImportDirectory %>", callback: function(result) { if ( result ) { form.submit(); } return; }, buttons: { cancel: { label: "Cancel" }, confirm: { label: "Yes" } } }); } } function getVnfData(vnf_name,vnf_type,svc_request_id) { location.assign("/mobility/viewVnfData?vnf_name=" + vnf_name + "&vnf_type=" + vnf_type ); return; } function loadVnfData(id,svc_request_id,svc_action,status,filename,ts) { if ( status != 'pending' ) { bootbox.alert("Upload Status must be in 'pending' state."); return; } bootbox.confirm({ message: "Are you sure you want to load file [" + filename + "]? ", callback: function(result) { if ( result ) { location.assign("/mobility/loadVnfData?id=" + id + "&svc_request_id=" + svc_request_id + "&filename=" + filename + "&status=" + status); } return; }, buttons: { cancel: { label: "Cancel" }, confirm: { label: "Yes" } } }); } function deleteVnfData(id,svc_request_id,filename,status,vnf_name,vnf_type) { bootbox.confirm({ message: "Are you sure you want to delete uploaded file [" + filename + "]? ", callback: function(result) { if ( result ) { location.assign("/mobility/deleteVnfData?id=" + id + "&svc_request_id=" + svc_request_id + "&filename=" + filename + "&status=" + status + "&vnf_name=" + vnf_name + "&vnf_type=" + vnf_type); } return; }, buttons: { cancel: { label: "Cancel" }, confirm: { label: "Yes" } } }); } </script> </body> </html>