+++ /dev/null
-{% extends "project_descriptors.html" %}
-{% load staticfiles %}
-
-
-{% block head_block %}
- {{ block.super }}
-<link rel="stylesheet" href="/static/bower_components/select2/dist/css/select2.min.css">
-{% endblock %}
-
-{% block title_header_big %}
- {{ block.super }}
- {% if descriptor_type %}
- {{ descriptor_type|upper }}
- {% else%}
- Undefined
- {% endif %} Packages
-{% endblock %}
-
-{% block left_sidebar %}
- {% include 'osm/osm_project_left_sidebar.html' %}
-{% endblock %}
-
-{% block breadcrumb_body %}
- {{ block.super }}
- <li><a href="{% url 'projects:open_project' %}">{{project_id}}</a></li>
- <li><a> {% if descriptor_type %}
- {{ descriptor_type }}
- {% else%}
- Undefined
- {% endif %} Packages</a></li>
-
-{% endblock %}
-
-{% block content_body %}
- {{ block.super }}
-{% include 'osm/modal/files_list.html' %}
-{% include 'modal/instance_create.html' %}
-{% include 'modal/choose_package_name.html' %}
-<div class="row">
- {% include "descriptorlist.html" %}
-</div>
-{% endblock %}
-
-
-
-
-{% block resource_block %}
- {{ block.super }}
- <script src="/static/bower_components/select2/dist/js/select2.js"></script>
- <script src="/static/src/instancehandler/instance_create.js"></script>
- <script src="/static/src/projecthandler/descriptorslist.js"></script>
- <script src="/static/src/projecthandler/onboard_package.js"></script>
-
- <script>
- var csrf_token = '{{csrf_token}}';
- var descr_list_url = '{% url "projects:descriptors:list_descriptors" descriptor_type=descriptor_type%}';
- var vim_list_url = '{% url "vims:list" %}';
- var new_desc_url ="{% url 'projects:descriptors:new_descriptor' descriptor_type=descriptor_type %}";
- var descriptor_type = '{{ descriptor_type | safe }}';
- var project_id = '{{ project_id }}';
- var table;
-
- function refreshTable() {
- table.ajax.reload();
- }
-
- $(document).ready( function () {
- table = $('#descriptors_table').DataTable({
- responsive: true,
- "ajax": {
- "url": "/projects/descriptors/" +descriptor_type+"/list",
- "dataSrc": function (json) {
- return json['descriptors'];
- },
- statusCode: {
- 401: function () {
- console.log("no auth");
- moveToLogin(window.location.pathname);
- }
- },
- "error": function (hxr, error, thrown) {
-
- }
-
- },
- "columns": [
- {
- "render": function (data, type, row) {
- return row['short-name'] || '';
- },
- "targets": 0
- },
- {
- "render": function (data, type, row) {
- return row['_id'];
- },
- "targets": 1
- },
- {
- "render": function (data, type, row) {
- return row['description'] || '';
- },
- "targets": 2
- },
- {
- "render": function (data, type, row) {
- return row['vendor'] || '';
- },
- "targets": 3
- },
- {
- "render": function (data, type, row) {
- return row['version'] || '';
- },
- "targets": 4
- },
- {
- "render": function (data, type, row) {
- var result = '<div class="btn-group">\n' ;
- if(descriptor_type == "nsd")
- result += ' <button type="button" class="btn btn-default" data-container="body"\n' +
- 'data-toggle="tooltip" data-placement="top" title="Instantiate NS"\n' +
- 'onclick="javascript:openModalCreateNS({ \'project_id\':\'' + project_id +'\', \'descriptor_type\': \''+ descriptor_type +'\', \'descriptor_name\':\''+row["name"]+'\', \'descriptor_id\':\''+row["_id"]+'\',\'vim_list_url\': \''+vim_list_url+'\', \'nsd_list_url\': \''+descr_list_url+'\' })">\n' +
- '<i class="fa fa-paper-plane"></i></button>\n';
- result += '<button type="button" class="btn btn-default" data-container="body"\n' +
- ' data-toggle="tooltip" data-placement="top" title="Edit"\n' +
- ' onclick="javascript:openDescriptorView(\''+descriptor_type+'\', \''+row["_id"]+'\')">\n' +
- ' <i class="fa fa-edit"></i></button>\n' +
- '<button type="button" class="btn btn-default" data-container="body"\n' +
- ' data-toggle="tooltip" data-placement="top" title="Show content"\n' +
- ' onclick="javascript:openPackageContentList(\''+ descriptor_type +'\', \''+row["_id"]+'\')">\n' +
- ' <i class="fa fa-folder-open"></i></button>\n' +
- '<button type="button" class="btn btn-default" data-container="body"\n' +
- ' data-toggle="tooltip" data-placement="top" title="Clone"\n' +
- ' onclick="javascript:clonePackage(\''+ descriptor_type +'\', \''+row["_id"]+'\')">\n' +
- ' <i class="fa fa-clone"></i></button>\n';
- //if(descriptor_type == "nsd")
- result += '<button type="button" class="btn btn-default" data-container="body"\n' +
- ' data-toggle="tooltip" data-placement="top" title="Show Graph"\n' +
- ' onclick="location.href=\'/projects/descriptors/composer?type='+descriptor_type+'&id='+row["_id"] +'\'"\n' +
- ' ><i class="fa fa-sitemap fa-fw"></i></button>\n';
- result +=
- '<button type="button" class="btn btn-default" data-container="body"\n' +
- ' data-toggle="tooltip" data-placement="top" title="Download package"\n' +
- ' onclick="location.href=\'/projects/descriptors/'+descriptor_type+'/'+ row["_id"] +'/action/download_pkg\'">\n' +
- ' <i class="fa fa-download fa-fw"></i></button>\n' +
- '<button type="button" class="btn btn-default" data-container="body"\n' +
- ' data-toggle="tooltip" data-placement="top" title="Delete"\n' +
- ' onclick="javascript:deletePackage( \'' + descriptor_type + '\', \''+row["_id"] + '\', \''+row["name"] + '\')">\n' +
- ' <i class="far fa-trash-alt"></i></button>\n' +
- '</div>';
-
- return result
- },
- "targets": 5
- }]
-
-
- });
-
- setInterval(refreshTable, 10000);
-
-
- $("#formCreatePackage").submit(function (event) {
- event.preventDefault(); //prevent default action
- var post_url = $(this).attr("action"); //get form action url
- var request_method = $(this).attr("method");
- var form_data = new FormData(this); //Encode form elements for submission
-
- $.ajax({
- url: post_url,
- type: request_method,
- data: form_data,
- headers: {
- "Accept": 'application/json'
- },
- contentType: false,
- processData: false
- }).done(function (response, textStatus, jqXHR) {
-
- location.href='/projects/descriptors/composer?type=' + response['data']['type']+'&id=' + response['data']['id'];
- }).fail(function (result) {
- var data = result.responseJSON;
- var title = "Error " + (data.code ? data.code : 'unknown');
- var message = data.detail ? data.detail : 'No detail available.';
- bootbox.alert({
- title: title,
- message: message
- });
- });
- });
- });
-
-
- </script>
-
-
-{% endblock %}
-
-{% block footer %}
- {% include "footer.html" %}
-{% endblock %}