From 49549cff94114ae8bc7eb101cf7efd29fffdfbe8 Mon Sep 17 00:00:00 2001 From: Tim Repke <repke@mcc-berlin.net> Date: Wed, 4 Sep 2024 12:00:29 +0200 Subject: [PATCH] fix things --- server/api/routes/annotations.py | 2 +- server/api/routes/highlight.py | 17 +++++++++-------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/server/api/routes/annotations.py b/server/api/routes/annotations.py index a242d71..8033702 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 cd5f3f3..67ba9f8 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]) -- GitLab