mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Parametarized datatable sorting function
This commit is contained in:
parent
ebad678bab
commit
3e4c1f9121
@ -30,6 +30,15 @@ $.fn.datatables_extended = function(settings){
|
||||
}
|
||||
//--- End of EMM related codes
|
||||
|
||||
/*
|
||||
* Work around for accessing settings params inside datatable functions
|
||||
*/
|
||||
if(settings != null && settings.sorting != null && settings.sorting != undefined && settings.sorting){
|
||||
elem.addClass('sorting-enabled');
|
||||
}else{
|
||||
elem.addClass('sorting-disabled');
|
||||
}
|
||||
|
||||
$(elem).DataTable(
|
||||
$.extend({},{
|
||||
bSortCellsTop: true,
|
||||
@ -132,24 +141,41 @@ $.fn.datatables_extended = function(settings){
|
||||
/**
|
||||
* create sorting dropdown menu for list table advance operations
|
||||
*/
|
||||
var table = this;
|
||||
if(table.hasClass('sorting-enabled')){
|
||||
var dropdownmenu = $('<ul class="dropdown-menu arrow arrow-top-right dark sort-list add-margin-top-2x"><li class="dropdown-header">Sort by</li></ul>');
|
||||
$('.sort-row th', elem).each(function () {
|
||||
if (!$(this).hasClass('no-sort')) {
|
||||
dropdownmenu.append('<li><a href="#' + $(this).html() + '" data-column="' + $(this).index() + '">' + $(this).html() + '</a></li>');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* append advance operations to list table toolbar
|
||||
*/
|
||||
$('.dataTable.list-table').closest('.dataTables_wrapper').find('.dataTablesTop .dataTables_toolbar').html('' +
|
||||
'<ul class="nav nav-pills navbar-right remove-margin" role="tablist">' +
|
||||
function getAdvanceToolBar(){
|
||||
if(table.hasClass('sorting-enabled')){
|
||||
return '<ul class="nav nav-pills navbar-right remove-margin" role="tablist">' +
|
||||
'<li><button data-click-event="toggle-selectable" class="btn btn-default btn-primary select-enable-btn">Select</li>' +
|
||||
'<li><button data-click-event="toggle-selected" id="dt-select-all" class="btn btn-default btn-primary disabled">Select All</li>' +
|
||||
'<li><button data-click-event="toggle-list-view" data-view="grid" class="btn btn-default"><i class="fw fw-grid"></i></button></li>' +
|
||||
'<li><button data-click-event="toggle-list-view" data-view="list" class="btn btn-default"><i class="fw fw-list"></i></button></li>' +
|
||||
'<li><button class="btn btn-default" data-toggle="dropdown"><i class="fw fw-sort"></i></button>' + dropdownmenu[0].outerHTML + '</li>' +
|
||||
'</ul>'
|
||||
}else{
|
||||
return '<ul class="nav nav-pills navbar-right remove-margin" role="tablist">' +
|
||||
'<li><button data-click-event="toggle-selectable" class="btn btn-default btn-primary select-enable-btn">Select</li>' +
|
||||
'<li><button data-click-event="toggle-selected" id="dt-select-all" class="btn btn-default btn-primary disabled">Select All</li>' +
|
||||
'<li><button data-click-event="toggle-list-view" data-view="grid" class="btn btn-default"><i class="fw fw-grid"></i></button></li>' +
|
||||
'<li><button data-click-event="toggle-list-view" data-view="list" class="btn btn-default"><i class="fw fw-list"></i></button></li>' +
|
||||
'</ul>'
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* append advance operations to list table toolbar
|
||||
*/
|
||||
$('.dataTable.list-table').closest('.dataTables_wrapper').find('.dataTablesTop .dataTables_toolbar').html(
|
||||
getAdvanceToolBar()
|
||||
);
|
||||
|
||||
/**
|
||||
|
||||
@ -38,6 +38,15 @@ $.fn.datatables_extended_serverside_paging = function (settings , url, dataFilte
|
||||
$(document).on('click','.viewEnabledIcon',InitiateViewOption);
|
||||
}
|
||||
|
||||
/*
|
||||
* Work around for accessing settings params inside datatable functions
|
||||
*/
|
||||
if(settings != null && settings.sorting != null && settings.sorting != undefined && settings.sorting){
|
||||
elem.addClass('sorting-enabled');
|
||||
}else{
|
||||
elem.addClass('sorting-disabled');
|
||||
}
|
||||
|
||||
var deviceType;
|
||||
var ownership;
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user