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

fixes #3637

Closes #3637

Merge request studip/studip!2518
parent e4d5193f
No related branches found
No related tags found
No related merge requests found
......@@ -643,7 +643,9 @@ class Admin_CoursesController extends AuthenticatedController
$d['contents'] .= '</ul></div>';
}
if (in_array('last_activity', $activated_fields)) {
$d['last_activity'] = strftime('%x', lastActivity($course->id));
$last_activity = lastActivity($course->id);
$d['last_activity'] = strftime('%x', $last_activity);
$d['last_activity_raw'] = $last_activity;
}
foreach (PluginManager::getInstance()->getPlugins('AdminCourseContents') as $plugin) {
......
......@@ -246,18 +246,22 @@ export default {
return collator.compare(striptags(a[sortby]), striptags(b[sortby]));
};
let is_numeric = true;
for (let i in array) {
if (striptags(array[i][sortby]) && isNaN(striptags(array[i][sortby]))) {
is_numeric = false;
break;
if (sortby === 'last_activity') {
sortFunction = (a, b) => a.last_activity_raw - b.last_activity_raw;
} else {
let is_numeric = true;
for (let i in array) {
if (striptags(array[i][sortby]) && isNaN(striptags(array[i][sortby]))) {
is_numeric = false;
break;
}
}
if (is_numeric) {
sortFunction = function (a, b) {
return (striptags(a[sortby]) ? parseInt(striptags(a[sortby]), 10) : 0)
- (striptags(b[sortby]) ? parseInt(striptags(b[sortby]), 10) : 0);
};
}
}
if (is_numeric) {
sortFunction = function (a, b) {
return (striptags(a[sortby]) ? parseInt(striptags(a[sortby]), 10) : 0)
- (striptags(b[sortby]) ? parseInt(striptags(b[sortby]), 10) : 0);
};
}
// Actual sort on copy of array
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment