we now add link to exact history revision to recent changes

This commit is contained in:
azivner 2017-10-02 23:38:05 -04:00
parent ade9da4a8a
commit 8f91b8f5d5
3 changed files with 24 additions and 9 deletions

4
TODO
View File

@ -4,10 +4,10 @@ New features:
- what links here
- link between encrypted notes could be done by encrypting note_ids of both sides of relations. Encryption must be
deterministic to allow lookup by cipher text
- recent changes - link to note should lead to the revision
- recent changes - links don't look like links (no underline, black)
- db upgrade / migration
- db backup into directory
- recent notes can either go to or add link
- DONE: recent notes can either go to or add link
- might do the same thing with alt-j and alt-l
- ctrl-b nad linkem by mohlo byt goto do notu
- potencialne nova navigace back - forward

View File

@ -1,6 +1,6 @@
let globalHistoryItems = null;
$(document).bind('keydown', 'alt+h', function() {
function showNoteHistoryDialog(noteId, noteHistoryId) {
$("#noteHistoryDialog").dialog({
modal: true,
width: 800,
@ -11,7 +11,7 @@ $(document).bind('keydown', 'alt+h', function() {
$("#noteHistoryContent").empty();
$.ajax({
url: baseApiUrl + 'notes-history/' + globalCurrentNote.detail.note_id,
url: baseApiUrl + 'notes-history/' + noteId,
type: 'GET',
success: function (result) {
globalHistoryItems = result;
@ -26,13 +26,19 @@ $(document).bind('keydown', 'alt+h', function() {
}
if (result.length > 0) {
const firstOptionValue = $("#noteHistoryList option:first").val();
if (!noteHistoryId) {
noteHistoryId = $("#noteHistoryList option:first").val();
}
$("#noteHistoryList").val(firstOptionValue).trigger('change');
$("#noteHistoryList").val(noteHistoryId).trigger('change');
}
},
error: () => alert("Error getting note history.")
});
}
$(document).bind('keydown', 'alt+h', function() {
showNoteHistoryDialog(globalCurrentNote.detail.note_id);
});
$("#noteHistoryList").on('change', () => {

View File

@ -27,6 +27,7 @@ $(document).bind('keydown', 'alt+r', function() {
dateDay.setSeconds(0);
dateDay.setMilliseconds(0);
// FIXME: we can use Map object instead to avoid this hack
const dateDayTS = dateDay.getTime(); // we can't use dateDay as key because complex objects can't be keys
if (!groupedByDate[dateDayTS]) {
@ -51,11 +52,19 @@ $(document).bind('keydown', 'alt+r', function() {
const formattedTime = formatTime(getDateFromTS(dayChanges.date_modified));
const noteLink = $("<a>", {
href: 'app#' + dayChanges.note_id,
text: dayChanges.note_title
href: 'app#' + dayChanges.note_id,
text: dayChanges.note_title
});
changesListEl.append($('<li>').append(formattedTime + ' - ').append(noteLink));
const revLink = $("<a>", {
href: "javascript: showNoteHistoryDialog('" + dayChanges.note_id + "', " + dayChanges.id + ");",
text: 'rev'
});
changesListEl.append($('<li>')
.append(formattedTime + ' - ')
.append(noteLink)
.append(' (').append(revLink).append(')'));
}
$("#recentChangesDialog").append(dayEl);