first commit
[osm/LW-UI.git] / projecthandler / template / project / osm / osm_project_descriptors.html
1 {% extends "project_descriptors.html" %}
2 {% load staticfiles %}
3
4
5 {% block head_block %}
6 {{ block.super }}
7 <link rel="stylesheet" href="/static/bower_components/select2/dist/css/select2.min.css">
8 {% endblock %}
9
10 {% block title_header_big %}
11 {{ block.super }}
12 {% if descriptor_type %}
13 {{ descriptor_type|upper }}
14 {% else%}
15 Undefined
16 {% endif %} Packages
17 {% endblock %}
18
19 {% block left_sidebar %}
20 {% include 'osm/osm_project_left_sidebar.html' %}
21 {% endblock %}
22
23 {% block breadcrumb_body %}
24 {{ block.super }}
25 <li><a href="{% url 'projects:open_project' project_id=project_id %}">{{project_overview_data.name}}</a></li>
26 <li><a> {% if descriptor_type %}
27 {{ descriptor_type }}
28 {% else%}
29 Undefined
30 {% endif %} Packages</a></li>
31
32 {% endblock %}
33
34 {% block content_body %}
35 {{ block.super }}
36 {% include 'osm/modal/files_list.html' %}
37 {% include 'modal/instance_create.html' %}
38 <div class="row">
39 {% include "osm/descriptor/descriptorlist.html" %}
40 </div>
41 {% endblock %}
42
43
44
45
46 {% block resource_block %}
47 {{ block.super }}
48 <script src="/static/bower_components/select2/dist/js/select2.js"></script>
49 <script>
50 function deletePackage(project_id, descriptor_type, package_id) {
51 bootbox.confirm("Are you sure want to delete?", function (result) {
52 if (result) {
53 location.href = '/projects/' + project_id + '/descriptors/' + descriptor_type + '/' + package_id + '/delete'
54 }
55 })
56 }
57
58 function openModalCreateNS(project_id, descriptor_type, descriptor_id) {
59 select2_groups = $('#vimAccountId').select2({
60 placeholder: 'Select VIM',
61 ajax: {
62 url: '{% url "vim:list" %}',
63 dataType: 'json',
64 processResults: function (data) {
65 vims = [];
66 if (data['datacenters']){
67 for(d in data['datacenters']){
68 var datacenter = data['datacenters'][d];
69 vims.push({id: datacenter['_id'], text: datacenter['name']})
70 }
71 }
72
73 return {
74 results: vims
75 };
76 }
77 }
78 });
79 $('#nsdId').val(descriptor_id);
80 $('#modal_new_instance').modal('show');
81 }
82
83 function openPackageContentList(project_id, type, pkg_id) {
84 var dialog = bootbox.dialog({
85 message: '<div class="text-center"><i class="fa fa-spin fa-spinner"></i> Loading...</div>',
86 closeButton: true
87 });
88 $.ajax({
89 url: '/projects/' + project_id + '/descriptors/' + type + '/' + pkg_id + '/action/get_package_files_list',
90 type: 'GET',
91 dataType: "json",
92 contentType: "application/json;charset=utf-8",
93 success: function (result) {
94 //$('#modal_show_vim_body').empty();
95 console.log(result)
96 dialog.modal('hide');
97 build_file_list("Files in " + pkg_id, result.files);
98 },
99 error: function (result) {
100 dialog.modal('hide');
101 bootbox.alert("An error occurred while retrieving the package content.");
102 }
103 });
104 }
105
106
107 function build_file_list(title, list) {
108 $('#files_list_tbody').find('tr:gt(0)').remove();
109 $('#files_list_tbody_title').text(title)
110 for (var i in list) {
111 var template = '<tr><td>-</td><td>' + list[i] + '</td><td><button type="button" class="btn btn-default" onclick="" disabled><i class="fa fa-folder-open"></i></button></td></tr>'
112 $('#files_list_tbody').append(template)
113 }
114 $('#modal_files_list').modal('show');
115 }
116 </script>
117 {% endblock %}
118
119 {% block footer %}
120 {% include "footer.html" %}
121 {% endblock %}