1084004af4e000ce84d26c66d72bea2095a1901b
[plstackapi.git] / planetstack / templates / admin / core / slice / change_form.html
1 {% extends 'admin/change_form.html' %}
2 {% block extrahead %}
3 {{ block.super }} 
4 <script>
5 deployment_nodes = [
6 {% for dn in deployment_nodes %}
7    [{{ dn.0 }}, {{ dn.1 }} , "{{ dn.2 }}"],
8 {% endfor %}
9 ];
10
11 deployment_flavors = [
12 {% for dn in deployment_flavors %}
13    [{{ dn.0 }}, {{ dn.1 }} , "{{ dn.2 }}"],
14 {% endfor %}
15 ];
16
17 site_login_bases = [
18 {% for s in site_login_bases %}
19   [{{ s.0 }}, "{{ s.1 }}"],
20 {% endfor %}
21 ];
22
23 function update_nodes(deployment_select, node_select_id) {
24     deployment_id = $(deployment_select).val();
25     html = "<option value=''>---------</option>\n";
26     for (i in deployment_nodes) {
27         dn = deployment_nodes[i];
28         if (dn[0] == deployment_id) {
29             html = html + '<option value="' + dn[1] + '">' + dn[2] + '</option>\n'
30         }
31     }
32     //console.log(html);
33     $("#"+node_select_id).empty().append(html);
34 }
35
36 function update_flavors(deployment_select, flavor_select_id) {
37     deployment_id = $(deployment_select).val();
38     html = "<option value=''>---------</option>\n";
39     for (i in deployment_flavors) {
40         dn = deployment_flavors[i];
41         if (dn[0] == deployment_id) {
42             html = html + '<option value="' + dn[1] + '">' + dn[2] + '</option>\n'
43         }
44     }
45     //console.log(html);
46     $("#"+flavor_select_id).empty().append(html);
47 }
48
49 function sliver_deployment_changed(deployment_select) {
50    /* the inscrutable jquery selector below says:
51       find the closest parent "tr" to the current element
52       then find the child with class "field-node"
53       then find the child with that is a select
54       then return its id
55     */
56     nodes_select_id = $($(deployment_select).closest('tr')[0]).find('.field-node select')[0].id;
57     update_nodes(deployment_select, nodes_select_id);
58     flavors_select_id = $($(deployment_select).closest('tr')[0]).find('.field-flavor select')[0].id;
59     update_flavors(deployment_select, flavors_select_id);
60 }
61
62 function update_slice_prefix(site_select, slice_name_id) {
63     site_id = $(site_select).val();
64     slice_prefix="";
65     for (i in site_login_bases) {
66         if (site_login_bases[i][0] == site_id) {
67             slice_prefix=site_login_bases[i][1]+"_";
68         }
69     }
70     $("#"+slice_name_id).val(slice_prefix); 
71 }
72 </script>
73
74 {% endblock %}
75