TMP fix: base.html template Query myslice:user is faster than user
[myslice.git] / portal / templates / base.html
index 6bb7e23..cc60f7f 100644 (file)
@@ -7,7 +7,9 @@
 {# This is where insert_str will end up #}{% media_container prelude %}
 {% include 'messages-transient-header.html' %}
 <script type="text/javascript"> {# raw js code - use {% insert prelude_js %} ... {% endinsert %} #} {% container prelude_js %}</script>
+<!--<script src="{{ STATIC_URL }}js/jquery-ui.js"></script>-->
 <script src="{{ STATIC_URL }}js/jquery.dataTables.min.js"></script>
+<script src="{{ STATIC_URL }}js/jquery.qtip.min.js"></script>
 <script src="{{ STATIC_URL }}js/bootstrap.datatables.js"></script>
 <!-- <script src="{{ STATIC_URL }}js/stash.min.js"></script> -->
 <script src="{{ STATIC_URL }}js/myslice.js"></script>
 {% block head %} {% endblock head %}
 {# let's add these ones no matter what #}
 {% insert_str prelude "js/jquery.min.js" %}
+{% insert_str prelude "js/angular/angular.min.js" %}
 {% insert_str prelude "js/jquery.html5storage.min.js" %}
 {% insert_str prelude "js/messages-runtime.js" %}
 {% insert_str prelude "js/class.js" %}
 {% insert_str prelude "js/plugin-helper.js" %}
 {% insert_str prelude "js/mustache.js" %}
+{% insert_str prelude "js/hashtable.js" %}
 {% insert_str prelude "js/plugin.js" %}
 {% insert_str prelude "js/manifold.js" %}
 {% insert_str prelude "css/manifold.css" %}
 {% insert_str prelude "css/plugin.css" %}
 {% insert_str prelude "js/bootstrap.js" %}
 {% insert_str prelude "css/bootstrap.css" %}
+{% insert_str prelude "js/bootstrap-datepicker.js" %}
+{% insert_str prelude "css/datepicker.css" %}
+{% insert_str prelude "js/bootstrap-slider.js" %}
+{% insert_str prelude "css/slider.css" %}
 {% insert_str prelude "css/topmenu.css" %}
 {% insert_str prelude "js/logout.js" %}
 <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}css/{{ theme }}.css">
+<link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}css/jquery.qtip.min.css">
+
 
 <script type="text/javascript">
 /*
@@ -38,41 +48,65 @@ XXX TODO: session
 This list of slices should go into SESSION !
 */
 $(document).ready(function() {
+    {% if username %}
+    myslice.login();
 
     user = myslice.user();
-    if(user.length>0){
-       $.each( user.slices, function(i, val) {
-               items.push( "<li><a href=\"/slice/"+val+"\">" + val + "</a></li>" );
+    
+    var slices = [];
+    if($.isEmptyObject(user)){
+        $.post("/rest/myslice:user/",{'filters':{'user_hrn':'$user_hrn'}}, function( data ) {
+            if(data.length > 0){
+                drawSlices(data[0].slices);  
+            }else{
+               $("div#home-slice-list").html(
+                                       "<div>You do not yet have a slice</div>");
+                       $("ul#dropdown-slice-list").append("<li>no slice</li>");
+                slices.push("no slice");
+            }
        });
-       $("div#home-slice-list").html($( "<ul/>", { html: items.join( "" ) }));
-       $("ul#dropdown-slice-list").append(items.join( "" ));
+    }else{
+        slices = user.slices;
+        drawSlices(slices);
+    }
+
+    /*
+        Launch queries to get the resources and leases in Manifold Cache
+    */
+        
+    function drawSlices(slices){
+        var items = [];
+               
+        $.each( slices, function(i, val) {
+            items.push( "<li><a href=\"/resources/"+val+"\">" + val + "</a></li>" );
+            /*
+            // Launch a Query for each slice to get resources and leases in Manifold Cache
+            // Now only done in Homeview to speed up the other pages
+            $.post("/rest/slice/", { 'filters': { 'slice_hrn' : val } }, function(data) {
+            });
+            */
+        });
+        $("div#home-slice-list").html($( "<ul/>", { html: items.join( "" ) }));
+        $("ul#dropdown-slice-list").append(items.join( "" ));
     }
-       {% if person %}
-    $.post("/rest/user/",{'filters':{'user_hrn':'$user_hrn'}}, function( data ) {
-         var items = [];
-      if(data.length > 0){
-                 $.each( data[0].slices, function(i, val) {
-                       items.push( "<li><a href=\"/slice/"+val+"\">" + val + "</a></li>" );
-                 });
-                 
-                 $("div#home-slice-list").html($( "<ul/>", { html: items.join( "" ) }));
-                 $("ul#dropdown-slice-list").append(items.join( "" ));
-         }else{
-                 $("div#home-slice-list").html("no slice");
-      } 
-       });
-       {% endif %}
+    {% endif %}
+       jQuery('[title!=""]').qtip();
 });
 </script>
 </head>
-<body>
+<body ng-app="ManifoldApp">
 {% block container %}
        {% block topmenu %}
        {% widget "_widget-topmenu.html" %}
        {% endblock topmenu %}
-       {% include 'messages-transient.html' %}
        {% block base_content %}
        {% endblock %}
 {% endblock container %}
+{% widget "_footer.html" %}
+<div class="loading">
+       <div><img src="{{ STATIC_URL }}/img/loading.gif" /> Loading...</div>
+       <div>&nbsp;</div>
+       <div class="message"></div>
+</div>
 </body>
 </html>