I want to move annotation sessions from the volume level to the project level. While this makes more sense from the user perspective, it is hard to implement on the technical side because volumes can belong to multiple projects. Previously I tried to fix this with a new data architecture (#53). But this change was abandoned because of lack of time and by now it would be too much work.
However, I think that we can still move annotation sessions to the project level if the more complicated database queries are implemented efficiently. It can work like this:
In an image/video it should be checked if an annotation session is active. The backend then queries all possible projects (to which the current user belongs) for annotation sessions. If any of the annotation sessions is active, apply the settings of the first one (with the lowest ID) to hide annotations.
This doesn't sound too complicated.
Notes:
We no longer need the "add to annotation session" checkbox for project invitations
We no longer need annotation session "members"
Annotation sessions of volumes that belong only to a single project must be migrated to this project
Other annotation sessions could maybe be migrated to all projects to which the volume belongs (check manually if there are any)
I want to move annotation sessions from the volume level to the project level. While this makes more sense from the user perspective, it is hard to implement on the technical side because volumes can belong to multiple projects. Previously I tried to fix this with a new data architecture (#53). But this change was abandoned because of lack of time and by now it would be too much work.
However, I think that we can still move annotation sessions to the project level if the more complicated database queries are implemented efficiently. It can work like this:
In an image/video it should be checked if an annotation session is active. The backend then queries all possible projects (to which the current user belongs) for annotation sessions. If any of the annotation sessions is active, apply the settings of the first one (with the lowest ID) to hide annotations.
This doesn't sound too complicated.
Notes: