72 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| <table id="nsbi-data-table" class="table table-bordered table-hover" width="100%" cellspacing="0">
 | |
|   <thead>
 | |
|     <tr>
 | |
|       <th>Model</th>
 | |
|       <th>Operating System Version</th>
 | |
|       <th>Count</th>
 | |
|     </tr>
 | |
|   </thead>
 | |
|   </tbody>
 | |
|     [% FOREACH row IN results %]
 | |
|     <tr>
 | |
|       <td>
 | |
|         <a href="[% search_device %]&q=[% row.model | uri %]&vendor=[% row.vendor | uri %]&model=[% row.model | uri %]">
 | |
|             [% row.vendor.ucfirst | html_entity %] [% row.model | html_entity %]</a>
 | |
|             [% IF row.os %] running "[% row.os | html_entity %]"[% END %]
 | |
|       </td>
 | |
|       <td>
 | |
|         <a class="nd_linkcell"
 | |
|           href="[% search_device %]&q=[% row.os_ver | uri %]&vendor=[% row.vendor | uri %]&model=[% row.model | uri %]&os=[% row.os | uri %]&os_ver=[% row.os_ver | uri %]&matchall=on">
 | |
|             [% row.os_ver | html_entity %]</a>
 | |
|       </td>
 | |
|       <td>[% row.os_ver_count | html_entity %]</td>
 | |
|     </tr>
 | |
|     [% END %]
 | |
|   </tbody>
 | |
| </table>
 | |
| 
 | |
| <style>
 | |
| tr.group,
 | |
| tr.group:hover {
 | |
|     background-color: #ddd !important;
 | |
| }
 | |
| </style>
 | |
| 
 | |
| <script>
 | |
| $(document).ready(function() {
 | |
|     var table = $('#nsbi-data-table').DataTable({
 | |
|         "columnDefs": [
 | |
|             { "visible": false, "targets": 0 }
 | |
|         ],
 | |
|         sort: false,
 | |
|         "drawCallback": function ( settings ) {
 | |
|             var api = this.api();
 | |
|             var rows = api.rows( {page:'current'} ).nodes();
 | |
|             var last=null;
 | |
|  
 | |
|             api.column(0, {page:'current'} ).data().each( function ( group, i ) {
 | |
|                 if ( last !== group ) {
 | |
|                     $(rows).eq( i ).before(
 | |
|                     '<tr class="group"><td colspan="2">'+group+'</td></tr>'
 | |
|                     );
 | |
| 
 | |
|                     last = group;
 | |
|                 }
 | |
|             } );
 | |
|         },
 | |
| [% INCLUDE 'ajax/datatabledefaults.tt' -%]
 | |
|     } );
 | |
|  
 | |
|     // Order by the grouping
 | |
|     $('#nsbi-data-table tbody').on( 'click', 'tr.group', function () {
 | |
|         var currentOrder = table.order()[0];
 | |
|         if ( currentOrder[0] === 0 && currentOrder[1] === 'asc' ) {
 | |
|             table.order( [ 0, 'desc' ] ).draw();
 | |
|         }
 | |
|         else {
 | |
|             table.order( [ 0, 'asc' ] ).draw();
 | |
|         }
 | |
|     } );
 | |
| } );
 | |
| </script>
 |