Skip to content
Snippets Groups Projects
Commit f118b879 authored by Jan-Hendrik Willms's avatar Jan-Hendrik Willms
Browse files

fix and failproof STUDIP.Tables.enhanceSortableTable, fixes #2728

Closes #2728

Merge request studip/studip!1846
parent 9eeb74b2
No related branches found
No related tags found
No related merge requests found
...@@ -23,6 +23,12 @@ class Table ...@@ -23,6 +23,12 @@ class Table
table = table.get(0); table = table.get(0);
} }
// Failproof
if (!table) {
console.error('Called enhanceSortableTable with invalid table object');
return;
}
await STUDIP.loadChunk('tablesorter'); await STUDIP.loadChunk('tablesorter');
// Iterate over the header columns and determine sorting mechanism // Iterate over the header columns and determine sorting mechanism
...@@ -63,7 +69,7 @@ class Table ...@@ -63,7 +69,7 @@ class Table
} }
// Get additional widgets // Get additional widgets
const widgets = $(table).data().sortWidgets ?? []; const widgets = table.dataset.sortWidgets ?? [];
// Actually activate table sorter // Actually activate table sorter
$(table).tablesorter({ $(table).tablesorter({
......
...@@ -560,7 +560,9 @@ STUDIP.MVV.Content = { ...@@ -560,7 +560,9 @@ STUDIP.MVV.Content = {
jQuery('body').trigger('ajaxLoaded'); jQuery('body').trigger('ajaxLoaded');
jQuery(row).show(); jQuery(row).show();
STUDIP.MVV.Sort.init(jQuery('.sortable')); STUDIP.MVV.Sort.init(jQuery('.sortable'));
STUDIP.Table.enhanceSortableTable(row.find('.sortable-table')); row.find('.sortable-table').each((index, element) => {
STUDIP.Table.enhanceSortableTable(element);
});
}); });
element.closest('tbody').toggleClass('collapsed not-collapsed'); element.closest('tbody').toggleClass('collapsed not-collapsed');
return false; return false;
...@@ -808,8 +810,9 @@ STUDIP.MVV.Aufbaustg = { ...@@ -808,8 +810,9 @@ STUDIP.MVV.Aufbaustg = {
data: $(df).serialize(), data: $(df).serialize(),
type: 'POST', type: 'POST',
success: function (data) { success: function (data) {
$('#mvv-aufbaustg-table').html($(data).html()); $('#mvv-aufbaustg-table').html($(data).html()).find('.sortable-table').each((index, element) => {
STUDIP.Table.enhanceSortableTable($('#mvv-aufbaustg-table').find('.sortable-table')); STUDIP.Table.enhanceSortableTable(element);
});
} }
}) })
}, 100); }, 100);
...@@ -820,8 +823,9 @@ STUDIP.MVV.Aufbaustg = { ...@@ -820,8 +823,9 @@ STUDIP.MVV.Aufbaustg = {
url: STUDIP.URLHelper.getURL('dispatch.php/studiengaenge/studiengaenge/aufbaustg_table/' + stg_id), url: STUDIP.URLHelper.getURL('dispatch.php/studiengaenge/studiengaenge/aufbaustg_table/' + stg_id),
type: 'GET', type: 'GET',
success: function (data) { success: function (data) {
$('#mvv-aufbaustg-table').html($(data).html()); $('#mvv-aufbaustg-table').html($(data).html()).find('.sortable-table').each((index, element) => {
STUDIP.Table.enhanceSortableTable($('#mvv-aufbaustg-table').find('.sortable-table')); STUDIP.Table.enhanceSortableTable(element);
});
} }
}) })
}, 100); }, 100);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment