blob: 7d6ee3c055ac6a62628fdbeb88d0aadb9adc2f52 [file] [log] [blame]
Scott Bakerac868ac2014-07-15 10:29:17 -07001/* This is an example that uses xoslib + datatables to display the developer
2 view.
3
4 For an example that uses xoslib + marionette, see xosDeveloper.js
5 */
6
7 function updateSliceTable(data) {
8 $('#developerView').html( '<table cellpadding="0" cellspacing="0" border="0" class="display" id="dynamicusersliceinfo"></table>' );
9 var actualEntries = [];
10
11 for (rowkey in data.models) {
12 row = data.models[rowkey];
13 slicename = row.get("name");
14 sliceid = row.get("id");
Scott Bakere0e407a2015-01-20 17:02:53 -080015 role = row.get("sliceInfo").roles[0] || "";
Scott Bakerac868ac2014-07-15 10:29:17 -070016 slivercount = row.get("sliceInfo").sliverCount;
17 sitecount = row.get("sliceInfo").siteCount;
Scott Baker00363ea2014-08-28 14:47:29 -070018 backendHtml = row.get("backendHtml")
Scott Baker2dd4a002014-07-15 10:38:06 -070019
Scott Bakere0e407a2015-01-20 17:02:53 -080020 //if (! role) {
21 // continue;
22 //}
23
24 if (! row.get("current_user_can_see") ) {
Scott Baker2dd4a002014-07-15 10:38:06 -070025 continue;
26 }
27
Scott Baker00363ea2014-08-28 14:47:29 -070028 actualEntries.push([backendHtml + ' <a href="/admin/core/slice/' + sliceid + '">' + slicename + '</a>',
Scott Bakerac868ac2014-07-15 10:29:17 -070029 role, slivercount, sitecount]);
30 }
31 oTable = $('#dynamicusersliceinfo').dataTable( {
32 "bJQueryUI": true,
33 "aaData": actualEntries ,
34 "bStateSave": true,
35 "aoColumns": [
36 { "sTitle": "Slice" },
37 { "sTitle": "Privilege" , sClass: "alignCenter"},
38 { "sTitle": "Number of Slivers" , sClass: "alignCenter"},
39 { "sTitle": "Number of Sites" , sClass: "alignCenter"},
40 ]
41 } );
42}
43
44$(document).ready(function(){
Scott Baker48c52bb2014-07-15 11:23:03 -070045 xos.slicesPlus.on("change", function() { /*console.log("change");*/ updateSliceTable(xos.slicesPlus); });
46 xos.slicesPlus.on("remove", function() { /*console.log("sort");*/ updateSliceTable(xos.slicesPlus); });
47 xos.slicesPlus.on("sort", function() { /*console.log("sort");*/ updateSliceTable(xos.slicesPlus); });
Scott Bakerac868ac2014-07-15 10:29:17 -070048
49 xos.slicesPlus.startPolling();
50});
51