diff options
| author | Mar0xy <marie@kaifa.ch> | 2023-10-22 14:07:04 +0200 |
|---|---|---|
| committer | Mar0xy <marie@kaifa.ch> | 2023-10-22 14:07:04 +0200 |
| commit | 83be996a3dc55e87f5544b07f899eb21ce4d0534 (patch) | |
| tree | e6b0d7560810e1ae9ad03619b568490f77a631d0 /packages/backend/src | |
| parent | fix: date formatting in previous note view (diff) | |
| download | sharkey-83be996a3dc55e87f5544b07f899eb21ce4d0534.tar.gz sharkey-83be996a3dc55e87f5544b07f899eb21ce4d0534.tar.bz2 sharkey-83be996a3dc55e87f5544b07f899eb21ce4d0534.zip | |
upd: store old date and use it in previous versions
Diffstat (limited to 'packages/backend/src')
| -rw-r--r-- | packages/backend/src/core/NoteEditService.ts | 3 | ||||
| -rw-r--r-- | packages/backend/src/models/NoteEdit.ts | 5 | ||||
| -rw-r--r-- | packages/backend/src/server/api/endpoints/notes/versions.ts | 3 |
3 files changed, 10 insertions, 1 deletions
diff --git a/packages/backend/src/core/NoteEditService.ts b/packages/backend/src/core/NoteEditService.ts index 7b8aab7f3e..1961fe72ee 100644 --- a/packages/backend/src/core/NoteEditService.ts +++ b/packages/backend/src/core/NoteEditService.ts @@ -388,6 +388,8 @@ export class NoteEditService implements OnApplicationShutdown { } if (Object.keys(update).length > 0) { + const exists = await this.noteEditRepository.findOneBy({ noteId: oldnote.id }); + await this.noteEditRepository.insert({ id: this.idService.gen(), noteId: oldnote.id, @@ -395,6 +397,7 @@ export class NoteEditService implements OnApplicationShutdown { newText: update.text || undefined, cw: update.cw || undefined, fileIds: undefined, + oldDate: exists ? oldnote.updatedAt as Date : this.idService.parse(oldnote.id).date, updatedAt: new Date(), }); diff --git a/packages/backend/src/models/NoteEdit.ts b/packages/backend/src/models/NoteEdit.ts index 440f9b8208..9ec989dd50 100644 --- a/packages/backend/src/models/NoteEdit.ts +++ b/packages/backend/src/models/NoteEdit.ts @@ -48,4 +48,9 @@ export class NoteEdit { comment: "The updated date of the Note.", }) public updatedAt: Date; + + @Column("timestamp with time zone", { + comment: "The old date from before the edit", + }) + public oldDate: Date; } diff --git a/packages/backend/src/server/api/endpoints/notes/versions.ts b/packages/backend/src/server/api/endpoints/notes/versions.ts index 18a68110f7..d236cea64e 100644 --- a/packages/backend/src/server/api/endpoints/notes/versions.ts +++ b/packages/backend/src/server/api/endpoints/notes/versions.ts @@ -50,12 +50,13 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- for (const edit of edits) { editArray.push({ + oldDate: edit.oldDate, updatedAt: edit.updatedAt, text: edit.oldText, }); } - editArray = editArray.sort((a, b) => { return new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime(); }); + editArray = editArray.sort((a, b) => { return new Date(b.oldDate).getTime() - new Date(a.oldDate).getTime(); }); return editArray; }); |