trilium/src/public/javascripts/dialogs/branch_prefix.js

50 lines
1.3 KiB
JavaScript
Raw Normal View History

import treeService from '../services/tree.js';
import server from '../services/server.js';
2018-03-26 10:37:02 +08:00
import treeCache from "../services/tree_cache.js";
import treeUtils from "../services/tree_utils.js";
2019-10-20 16:00:18 +08:00
import toastService from "../services/toast.js";
import utils from "../services/utils.js";
2017-11-27 11:34:25 +08:00
const $dialog = $("#branch-prefix-dialog");
const $form = $("#branch-prefix-form");
const $treePrefixInput = $("#branch-prefix-input");
const $noteTitle = $('#branch-prefix-note-title');
2017-11-28 23:17:30 +08:00
let branchId;
2017-11-27 11:34:25 +08:00
export async function showDialog(node) {
utils.closeActiveDialog();
glob.activeDialog = $dialog;
2017-11-27 11:34:25 +08:00
$dialog.modal();
2017-11-27 11:34:25 +08:00
branchId = node.data.branchId;
const branch = treeCache.getBranch(branchId);
2017-11-27 11:34:25 +08:00
$treePrefixInput.val(branch.prefix);
2017-11-27 11:34:25 +08:00
const noteTitle = await treeUtils.getNoteTitle(node.data.noteId);
2017-11-27 11:34:25 +08:00
$noteTitle.text(" - " + noteTitle);
}
2017-11-27 11:34:25 +08:00
2018-03-28 10:42:46 +08:00
async function savePrefix() {
const prefix = $treePrefixInput.val();
2017-11-27 11:34:25 +08:00
2018-04-02 08:33:10 +08:00
await server.put('branches/' + branchId + '/set-prefix', { prefix: prefix });
2018-03-28 10:42:46 +08:00
await treeService.setPrefix(branchId, prefix);
2017-11-27 11:34:25 +08:00
$dialog.modal('hide');
2018-12-29 17:35:44 +08:00
2019-10-20 16:00:18 +08:00
toastService.showMessage("Branch prefix has been saved.");
2018-03-28 10:42:46 +08:00
}
2019-11-10 00:45:22 +08:00
$form.on('submit', () => {
2018-03-28 10:42:46 +08:00
savePrefix();
return false;
});
2017-11-27 11:34:25 +08:00
2019-11-10 00:45:22 +08:00
$dialog.on('shown.bs.modal', () => $treePrefixInput.trigger('focus'));