trilium/static/js/note_history.js

44 lines
1.4 KiB
JavaScript
Raw Normal View History

let globalHistoryItems = null;
2017-09-22 10:20:10 +08:00
$(document).bind('keydown', 'alt+h', function() {
$("#noteHistoryDialog").dialog({
modal: true,
width: 800,
height: 700
});
$("#noteHistoryList").empty();
$("#noteHistoryContent").empty();
$.ajax({
2017-09-30 22:05:12 +08:00
url: baseApiUrl + 'notes-history/' + globalCurrentNote.detail.note_id,
2017-09-22 10:20:10 +08:00
type: 'GET',
success: function (result) {
globalHistoryItems = result;
for (const row of result) {
const dateModified = new Date(row.date_modified * 1000);
$("#noteHistoryList").append($('<option>', {
value: row.id,
2017-09-27 11:23:03 +08:00
text: formatDateTime(dateModified)
}));
2017-09-22 10:20:10 +08:00
}
if (result.length > 0) {
const firstOptionValue = $("#noteHistoryList option:first").val();
2017-09-22 10:20:10 +08:00
$("#noteHistoryList").val(firstOptionValue).trigger('change');
2017-09-22 10:20:10 +08:00
}
},
error: () => alert("Error getting note history.")
});
});
$("#noteHistoryList").on('change', () => {
const optVal = $("#noteHistoryList").find(":selected").val();
const historyItem = globalHistoryItems.find(r => r.id == optVal); // non-strict comparison is important here!!!s
$("#noteHistoryTitle").html(historyItem.note_title);
$("#noteHistoryContent").html(historyItem.note_text);
2017-09-22 10:20:10 +08:00
});