scinote-web/app/assets/javascripts/my_modules/repositories.js

54 lines
1.4 KiB
JavaScript
Raw Normal View History

2020-04-07 01:52:41 +08:00
var MyModuleRepositories = (function() {
var SIMPLE_TABLE;
function renderSimpleTable(tableContainer) {
SIMPLE_TABLE = $(tableContainer).DataTable({
dom: "Rt<'pagination-row'<'pagination-actions'p>>",
processing: true,
serverSide: true,
responsive: true,
pageLength: 5,
order: [[3, 'asc']],
sScrollX: '100%',
sScrollXInner: '100%',
destroy: true,
ajax: {
url: $(tableContainer).data('source'),
data: function(d) {
d.assigned = 'assigned';
d.simple_view = 'true';
},
global: false,
type: 'GET'
},
columns: (function() {
var columns = $(tableContainer).data('default-table-columns');
for (let i = 0; i < columns.length; i += 1) {
columns[i].data = String(i);
columns[i].defaultContent = '';
}
return columns;
}())
});
}
function initSimpleTable() {
$('#assigned-items-container').on('show.bs.collapse', '.assigned-repository-container', function() {
var repositoryContainer = $(this);
var repositoryTemplate = $($('#my-module-repository-simple-template').html());
repositoryTemplate.attr('data-source', $(this).data('repository-url'));
repositoryContainer.html(repositoryTemplate);
renderSimpleTable(repositoryTemplate);
});
}
return {
init: () => {
initSimpleTable();
}
};
}());
MyModuleRepositories.init();