Philip Molares
e55e62c2cd
History: Add history service and usage
...
Add history service to allow for CRUD operations.
Use history service in controllers to:
1. Allow manipulating of history entries
2. Guaranty the correct existence of history entries
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2021-02-03 21:22:55 +01:00
Philip Molares
300b464efd
History: Add HistoryEntry
...
With this the backend now can hold a history entry.
Also included in this commit are some minor changes to tests and services so they can still work.
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2021-02-03 21:15:39 +01:00
Yannick Bungers
22aaa956a7
Reformat code by yarn format
...
Signed-off-by: Yannick Bungers <git@innay.de>
2021-01-30 18:09:00 +01:00
Yannick Bungers
0d5b9dea00
Refactoring of controllers and service interfaces
...
DTO should only be used for sending information to and from user.
Services now have methods which return normal internal objects and
methods which convert them to DTOs. This conversion is done in the
controlers
Signed-off-by: Yannick Bungers <git@innay.de>
2021-01-30 00:06:38 +01:00
David Mehren
6a21665c3e
NoteDto: Add doc comments
...
Signed-off-by: David Mehren <git@herrmehren.de>
2021-01-25 22:45:34 +01:00
David Mehren
7688b7c21f
NoteAuthorshipDto: Add doc comments
...
Signed-off-by: David Mehren <git@herrmehren.de>
2021-01-25 22:44:47 +01:00
David Mehren
3233b5c958
NoteMetadata DTOs: Add doc comments
...
Signed-off-by: David Mehren <git@herrmehren.de>
2021-01-25 22:23:09 +01:00
David Mehren
eb2544bc2b
NotePermission DTOs: Add doc comments
...
Signed-off-by: David Mehren <git@herrmehren.de>
2021-01-25 22:22:52 +01:00
Philip Molares
508ad26771
auth: Add tests for AuthService
...
Move AuthTokens to auth folder
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2021-01-22 15:29:10 +01:00
Yannick Bungers
5246f0c05d
Removed special table name in Note object
...
and changed table names in plantuml file
Signed-off-by: Yannick Bungers <git@innay.de>
2021-01-23 00:41:49 +01:00
David Mehren
22e14fb706
NotesService: updateNoteByIdOrAlias
should return the new note
...
Fixes #702
Signed-off-by: David Mehren <git@herrmehren.de>
2021-01-10 20:30:45 +01:00
David Mehren
88c0794724
NotesService: Get note creation time from database
...
Signed-off-by: David Mehren <git@herrmehren.de>
2021-01-10 18:22:30 +01:00
David Mehren
b7cb3181c4
NotesService: rename getLastRevision
to getLatestRevision
...
This fixes an inconsistency with `RevisionsService`
Signed-off-by: David Mehren <git@herrmehren.de>
2021-01-10 18:20:28 +01:00
David Mehren
3801b1b042
Format with Prettier 2
...
Signed-off-by: David Mehren <git@herrmehren.de>
2021-01-06 23:48:53 +01:00
Tilman Vatteroth
7aeaf488c4
Change year in copyright to 2021
...
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
2021-01-06 21:36:07 +01:00
Philip Molares
dc63c76f43
added reuse information
...
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2021-01-05 22:12:38 +01:00
David Mehren
c0527c0942
Remove PUT /notes/{note}/metadata
and corresponding service code
...
Signed-off-by: David Mehren <git@herrmehren.de>
Co-authored-by: Yannick Bungers <git@innay.de>
2020-10-24 21:11:06 +02:00
David Mehren
520046f8d4
Remove NoteUtils class, as the planned parsing logic is not needed anymore
...
Signed-off-by: David Mehren <git@herrmehren.de>
Co-authored-by: Yannick Bungers <git@innay.de>
2020-10-03 17:36:01 +02:00
David Mehren
a04d5b29f9
Add missing TagRepository provider in unit tests
...
Signed-off-by: David Mehren <git@herrmehren.de>
Co-authored-by: Yannick Bungers <git@innay.de>
2020-10-03 17:24:42 +02:00
David Mehren
08fd070bcb
NotesService: Implement updateNoteMetadata
...
Signed-off-by: David Mehren <git@herrmehren.de>
Co-authored-by: Yannick Bungers <git@innay.de>
2020-10-03 15:52:49 +02:00
David Mehren
6541cfda4e
NoteEntity: Enable eager loading and cascades for tags
...
Signed-off-by: David Mehren <git@herrmehren.de>
Co-authored-by: Yannick Bungers <git@innay.de>
2020-10-03 15:37:57 +02:00
David Mehren
99ab9f04c2
NotesService: Get metadata from database
...
Signed-off-by: David Mehren <git@herrmehren.de>
Co-authored-by: Yannick Bungers <git@innay.de>
2020-10-03 11:27:15 +02:00
David Mehren
7d5dddaaaf
Add note metadata properties and Tag entity.
...
These were planned to be parsed at runtime from the note-content in the database, but having to run a markdown parser in the backend was found to be a bad idea. Now the frontend (that already implements the parsing logic) has to set title, description and tags.
Signed-off-by: David Mehren <git@herrmehren.de>
Co-authored-by: Yannick Bungers <git@innay.de>
2020-10-03 11:17:07 +02:00
David Mehren
ad676ce6ff
NoteMetadataDto: Rename permission
to permissions
...
Signed-off-by: David Mehren <git@herrmehren.de>
Co-authored-by: Yannick Bungers <git@innay.de>
2020-10-03 14:45:04 +02:00
David Mehren
713e2ada31
Update NotePermissionsUpdate DTOs to be aware of groups
...
The NotePermissionsUpdateDto was not updated when group permissions were introduced.
Signed-off-by: David Mehren <git@herrmehren.de>
Co-authored-by: Yannick Bungers <git@innay.de>
2020-10-03 12:42:14 +02:00
David Mehren
558addf83e
UsersService: Improve logging in getNoteByIdOrAlias
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-10-24 11:34:16 +02:00
David Mehren
1f22f47327
NotesService: Throw NotInDBError
when the note wasn't found
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-10-17 18:47:10 +02:00
David Mehren
e37722a56a
Switch to using the new custom logger
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-27 21:48:42 +02:00
David Mehren
776c230877
NotesService: Add TODO that createNote
still needs to calculate a proper patch
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-26 16:01:01 +02:00
David Mehren
b9b5af8b7f
Add various missing imports and provider overrides to fix unit tests.
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 21:59:09 +02:00
David Mehren
4cf31c1bcb
NotesService: Implement getNoteContent
and getNoteMetdata
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 21:45:20 +02:00
David Mehren
bc1c8448df
NotesService: Let createNote
create an actual Note
and introduce createNoteDto
to create & convert in one step.
...
It might be handy to have access to the original `Note` after creating one, so the creation and conversion to a `NoteDto` is now split.
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 21:44:53 +02:00
David Mehren
05a62b31ee
RevisionService: Implement getNoteRevisionMetadatas
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 21:09:14 +02:00
David Mehren
cf88cde551
NotesService: Use the database for delete and update actions.
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 20:07:36 +02:00
David Mehren
5d1cc6c339
NotesService: Find note by ID or alias in database
...
This commit also introduces the `getNoteDtoByIdOrAlias` method, that converts a `Note` entity to a `NoteDto`
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 17:34:33 +02:00
David Mehren
21f4cda27c
NoteEntity: Lazy-load revisions
relation
...
Using a `Promise` type in a TypeORM entity automatically enables lazy-loading of that relation.
See https://typeorm.io/#/eager-and-lazy-relations/lazy-relations
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 17:32:35 +02:00
David Mehren
9cae7e34dc
NotesService: Get more note metadata from the database
...
Some previously hardcoded metadata-values are now retrieved from the database.
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 17:40:50 +02:00
David Mehren
eee8668317
NoteUtils: Add methods to parse note metadata
...
These methods are intended to parse metadata details from YAML tags, but not implemented for now.
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 17:32:08 +02:00
David Mehren
243fcabcaf
NoteEntity: Always initialize arrays
...
The `create()` function did not initialize all arrays, which caused them to be `undefined` instead of empty.
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 17:30:58 +02:00
David Mehren
32a6396a50
NotesService: createNote()
now saves new notes to the database
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 16:01:32 +02:00
David Mehren
2261b81139
NoteEntity: Move constructor-code to create() method
...
TypeORM does not like having application code in the constructor (https://github.com/typeorm/typeorm/issues/1772#issuecomment-514787854 ), therefore that is moved into a new `create() static method. Additionally, the constructor is now `private`, which enforces the use of the new method.
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 16:00:29 +02:00
David Mehren
bb9e60d5f6
NoteEntity: Formatting fixes
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 15:57:57 +02:00
David Mehren
85fa30b27c
NoteEntity: Enable CASCADE for revision column
...
This makes creating new Notes easier, as the first Revision is automatically created in the database.
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 15:57:34 +02:00
David Mehren
c6787ef233
NoteDto: Rename attribute metdata
to metadata
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 14:54:08 +02:00
David Mehren
ef92ab73f9
Update Note entity
...
We now use the new permissions split in users and groups. Also the note now knows the colors of its authors.
Signed-off-by: David Mehren <git@herrmehren.de>
2020-08-13 20:24:45 +02:00
David Mehren
ba9d7a6572
Add AuthorColor entity
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-08-13 20:22:30 +02:00
David Mehren
97cc2085af
Update NotesService and HistoryService to use the new permission model.
...
We now have separate sharedTo attributes for users and groups.
Signed-off-by: David Mehren <git@herrmehren.de>
2020-08-12 20:23:48 +02:00
David Mehren
a5ffbb6e7f
Add 'special' property to GroupInfoDto and rename 'id' to 'name'
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-07-27 22:38:46 +02:00
David Mehren
d1bd35007e
Adapt permission DTOs for group permissions
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-07-26 22:34:04 +02:00
David Mehren
387e4c3b99
NotesService: Add hardcoded-data warnings.
...
Signed-off-by: David Mehren <git@herrmehren.de>
2020-07-26 21:01:30 +02:00