diff --git a/server/api/routes/annotations.py b/server/api/routes/annotations.py index a242d711209ec36aebfb57583835f04402c609a4..803370241d41382684fc21ce889f8d28adfcf59e 100644 --- a/server/api/routes/annotations.py +++ b/server/api/routes/annotations.py @@ -302,7 +302,7 @@ async def get_assignment_indicators_for_scope(assignment_scope_id: str, permissions=Depends(UserPermissionChecker('annotations_read'))) \ -> list[AssignmentScopeEntry]: return await read_assignment_overview_for_scope(assignment_scope_id=assignment_scope_id, - db_engine=db_engine) + connection=db_engine) @router.get('/annotate/assignments/scope/{assignment_scope_id}', response_model=list[AssignmentModel]) diff --git a/server/api/routes/highlight.py b/server/api/routes/highlight.py index cd5f3f3d6adbf8e53804139007af7c46c5beb66b..67ba9f8a8bf604d881f647078b311a77417ece98 100644 --- a/server/api/routes/highlight.py +++ b/server/api/routes/highlight.py @@ -5,12 +5,11 @@ from sqlalchemy import select from sqlalchemy import func as F from server.data import db_engine -from server.api.errors import \ - NoDataForKeyError, \ - DataNotFoundWarning -from server.util.security import \ - UserPermissionChecker, \ +from server.api.errors import NoDataForKeyError +from server.util.security import ( + UserPermissionChecker, InsufficientPermissions +) from nacsos_data.util.auth import UserPermissions from nacsos_data.db.schemas.annotations import AssignmentScope @@ -26,7 +25,7 @@ router = APIRouter() @router.get('/scope/{assignment_scope_id}', response_model=list[HighlighterModel] | None) async def get_scope_highlighters(assignment_scope_id: str, permissions: UserPermissions = Depends(UserPermissionChecker('annotations_read'))) \ - -> list[HighlighterModel]: + -> list[HighlighterModel] | None: async with db_engine.session() as session: # type: AsyncSession highlighter_ids = select(F.unnest(AssignmentScope.highlighter_ids).label('highlighter_id')) \ .where(AssignmentScope.assignment_scope_id == assignment_scope_id) \ @@ -38,8 +37,10 @@ async def get_scope_highlighters(assignment_scope_id: str, result = (await session.scalars(stmt)).all() if result is not None and len(result) > 0: return [HighlighterModel.model_validate(r.__dict__) for r in result] - raise DataNotFoundWarning(f'No highlighter in project {permissions.permissions.project_id} ' - f'for scope with id {assignment_scope_id}!') + + return None + # raise DataNotFoundWarning(f'No highlighter in project {permissions.permissions.project_id} ' + # f'for scope with id {assignment_scope_id}!') @router.get('/project', response_model=list[HighlighterModel])