diff --git a/src/services/image.js b/src/services/image.js index 21a3c3a3b..f7b892b67 100644 --- a/src/services/image.js +++ b/src/services/image.js @@ -12,9 +12,7 @@ const imageminGifLossy = require('imagemin-giflossy'); const jimp = require('jimp'); const imageType = require('image-type'); const sanitizeFilename = require('sanitize-filename'); -const dateUtils = require('./date_utils'); const noteRevisionService = require('./note_revisions.js'); -const NoteRevision = require("../entities/note_revision"); async function processImage(uploadBuffer, originalName, shrinkImageSwitch) { const origImageFormat = imageType(uploadBuffer); diff --git a/src/services/note_revisions.js b/src/services/note_revisions.js index 02a567b47..c2f607bb1 100644 --- a/src/services/note_revisions.js +++ b/src/services/note_revisions.js @@ -7,10 +7,6 @@ const dateUtils = require('../services/date_utils'); * @param {Note} note */ async function protectNoteRevisions(note) { - if (await note.hasLabel('disableVersioning')) { - return; - } - for (const revision of await note.getRevisions()) { if (note.isProtected !== revision.isProtected) { const content = await revision.getContent(); @@ -30,6 +26,10 @@ async function protectNoteRevisions(note) { * @return {NoteRevision} */ async function createNoteRevision(note) { + if (await note.hasLabel("disableVersioning")) { + return; + } + const noteRevision = await new NoteRevision({ noteId: note.noteId, // title and text should be decrypted now diff --git a/src/services/notes.js b/src/services/notes.js index effd51097..a5b47bac1 100644 --- a/src/services/notes.js +++ b/src/services/notes.js @@ -317,8 +317,7 @@ async function saveLinks(note, content) { } async function saveNoteRevision(note) { - // files and images are immutable, they can't be updated - // but we don't even version titles which is probably not correct + // files and images are versioned separately if (note.type === 'file' || note.type === 'image' || await note.hasLabel('disableVersioning')) { return; }