From c78ca4c9db1b46eeb227278286ade6e94ba3e1ce Mon Sep 17 00:00:00 2001 From: zadam Date: Tue, 23 Jun 2020 22:03:01 +0200 Subject: [PATCH] fixed triggers to sort children of notes with "sorted" label, closes #1126 --- src/routes/api/notes.js | 8 +++++++- src/services/handlers.js | 5 ++++- src/services/notes.js | 3 ++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/routes/api/notes.js b/src/routes/api/notes.js index 682d25f91..12f58540b 100644 --- a/src/routes/api/notes.js +++ b/src/routes/api/notes.js @@ -164,10 +164,16 @@ async function changeTitle(req) { return [400, `Note ${noteId} is not available for change`]; } + const noteTitleChanged = note.title !== title; + note.title = title; await note.save(); + if (noteTitleChanged) { + await noteService.triggerNoteTitleChanged(note); + } + return note; } @@ -189,4 +195,4 @@ module.exports = { getRelationMap, changeTitle, duplicateNote -}; \ No newline at end of file +}; diff --git a/src/services/handlers.js b/src/services/handlers.js index 12ac55afb..e68f3be44 100644 --- a/src/services/handlers.js +++ b/src/services/handlers.js @@ -68,6 +68,9 @@ eventService.subscribe(eventService.ENTITY_CREATED, async ({ entityName, entity await note.setContent(await targetNote.getContent()); } + else if (entity.type === 'label' && entity.name === 'sorted') { + await treeService.sortNotesAlphabetically(entity.noteId); + } } else if (entityName === 'notes') { await runAttachedRelations(entity, 'runOnNoteCreation', entity); @@ -135,4 +138,4 @@ eventService.subscribe(eventService.ENTITY_DELETED, async ({ entityName, entity targetNote.invalidateAttributeCache(); } }); -}); \ No newline at end of file +}); diff --git a/src/services/notes.js b/src/services/notes.js index f18dcfa9a..be11fd196 100644 --- a/src/services/notes.js +++ b/src/services/notes.js @@ -778,5 +778,6 @@ module.exports = { protectNoteRecursively, scanForLinks, duplicateNote, - getUndeletedParentBranches + getUndeletedParentBranches, + triggerNoteTitleChanged };