major updates to slice reservation page and plugins
[myslice.git] / portal / templates / base.html
1 {% load portal_filters %}
2 {# This is required by insert_above #}{% insert_handler %}<!DOCTYPE html>
3 <html lang="en"><head>
4 <title>{{theme}} portal - {{ section }}</title>
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <link rel="shortcut icon" href="/static/img/favicon_fed4fire.ico">
7 {# This is where insert_str will end up #}{% media_container prelude %}
8 {% include 'messages-transient-header.html' %}
9 <script type="text/javascript"> {# raw js code - use {% insert prelude_js %} ... {% endinsert %} #} {% container prelude_js %}</script>
10 <script src="{{ STATIC_URL }}js/jquery.dataTables.min.js"></script>
11 <script src="{{ STATIC_URL }}js/bootstrap.datatables.js"></script>
12 <!-- <script src="{{ STATIC_URL }}js/stash.min.js"></script> -->
13 <script src="{{ STATIC_URL }}js/myslice.js"></script>
14 <script src="{{ STATIC_URL }}js/myslice-ui.js"></script>
15 <style type="text/css">{# In case we need to add raw css code #}{% container prelude_css %}</style>
16 {{ header_prelude }}
17 {% block head %} {% endblock head %}
18 {# let's add these ones no matter what #}
19 {% insert_str prelude "js/jquery.min.js" %}
20 {% insert_str prelude "js/angular/angular.min.js" %}
21 {% insert_str prelude "js/jquery.html5storage.min.js" %}
22 {% insert_str prelude "js/messages-runtime.js" %}
23 {% insert_str prelude "js/class.js" %}
24 {% insert_str prelude "js/plugin-helper.js" %}
25 {% insert_str prelude "js/mustache.js" %}
26 {% insert_str prelude "js/hashtable.js" %}
27 {% insert_str prelude "js/plugin.js" %}
28 {% insert_str prelude "js/manifold.js" %}
29 {% insert_str prelude "css/manifold.css" %}
30 {% insert_str prelude "css/plugin.css" %}
31 {% insert_str prelude "js/bootstrap.js" %}
32 {% insert_str prelude "css/bootstrap.css" %}
33 {% insert_str prelude "js/bootstrap-datepicker.js" %}
34 {% insert_str prelude "css/datepicker.css" %}
35 {% insert_str prelude "js/bootstrap-slider.js" %}
36 {% insert_str prelude "css/slider.css" %}
37 {% insert_str prelude "css/topmenu.css" %}
38 {% insert_str prelude "js/logout.js" %}
39 <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}css/{{ theme }}.css">
40
41 <script type="text/javascript">
42 /*
43 XXX TODO: session
44 This list of slices should go into SESSION !
45 */
46 $(document).ready(function() {
47     {% if username %}
48     myslice.login();
49
50     user = myslice.user();
51     
52     var slices = [];
53     if($.isEmptyObject(user)){
54         $.post("/rest/user/",{'filters':{'user_hrn':'$user_hrn'}}, function( data ) {
55             if(data.length > 0){
56                 slices = data[0].slices;  
57             }else{
58                 slices.push("no slice");
59             }
60             drawSlices(slices);
61         });
62     }else{
63         slices = user.slices;
64         drawSlices(slices);
65     }
66     function drawSlices(slices){
67         var items = [];
68         $.each( slices, function(i, val) {
69             items.push( "<li><a href=\"/slice/"+val+"\">" + val + "</a></li>" );
70         });
71         $("div#home-slice-list").html($( "<ul/>", { html: items.join( "" ) }));
72         $("ul#dropdown-slice-list").append(items.join( "" ));
73     }
74     {% endif %}
75 });
76 </script>
77 </head>
78 <body ng-app="ManifoldApp">
79 {% block container %}
80         {% block topmenu %}
81         {% widget "_widget-topmenu.html" %}
82         {% endblock topmenu %}
83         {% include 'messages-transient.html' %}
84         {% block base_content %}
85         {% endblock %}
86 {% endblock container %}
87 </body>
88 </html>