Instituiton - list of slices - ple.upmc hardcoded
authorJordan Augé <jordan.auge@lip6.fr>
Wed, 26 Feb 2014 16:27:20 +0000 (17:27 +0100)
committerJordan Augé <jordan.auge@lip6.fr>
Wed, 26 Feb 2014 16:27:20 +0000 (17:27 +0100)
portal/templates/institution.html
rest/__init__.py

index 0f68468..44aa55d 100644 (file)
     <div class="home-panel" id="slices" style="display:none;">
         <br>
         <h1>Slices: onelab.upmc <button id="createslice" type="button" class="btn btn-default"><span class="glyphicon glyphicon-plus"></span> Create a Slice</button></h1>
-        <table>
-            <tr>
-                <th>+/-</th>
-                <th>slice_hrn</th>
-                <th>number of users</th>
-                <th>expiration date</th>
-            </tr>
-            <tr>
-                <td><input type="checkbox"></td>
-                <td><a href="/portal/slice/ple.upmc.myslicedemo">onelab.upmc.myslicedemo</a></td>
-                <td>3</td>
-                <td>2014-02-11 17:20:37</td>
-            </tr>
-            <tr>
-                <td><input type="checkbox"></td>
-                <td><a href="/portal/slice/ple.upmc.zzzz">onelab.upmc.zzzz</a></td>
-                <td>3</td>
-                <td>2014-02-11 17:20:37</td>
-            </tr>
-        </table>
-        <div>
-            <button id="renewslices" type="button" class="btn btn-default"><span class="glyphicon glyphicon-refresh"></span> Renew Slices</button>
-            <button id="deleteslices" type="button" class="btn btn-default"><span class="glyphicon glyphicon-remove"></span> Delete Slices</button>
+        <div id="slice-tab-loading"><img src="{{ STATIC_URL }}img/loading.gif" alt="Loading Slices" /></div>
+        <div id="slice-tab-loaded" style="display:none;">
+            <table id="slice-tab">
+                <tr>
+                    <th>+/-</th>
+                    <th>slice_hrn</th>
+                    <th>users</th>
+                    <th>url</th>
+                    <th>nodes</th>
+                    <th>expiration</th>
+                </tr>
+            </table>
+            <div>
+                <button id="renewslices" type="button" class="btn btn-default"><span class="glyphicon glyphicon-refresh"></span> Renew Slices</button>
+                <button id="deleteslices" type="button" class="btn btn-default"><span class="glyphicon glyphicon-remove"></span> Delete Slices</button>
+            </div>
         </div>
     </div>
 </div>
             window.location="/portal/slice_request/";
             */
         });
+        {% if person %}
+        $.getJSON("/rest/slice/", function( data ) {
+            var list_slices = [];
+            var table_slices = [];
+            /* "slice_hrn", "slice_description", "slice_type", "parent_authority", "created", "nodes", "slice_url", "slice_last_updated", "user", "slice_urn", "slice_expires" */
+            $.each( data, function( key, val ) {
+                list_slices.push( "<li><a href=\"portal/slice/"+val.slice_hrn+"\">" + val.slice_hrn + "</a></li>" );
+                if(val.nodes=="undefined" || val.nodes==null){
+                    nodes_length=0;
+                }else{
+                    nodes_length=val.nodes.length;
+                }
+
+                if(val.user=="undefined" || val.user==null){
+                    user_length=0;
+                }else{
+                    user_length=val.user.length;
+                }
+
+                if(val.slice_url=="undefined" || val.slice_url==null){
+                    slice_url="";
+                }else{
+                    slice_url="<a href='"+val.slice_url+"' target='_blank'>"+val.slice_url+"</a>";
+                }
+                
+                slice_row = "<tr>";
+                slice_row += "<td><input type='checkbox'></td>";
+                slice_row += "<td><a href=\"/portal/slice/"+val.slice_hrn+"\">" + val.slice_hrn + "</a></td>";
+                slice_row += "<td>"+user_length+"</td>";
+                slice_row += "<td>"+slice_url+"</td>";
+                slice_row += "<td>"+nodes_length+"</td>";
+                slice_row += "<td>"+val.slice_expires+"</td>";
+                table_slices.push(slice_row);
+                
+            });
+           
+            /* $("div#slice-list").html($( "<ul/>", { html: list_slices.join( "" ) })); */
+            $("table#slice-tab tr:last").after(table_slices.join( "" ));
+            $("div#slice-tab-loaded").css("display","block");
+            $("div#slice-tab-loading").css("display","none");
+         });
+         {% endif %}
     });
 </script>
 {% endblock unfold_main %}
index d1ac9ea..acc953d 100644 (file)
@@ -13,7 +13,7 @@ from string import join
 import decimal
 import datetime
 import json
-import datetime
+from json import encoder
 
 # handles serialization of datetime in json
 DateEncoder = lambda obj: obj.strftime("%B %d, %Y %H:%M:%S") if isinstance(obj, datetime.datetime) else None