X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Fquerytable%2Fstatic%2Fjs%2Fquerytable.js;h=76934e79b49ab90b7c5881e9b843d9f852071f0c;hb=d035a1f93e4acbeee79b7c8200264687d940ccc2;hp=8d931d59f770052b96af27cef39e2a65cefc4795;hpb=472a1ed07124ac7df43c71024c17ec72362486d8;p=myslice.git diff --git a/plugins/querytable/static/js/querytable.js b/plugins/querytable/static/js/querytable.js index 8d931d59..76934e79 100644 --- a/plugins/querytable/static/js/querytable.js +++ b/plugins/querytable/static/js/querytable.js @@ -10,14 +10,6 @@ QUERYTABLE_BGCOLOR_REMOVED = 2; (function($){ - - var QUERYTABLE_MAP = { - 'Facility': 'facility_name', - 'Testbed': 'testbed_name', - 'Resource name': 'hostname', - 'Type': 'type', - }; - var debug=false; // debug=true @@ -158,35 +150,45 @@ QUERYTABLE_BGCOLOR_REMOVED = 2; }); /* Processing hidden_columns */ - arr = []; - arr = $.map(Object.keys(QUERYTABLE_MAP), function(x, i) { return QUERYTABLE_MAP[x]; }); $.each(this.options.hidden_columns, function(i, field) { - is_inarray = $.inArray(field,arr); - if(is_inarray==-1){ - self.hide_column(field); - } + self.hide_column(field); }); $(".dataTables_filter").append("
"); $(".dataTables_filter input").css("width","100%"); // resource info var sTable = this.table; + var oSettings = this.table.fnSettings(); + var cols = oSettings.aoColumns; + var self = this; $('table.dataTable').delegate('a.resource-info','click',function() { var aPos = sTable.fnGetPosition( this.parentNode ); var aData = sTable.fnGetData( aPos[0] ); - //console.log(aData); - - var network_hrn = aData[18]; + console.log(aData); + + var index = {} + // XXX Loic @ Hardcoded !!! Maybe a loop over all fields would be better + index['network_hrn'] = self.getColIndex('network_hrn',cols); + var network_hrn = aData[index['network_hrn']]; + + index['hostname'] = self.getColIndex('hostname',cols); + index['urn'] = self.getColIndex('urn',cols); + index['type'] = self.getColIndex('type',cols); + //index['status'] = self.getColIndex('boot_state',cols); + index['available'] = self.getColIndex('available',cols); + index['testbed'] = self.getColIndex('testbed_name',cols); + index['facility'] = self.getColIndex('facility_name',cols); var resourceData = { - 'hostname' : strip(aData[2]), - 'urn' : aData[6], - 'type' : aData[3], - 'status' : aData[10], - 'testbed' : aData[4], - 'facility' : aData[5], + 'hostname' : strip(aData[index['hostname']]), + 'urn' : aData[index['urn']], + 'type' : aData[index['type']], + //'status' : aData[index['status']], + 'available' : aData[index['available']], + 'testbed' : aData[index['testbed']], + 'facility' : aData[index['facility']], }; - + /* //Greece: 37.6687092,22.2282404 if (network_hrn == 'omf.nitos') { var logo = 'nitos'; @@ -196,24 +198,27 @@ QUERYTABLE_BGCOLOR_REMOVED = 2; }; var coordinates = resourceLocation['latitude']+','+resourceLocation['longitude']; } else if (network_hrn == 'iotlab') { + */ + if (network_hrn == 'iotlab') { var logo = network_hrn; var s = resourceData['hostname'].split("."); var n = s[0].split("-"); resourceData['type'] = 'node ( Hardware: '+n[0]+' )'; var coordinates = resourceData['testbed']; } else { - var logo = network_hrn; + var logo = resourceData['testbed']; var resourceLocation = { - 'longitude' : aData[13], - 'latitude' : aData[23], + 'longitude' : aData[20], + 'latitude' : aData[17], }; var coordinates = resourceLocation['latitude']+','+resourceLocation['longitude']; + console.log(coordinates); } var modal = $('#resource-info-modal'); modal.find('.modal-title').text(resourceData['testbed'] + ': ' +resourceData['hostname']); table = modal.find('.modal-resource-info'); - table.html(''+resourceData['facility']+' - '+resourceData['testbed']+''); + table.html('
'+resourceData['facility']+' - '+resourceData['testbed']+'
'); for (var j in resourceData) { table.append('' + j + '' + resourceData[j] + ''); } @@ -531,11 +536,11 @@ QUERYTABLE_BGCOLOR_REMOVED = 2; this.set_bgcolor(data.value, QUERYTABLE_BGCOLOR_RESET); break; case STATE_SET_IN_PENDING: - this.set_checkbox_from_data(data.key, true); + this.set_checkbox_from_data(data.value, true); this.set_bgcolor(data.value, QUERYTABLE_BGCOLOR_ADDED); break; case STATE_SET_OUT_PENDING: - this.set_checkbox_from_data(data.key, false); + this.set_checkbox_from_data(data.value, false); this.set_bgcolor(data.value, QUERYTABLE_BGCOLOR_REMOVED); break; }