mirror of
https://github.com/zadam/trilium.git
synced 2024-12-26 17:21:23 +08:00
more actions on jump to note dialog
This commit is contained in:
parent
c8aaf6085d
commit
d98a5b6299
4 changed files with 62 additions and 24 deletions
|
@ -48,11 +48,11 @@ const addLink = (function() {
|
|||
}
|
||||
|
||||
formEl.submit(() => {
|
||||
let val = autoCompleteEl.val();
|
||||
const value = autoCompleteEl.val();
|
||||
|
||||
const noteId = link.getNodePathFromLabel(val);
|
||||
const notePath = link.getNodePathFromLabel(value);
|
||||
|
||||
if (noteId) {
|
||||
if (notePath) {
|
||||
const linkTitle = linkTitleEl.val();
|
||||
|
||||
dialogEl.dialog("close");
|
||||
|
@ -61,7 +61,7 @@ const addLink = (function() {
|
|||
|
||||
noteDetailEl.summernote('createLink', {
|
||||
text: linkTitle,
|
||||
url: 'app#' + noteId,
|
||||
url: 'app#' + notePath,
|
||||
isNewWindow: true
|
||||
});
|
||||
}
|
||||
|
|
|
@ -4,8 +4,11 @@ const jumpToNote = (function() {
|
|||
const dialogEl = $("#jump-to-note-dialog");
|
||||
const autoCompleteEl = $("#jump-to-note-autocomplete");
|
||||
const formEl = $("#jump-to-note-form");
|
||||
const noteDetailEl = $('#note-detail');
|
||||
|
||||
async function showDialog() {
|
||||
noteDetailEl.summernote('editor.saveRange');
|
||||
|
||||
glob.activeDialog = dialogEl;
|
||||
|
||||
autoCompleteEl.val('');
|
||||
|
@ -21,9 +24,13 @@ const jumpToNote = (function() {
|
|||
});
|
||||
}
|
||||
|
||||
function goToNote() {
|
||||
function getSelectedNotePath() {
|
||||
const val = autoCompleteEl.val();
|
||||
const notePath = link.getNodePathFromLabel(val);
|
||||
return link.getNodePathFromLabel(val);
|
||||
}
|
||||
|
||||
function goToNote() {
|
||||
const notePath = getSelectedNotePath();
|
||||
|
||||
if (notePath) {
|
||||
noteTree.activateNode(notePath);
|
||||
|
@ -37,9 +44,37 @@ const jumpToNote = (function() {
|
|||
formEl.submit(() => {
|
||||
const action = dialogEl.find("button:focus").val();
|
||||
|
||||
if (action === 'jump') {
|
||||
if (!action || action === 'jump') {
|
||||
goToNote();
|
||||
}
|
||||
else if (action === 'add-link') {
|
||||
const notePath = getSelectedNotePath();
|
||||
|
||||
if (notePath) {
|
||||
dialogEl.dialog("close");
|
||||
|
||||
noteDetailEl.summernote('editor.restoreRange');
|
||||
|
||||
noteDetailEl.summernote('createLink', {
|
||||
text: noteTree.getNoteTitle(notePath),
|
||||
url: 'app#' + notePath,
|
||||
isNewWindow: true
|
||||
});
|
||||
}
|
||||
}
|
||||
else if (action === 'add-current-as-child') {
|
||||
treeUtils.addAsChild(getSelectedNotePath(), noteTree.getCurrentNotePath());
|
||||
|
||||
dialogEl.dialog("close");
|
||||
}
|
||||
else if (action === 'add-selected-as-child') {
|
||||
treeUtils.addAsChild(noteTree.getCurrentNotePath(), getSelectedNotePath());
|
||||
|
||||
dialogEl.dialog("close");
|
||||
}
|
||||
else {
|
||||
console.error("Unknown action=" + action);
|
||||
}
|
||||
|
||||
return false;
|
||||
});
|
||||
|
|
|
@ -103,27 +103,16 @@ const recentNotes = (function() {
|
|||
});
|
||||
}
|
||||
|
||||
async function addAsChild(parentNotePath, childNotePath) {
|
||||
const parentNoteId = treeUtils.getNoteIdFromNotePath(parentNotePath);
|
||||
const childNoteId = treeUtils.getNoteIdFromNotePath(childNotePath);
|
||||
|
||||
await $.ajax({
|
||||
url: baseApiUrl + 'tree/' + parentNoteId + '/addChild/' + childNoteId,
|
||||
type: 'PUT',
|
||||
error: () => showError("Error adding child.")
|
||||
});
|
||||
async function addCurrentAsChild() {
|
||||
await treeUtils.addAsChild(getSelectedNotePath(), noteTree.getCurrentNotePath());
|
||||
|
||||
dialogEl.dialog("close");
|
||||
|
||||
await noteTree.reload();
|
||||
}
|
||||
|
||||
async function addCurrentAsChild() {
|
||||
await addAsChild(getSelectedNotePath(), noteTree.getCurrentNotePath());
|
||||
}
|
||||
|
||||
async function addRecentAsChild() {
|
||||
addAsChild(noteTree.getCurrentNotePath(), getSelectedNotePath());
|
||||
await treeUtils.addAsChild(noteTree.getCurrentNotePath(), getSelectedNotePath());
|
||||
|
||||
dialogEl.dialog("close");
|
||||
}
|
||||
|
||||
selectBoxEl.keydown(e => {
|
||||
|
|
|
@ -66,6 +66,19 @@ const treeUtils = (function() {
|
|||
return path.reverse().join("/");
|
||||
}
|
||||
|
||||
async function addAsChild(parentNotePath, childNotePath) {
|
||||
const parentNoteId = treeUtils.getNoteIdFromNotePath(parentNotePath);
|
||||
const childNoteId = treeUtils.getNoteIdFromNotePath(childNotePath);
|
||||
|
||||
await $.ajax({
|
||||
url: baseApiUrl + 'tree/' + parentNoteId + '/addChild/' + childNoteId,
|
||||
type: 'PUT',
|
||||
error: () => showError("Error adding child.")
|
||||
});
|
||||
|
||||
await noteTree.reload();
|
||||
}
|
||||
|
||||
return {
|
||||
getParentNoteTreeId,
|
||||
getParentProtectedStatus,
|
||||
|
@ -74,6 +87,7 @@ const treeUtils = (function() {
|
|||
getFullName,
|
||||
getFullNameForPath,
|
||||
getNotePath,
|
||||
getNoteIdFromNotePath
|
||||
getNoteIdFromNotePath,
|
||||
addAsChild
|
||||
};
|
||||
})();
|
Loading…
Reference in a new issue