from . import exporters
from . import reports
from . import sources
+from . import users
from . import util
from .i18n import _
# Reports
reports : typing.List["Report"] = sqlmodel.Relationship(back_populates="list")
- async def get_reports(self, open=None, name=None, limit=None):
+ async def get_reports(self, open=None, name=None, reported_by=None, limit=None):
"""
Fetches the most recent reports
"""
+ # Only use the UID of any users
+ if isinstance(reported_by, users.User):
+ reported_by = reported_by.uid
+
stmt = (
sqlmodel
.select(
reports.Report.name == name,
)
+ # Optionally filter by reporter
+ if reported_by:
+ stmt = stmt.where(
+ reports.Report.reported_by == reported_by,
+ )
+
# Optionally apply the limit
if limit:
stmt = stmt.limit(limit)