mirror of
https://github.com/zadam/trilium.git
synced 2026-05-07 19:56:43 +02:00
fix(server): attachments not copied for templates (closes #7612)
This commit is contained in:
@@ -97,6 +97,23 @@ function copyChildAttributes(parentNote: BNote, childNote: BNote) {
|
||||
}
|
||||
}
|
||||
|
||||
function copyAttachments(origNote: BNote, newNote: BNote) {
|
||||
for (const attachment of origNote.getAttachments()) {
|
||||
if (attachment.role === "image") {
|
||||
// Handled separately, see `checkImageAttachments`.
|
||||
continue;
|
||||
}
|
||||
|
||||
const newAttachment = new BAttachment({
|
||||
...attachment,
|
||||
attachmentId: undefined,
|
||||
ownerId: newNote.noteId
|
||||
});
|
||||
|
||||
newAttachment.save();
|
||||
}
|
||||
}
|
||||
|
||||
function getNewNoteTitle(parentNote: BNote) {
|
||||
let title = t("notes.new-note");
|
||||
|
||||
@@ -225,11 +242,13 @@ function createNewNote(params: NoteParams): {
|
||||
asyncPostProcessContent(note, params.content);
|
||||
|
||||
if (params.templateNoteId) {
|
||||
if (!becca.getNote(params.templateNoteId)) {
|
||||
const templateNote = becca.getNote(params.templateNoteId);
|
||||
if (!templateNote) {
|
||||
throw new Error(`Template note '${params.templateNoteId}' does not exist.`);
|
||||
}
|
||||
|
||||
note.addRelation("template", params.templateNoteId);
|
||||
copyAttachments(templateNote, note);
|
||||
|
||||
// no special handling for ~inherit since it doesn't matter if it's assigned with the note creation or later
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user