This repository has been archived on 2019-10-12. You can view files and clone it, but cannot push or open issues or pull requests.
codimd_note_overview/static/js/file_reader.js
2019-01-25 02:10:13 +01:00

61 lines
1.8 KiB
JavaScript

function updateParent(notesArr) {
let parent = document.getElementById('sortable-wrapper');
parent.innerHTML = '';
for (let elem of notesArr) {
parent.appendChild(elem);
}
}
function convertToArray() {
var notes = document.getElementsByClassName("sortable");
var notesArr = [];
for (const node of notes) {
notesArr.push(node);
}
return notesArr;
}
function sortByTitle() {
var sort_by_title = function (a, b) {
let x = a.getElementsByClassName('card-title')[0];
let y = b.getElementsByClassName('card-title')[0];
return x.innerHTML.toLowerCase().localeCompare(y.innerHTML.toLowerCase());
};
var notesArr = convertToArray();
notesArr.sort(sort_by_title);
updateParent(notesArr);
}
function sortByDate() {
console.log('Sort Date');
var sort_by_date = function (a, b) {
a = a.getElementsByClassName('date')[0];
b = b.getElementsByClassName('date')[0];
if (a && b) {
a = a.innerHTML.split(' ');
let a_date = a[0].split('.');
let a_time = a[1].split(':');
b = b.innerHTML.split('\ ');
let b_date = b[0].split('.');
let b_time = b[1].split(':');
let x = new Date(a_date[2], a_date[1], a_date[0], a_time[0], a_time[1]).getTime();
let y = new Date(b_date[2], b_date[1], b_date[0], b_time[0], b_time[1]).getTime();
if (x === y) {
return 0;
} else if (x > y) {
return -1;
} else {
return 1;
}
} else {
return 0;
}
// return x.innerHTML.toLowerCase().localeCompare(y.innerHTML.toLowerCase());
};
var notesArr = convertToArray();
notesArr.sort(sort_by_date);
updateParent(notesArr);
}