fix bug 923; fix bug 940
[osm/LW-UI.git] / vimhandler / template / vim_list.html
index b7bc224..79e0e1d 100644 (file)
@@ -40,6 +40,7 @@ limitations under the License.
 
 {% block content_body %}
     {{ block.super }}
+    {% include 'modal/vim_create.html' %}
     {% include 'modal/vim_details.html' %}
     {% csrf_token %}
     <div class="row">
@@ -49,8 +50,11 @@ limitations under the License.
                 <div class="box-header with-border">
                     <h3 class="box-title">Registered VIM</h3>
                     <div class="box-tools">
-                        <a href='{% url "vims:create"   %}' class="btn btn-block btn-primary btn-sm"><i
-                                class="fa fa-plus"></i><span> New VIM</span></a>
+                        <button type="button" class="btn btn-default" data-container="body"
+                            data-toggle="tooltip" data-placement="top" title="New VIM"
+                            onclick="javascript:openModalCreateVIM()">
+                        <i class="fa fa-plus"></i> <span> New VIM</span>
+                        </button>
                     </div>
                 </div>
                 <div class="box-body">
@@ -80,113 +84,11 @@ limitations under the License.
     {{ block.super }}
     <script src="/static/node_modules/datatables.net/js/jquery.dataTables.min.js"></script>
     <script src="/static/node_modules/datatables.net-bs/js/dataTables.bootstrap.min.js"></script>
+    <script src="/static/src/vimhandler/vim_list.js"></script>
     <script>
-    $(document).ready( function () {
-        var table = $('#vims_table').DataTable({
-            responsive: true,
-            "ajax": {
-                "url": "/vims/list/",
-                "dataSrc": function (json) {
-                    return json['datacenters'];
-                },
-                statusCode: {
-                    401: function () {
-                        console.log("no auth");
-                        moveToLogin(window.location.pathname);
-                    }
-                },
-                "error": function (hxr, error, thrown) {
-                    console.log(hxr)
-                    console.log(thrown)
-                    console.log(error);
-                }
-
-            },
-            "columns": [
-                {
-                    "render": function (data, type, row) {
-                        return row["name"];
-                    },
-                    "targets": 0
-                },
-                {
-                    "render": function (data, type, row) {
-                        return row['_id'];
-                    },
-                    "targets": 1
-                },
-                {
-                    "render": function (data, type, row) {
-                        return row["vim_type"];
-                    },
-                    "targets": 2
-                },
-                {
-                    "render": function (data, type, row) {
-                        return row["_admin"]['operationalState'];
-                    },
-                    "targets": 3
-                },
-                {
-                    "render": function (data, type, row) {
-                        return row["_admin"]['description'] || '';
-                    },
-                    "targets": 4
-                },
-                {
-                    "render": function (data, type, row) {
-                        return '<div class="btn-group"><button type="button" class="btn btn-default" ' +
-                            'onclick="location.href=\'/vims/'+row['_id']+'\'" data-toggle="tooltip" data-placement="top" data-container="body" title="Show Info">' +
-                        '<i class="fa fa-info"></i>' +
-                        '</button> ' +
-                        '<button type="button" class="btn btn-default"' +
-                        'onclick="javascript:deleteVim(\''+row['_id']+'\', \''+ row["name"] +'\')" data-toggle="tooltip" data-placement="top" data-container="body" title="Delete">' +
-                        '<i class="far fa-trash-alt" ></i></button></div>';
-                    },
-                    "targets": 5,
-                    "orderable": false
-                }
-            ]
-        });
-
-        setInterval(function () {
-                table.ajax.reload();
-            }, 10000);
-    });
-    </script>
-    <script>
+    var table;
 
-        function deleteVim(vim_id, vim_name) {
-            var url = "/vims/"+vim_id+"/delete";
-            bootbox.confirm("Are you sure want to delete " + vim_name + "?", function (result) {
-                if (result) {
-                    var dialog = bootbox.dialog({
-                        message: '<div class="text-center"><i class="fa fa-spin fa-spinner"></i> Loading...</div>',
-                        closeButton: true
-                    });
-                    $.ajax({
-                        url: url,
-                        type: 'GET',
-                        dataType: "json",
-                        contentType: "application/json;charset=utf-8",
-                        success: function (result) {
-                            if (result['error'] == true) {
-                                dialog.modal('hide');
-                                bootbox.alert("An error occurred.");
-                            }
-                            else {
-                                dialog.modal('hide');
-                                location.reload();
-                            }
-                        },
-                        error: function (error) {
-                            dialog.modal('hide');
-                            bootbox.alert("An error occurred.");
-                        }
-                    });
-                }
-            })
-        }
+        
     </script>
 
 {% endblock %}