mirror of
https://github.com/arcan1s/ahriman.git
synced 2026-04-01 06:03:39 +00:00
feat: allow filter events by timestamp
This commit is contained in:
@@ -158,7 +158,7 @@ class BaseView(View, CorsViewMixin):
|
||||
value = extractor(key)
|
||||
if not value:
|
||||
raise KeyError(key)
|
||||
except Exception:
|
||||
except (KeyError, ValueError):
|
||||
raise KeyError(f"Key {key} is missing or empty") from None
|
||||
return value
|
||||
|
||||
@@ -194,7 +194,7 @@ class BaseView(View, CorsViewMixin):
|
||||
try:
|
||||
limit = int(self.request.query.get("limit", default=-1))
|
||||
offset = int(self.request.query.get("offset", default=0))
|
||||
except Exception as ex:
|
||||
except ValueError as ex:
|
||||
raise HTTPBadRequest(reason=str(ex))
|
||||
|
||||
# some checks
|
||||
|
||||
@@ -64,8 +64,16 @@ class EventsView(BaseView):
|
||||
limit, offset = self.page()
|
||||
event = self.request.query.get("event") or None
|
||||
object_id = self.request.query.get("object_id") or None
|
||||
try:
|
||||
from_date = to_date = None
|
||||
if (value := self.request.query.get("from_date")) is not None:
|
||||
from_date = int(value)
|
||||
if (value := self.request.query.get("to_date")) is not None:
|
||||
to_date = int(value)
|
||||
except ValueError as ex:
|
||||
raise HTTPBadRequest(reason=str(ex))
|
||||
|
||||
events = self.service().event_get(event, object_id, limit, offset)
|
||||
events = self.service().event_get(event, object_id, from_date, to_date, limit, offset)
|
||||
response = [event.view() for event in events]
|
||||
|
||||
return json_response(response)
|
||||
|
||||
Reference in New Issue
Block a user