Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
block: bool = True
+class CloseReport(pydantic.BaseModel):
+ # Accept?
+ accept: bool = True
+
+
# Create a router
router = fastapi.APIRouter(
prefix="/reports",
async def get_report(report = fastapi.Depends(get_report_from_path)) -> reports.Report:
return report
-class CloseReport(pydantic.BaseModel):
- # Closed By
- closed_by: str
-
- # Accept?
- accept: bool = True
-
@router.post("/{id}/close")
async def close_report(
data: CloseReport,
report: reports.Report = fastapi.Depends(get_report_from_path),
+ user: users.User = fastapi.Depends(require_current_user),
) -> fastapi.Response:
await report.close(
- closed_by = data.closed_by,
+ closed_by = user,
accept = data.accept,
)
# XXX Check for permissions
+ # Only the the user ID in the database
+ if isinstance(closed_by, users.User):
+ closed_by = closed_by.uid
+
# Mark this report as closed
self.closed_at = sqlmodel.func.current_timestamp()
self.closed_by = closed_by